搜集用 LLVM 创造动态语言的例子

很想能本身造一门完整的语言, 一直关注这些东西, 如今仍是出在收集阶段.
思路是将不写类型声明的代码解析跟推断, 生成 LLVM IR, 而后交给 LLVM 处理.
若是你看到其余能够做为教程的例子, 欢迎评论在下边 :)html


Python

Let's Write an LLVM Specializer for Python!node

http://dev.stephendiehl.com/numpile/git

Kaleidoscope

Implementing a JIT Compiled Language with Haskell and LLVMgithub

http://www.stephendiehl.com/llvm/ui

crisp-compiler

A compiler for Crisp (Lisp/Scheme-inspired language) in Haskell, with an LLVM backendcode

https://github.com/talw/crisp-compilerhtm

taylor

Swift programming language compiler written in Haskell.blog

https://github.com/penberg/taylor教程

Brainfuck

Building a Brainfuck compiler with LLVMci

https://www.jeremyroman.com/2012/12/11/building-a-brainfuck-compiler-with-llvm/

simple C

My First LLVM Compiler

http://www.wilfred.me.uk/blog/2015/02/21/my-first-llvm-compiler/

Clasp

Clasp is a Common Lisp implementation that interoperates with C++ and uses LLVM for just-in-time (JIT) compilation to native code

https://github.com/drmeister/clasp

Hue

Hue — a functional programming language for fun & play

http://rsms.me/2012/05/14/hue.html

kaleidoscope.coffee

Node.js Bindings for the LLVM compiler infrastructure

https://github.com/guangwong/node-llvm-x/blob/master/examples/kaleidoscope.coffee

corvus

A statically-typed, low-level dialect of Lisp that targets LLVM.

https://github.com/eudoxia0/corvus

rhine-ml

Rhine is a Clojure-inspired Lisp on LLVM JIT featuring variable-length untyped arrays, first-class functions, closures, and macros.

https://github.com/artagnon/rhine-ml

llvm-clojure-bindings

LLVM Clojure Bindings and Toy Language.

https://github.com/jasonjckn/llvm-clojure-bindings

相关文章
相关标签/搜索