nanopass-framework-scheme
lithium
nanopass-framework-scheme | lithium | |
---|---|---|
7 | 2 | |
474 | 118 | |
0.0% | - | |
0.0 | 0.0 | |
over 1 year ago | about 2 years ago | |
Scheme | Clojure | |
MIT License | - |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
nanopass-framework-scheme
- An ARM Assembler Written in Lisp
-
Best languages to design a new language in?
Well, this compiler framework in scheme might be worth looking.
- Any good source-to-source compiler guides?
-
Is there any research or articles on different, more efficient compiler designs?
Some serious level Conway's Law. I mean multipass isn't bad. It composes well, it minimizes coupling, etc etc. It doesn't necessarily have to hit disk, any store could be used. I myself like multipass taken to an extreme in nanopass, but at the same time, I absolutely adore the single pass nature of Wirthian languages.
-
How do i load an r6rs library in guile?
I am trying to use the nanopass framework with guile. I do not get that far :D I can't seem to figure out how guile's %load-path works.
-
Is Rust a good option to write a compiler?
I'd say Rust is the absolute best (by a considerable margin) for a production-ready implementation. For a compiler's course it should be a fine choice, but I'd also look at OCaml+Menhir or Scheme+nanopass as alternatives.
lithium
-
An ARM Assembler Written in Lisp
I once wrote a rudimentary x86 assembler in Clojure:
https://github.com/nathell/lithium/blob/master/src/lithium/a...
In general, I find that s-expressions are actually a nice syntax for assembly languages. For x86, they kind of sidestep the AT&T vs. Intel conundrum, and you get to write macro-like functions in the host Lisp that compile down to s-expressions.
-
Minias – A mini x86-64 assembler for fun and learning
Here’s mine, in Clojure, very incomplete (16-bit x86 only for now) and using a s-expression based syntax, in 253 LOC:
https://github.com/nathell/lithium/blob/master/src/lithium/a...
What are some alternatives?
r7expander - R7RS expander
cproc - C11 compiler (mirror)
blockly - The web-based visual programming editor.
arpilisp - A Lisp interpreter for Raspberry Pi implemented in a single ARM assembly file
guile-json - JSON module for Guile
minias - A mini x86-64 assembler for fun and learning.
r6rs-pffi - Portable Foreign Function Interface (FFI) for R6RS
nanopass-framework-racket - nanopass compiler framework for Racket
salsa - A generic framework for on-demand, incrementalized computation. Inspired by adapton, glimmer, and rustc's query system.
IU-Fall-2021 - Course web page for Fall 2021.
gcc - Docker Official Image packaging for gcc
chez-docs - Access Chez Scheme documentation from the REPL