ez-scheme | scheme on the rbx vm | Interpreter library
kandi X-RAY | ez-scheme Summary
kandi X-RAY | ez-scheme Summary
This is a simple educational scheme interpreter that runs on ruby 1.9.* or rubinius. It needs the onig regexp engine for named captures used in the lexer. Source code is easy to read and understand. Plans to add a compiler to rubinius bytecode that can run directly on the rbx vm. Loosely based/ported from bobscheme by Eli Bendersky. released into the public domain. ez-scheme has been updated to use the non-deprecated 'rubygems/package_task' instead of 'rake/gempackagetask'.
Support
Quality
Security
License
Reuse
Top functions reviewed by kandi - BETA
Currently covering the most popular Java, JavaScript and Python libraries. See a Sample of ez-scheme
ez-scheme Key Features
ez-scheme Examples and Code Snippets
Community Discussions
Trending Discussions on ez-scheme
QUESTION
I'm working through a textbook on programming languages, and one of the exercises was to make a function in Scheme that flips tuples in a list. Here's my code:
...ANSWER
Answered 2019-Nov-10 at 18:39You have a coupe of errors in flip
, this should fix them:
QUESTION
How difficult would it be to add a generic code-gen
backend to Julia
in the vein of go
and chez-scheme
i.e. without the LLVM.
Would LLVM be a better way to do it - given that rust
and crystal
are also almost entirely self hosted and they can leverage the LLVM to emit binaries, even cross compile.
For a background, I've asked a question specifically about code-gen
in case of various LLVM front-ends here What are the issues faced while implementing a self-hosted language on LLVM?
ANSWER
Answered 2017-Jun-07 at 16:53Julia does have a form of code-gen which is its typed AST. You can see the typed AST using @code_typed
in front of any function call. Theoretically you can use that to emit to any IR, and Julia chooses LLVM IR for reasons stated elsewhere. Transpiler.jl is a package which does this to output things like OpenCL code from Julia functions.
You can use the LLVM IR to emit other bytecodes. CUDANative.jl uses LLVM's .ptx backend to emit CUDA kernels directly from Julia functions. The @polly
project is looking to do similar things whereby the macro would allow Julia to auto-accelerate some codes on the GPU (I admittedly have little knowledge of this, other than reading the post which suggested it and the followup. This was picked up as a GSoC project for LLVM).
Community Discussions, Code Snippets contain sources that include Stack Exchange Network
Vulnerabilities
No vulnerabilities reported
Install ez-scheme
On a UNIX-like operating system, using your system’s package manager is easiest. However, the packaged Ruby version may not be the newest one. There is also an installer for Windows. Managers help you to switch between multiple Ruby versions on your system. Installers can be used to install a specific or multiple Ruby versions. Please refer ruby-lang.org for more information.
Support
Reuse Trending Solutions
Find, review, and download reusable Libraries, Code Snippets, Cloud APIs from over 650 million Knowledge Items
Find more librariesStay Updated
Subscribe to our newsletter for trending solutions and developer bootcamps
Share this Page