lithium
cproc
lithium | cproc | |
---|---|---|
2 | 10 | |
118 | 678 | |
- | - | |
0.0 | 8.7 | |
about 2 years ago | 8 days ago | |
Clojure | C | |
- | GNU General Public License v3.0 or later |
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.
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...
cproc
-
Oasis – a small, statically-linked Linux system
Michaelforney has also built croc [1], a qbe based C compiler. Really impressive!
[1]: https://github.com/michaelforney/cproc
- List of (open source) C compilers
- Hand-optimizing the TCC code generator
-
Minias – A mini x86-64 assembler for fun and learning
A word of warning for those wondering: this is not for Intel syntax, despite referencing the Intel doc.
Minias can assemble itself
...but it's written in C and uses a parser generator? IMHO it feels a bit backwards --- and perhaps even a bit cheating if you're doing this for a "bootstrap pilgrimage" --- to write a lower-level tool in a higher-level language. On the other hand, the same author also links to a C compiler in C, without a parser generator: https://github.com/michaelforney/cproc
- Cproc C Compiler
-
Hacker News top posts: Aug 20, 2021
Cproc C Compiler\ (29 comments)
- A C11 compiler using QBE as a backend, released under the ISC license
What are some alternatives?
nanopass-framework-scheme - The new nanopass framework; an embedded DSL for writing compilers in Scheme
pl0c - Self-hosting PL/0 to C compiler to teach basic compiler construction from a practical, hands-on perspective.
arpilisp - A Lisp interpreter for Raspberry Pi implemented in a single ARM assembly file
qbe-rs - QBE IR in natural Rust data structures
minias - A mini x86-64 assembler for fun and learning.
unix - Mirror of the Restoration of 1st Edition UNIX kernel sources from pdf document.
manim - A community-maintained Python framework for creating mathematical animations.
fpga_craft - A voxel game/Minecraft clone for the iCE40 UP5K FPGA
c4 - C in four functions
GLFW - A multi-platform library for OpenGL, OpenGL ES, Vulkan, window and input
meson - The Meson Build System