expr-ir
cone
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.
expr-ir
-
Looking for guidance on understanding/using LLVM C API
https://github.com/farzonl/expr-ir I did a tutorial sometime ago the blog post is unfortunately gone now and doesn’t look to be preserved by archive.org, but the code should be easy enough to follow.
cone
-
An Accessible Introduction to Type Theory and Implementing a Type Checker
Hm sounds interesting ... but I couldn't find the type checker here? https://github.com/jondgoodwin/cone/tree/master/src/c-compiler
-
AST Implementation in C
I would encourage you to look at other implementations as well. The Cone compiler is written in C: https://github.com/jondgoodwin/cone as well as my C3 compiler: https://github.com/c3lang/c3c
-
Simple compilers (LLVM backend) for studying
The Cone source code: https://github.com/jondgoodwin/cone The C3 source code: https://github.com/c3lang/c3c
-
Looking for guidance on understanding/using LLVM C API
I recommend studying the Cone source code: https://github.com/jondgoodwin/cone and if you want to dig deeper, C3: https://github.com/c3lang/c3c if you show up in the C3 discord (https://discord.gg/qN76R87) or the LLVM discord I can answer any additional questions you might have.
-
A language with non-escaping stack allocations and regions
I thought it was, but there are new commits this month.
-
What does your ideal programming language look like?
Just read about gradual memory management (https://github.com/jondgoodwin/cone)
What are some alternatives?
mewa - Compiler-compiler for writing compiler frontends with Lua
memreduct - Lightweight real-time memory management application to monitor and clean system memory on your computer.
hellscape - GIMPLE obfuscator for C, C++, Go, ... all supported GCC targets and front-ends that use GIMPLE.
unison - A friendly programming language from the future
booleval - Header-only C++17 library for evaluating logical expressions.
verona - Research programming language for concurrent ownership
llvm-tutor - A collection of out-of-tree LLVM passes for teaching and learning
c3c - Compiler for the C3 language
SinScheme - Sinister's Scheme Compiler!
type-inference-by-example - A series of down-to-earth articles on implementing type inference
datatype99 - Algebraic data types for C99