lambda-8cc
lambdalisp
lambda-8cc | lambdalisp | |
---|---|---|
13 | 3 | |
598 | 219 | |
- | - | |
10.0 | 4.4 | |
over 1 year ago | about 1 year ago | |
Common Lisp | Common Lisp | |
MIT License | 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.
lambda-8cc
-
React Use C
ycombinator siding with the Amazonian cult of the carcinisation?! blasphemy! this submission is like a wanted poster for react-use-lambda to be summoned into existence from the great beyond https://github.com/woodrush/lambda-8cc
-
Any recommendations for advanced Lambda Calculus?
It is not what you want exactly, but there is a x86 C Compiler written in lambda-calculus, it has a pretty detailed "How it was done" in details.md - maybe you will find it interesting.
- This formula here is known as the “Standard Model Lagrangian”. It's an equation that encapsulates everything we currently know about particle physics.
- Show HN: Lambda-8cc – An x86 C compiler written in untyped lambda calculus
- GitHub - woodrush/lambda-8cc: x86 C compiler written in untyped lambda calculus
- Any projects want/need help?
-
lambda-8cc: An x86 C compiler written in untyped lambda calculus
That said, I'm not sure where is the actual compiler implementation, files in src/ seem to be various tools: https://github.com/woodrush/lambda-8cc/tree/main/src
lambdalisp
-
Discussion Thread
source code here, i am not genius enough to understand the code-calculus conversion
- Lambdalisp: A Lisp interpreter written in untyped lambda calculus
-
Show HN: Lambda-8cc – An x86 C compiler written in untyped lambda calculus
I actually mentioned your hint file in details.md. Quite a roundabout way to decode its secrets!
I too suspect that writing in lambda's native functional style could save a lot of space. Compiling lisp.c from the ELVM repository generates a code much longer than LambdaLisp [1], which empirically shows that well I believe.
As for the pages of PDF, in mathematical terms, since any variable encodes to weight 1, I believe it would be something close to an encoding that degenerates all De Bruijn indices to 1, or in other words, one that only tries to weigh (or gives larger weight to) the complexity of abstraction depths and applications. Since that erases information about the variable I would guess it's not a universal method for weighing lambda sizes.
In this particular case for LambdaVM programs however, since the memory initialization clause nor the instruction clause never increases the maximum De Bruijn index value, I believe both the BLC size and "lambda page size" approximately grows linearly with the number of instructions, so I thought it would serve as an approximately-off-by-a-factor metric for weighing its size.
As for the ELVM lambda calculus back-end, I'll be sending the pull request very soon!
[1] A Lisp interpreter implemented in lambda calculus: https://github.com/woodrush/lambdalisp
What are some alternatives?
react-use-rust - Use Rust in your React!
meta-cedille - Minimalistic dependent type theory with syntactic metaprogramming
8cc - A Small C Compiler
trivial-toplevel-prompt - Portability library to customize CL implementations' REPL prompt.
williamcotton.com - williamcotton.com
lambdacraft - Common Lisp DSL for building untyped lambda calculus expressions
gameboy-brainfuck - Implementation of a brainfuck interpreter written for the Game Boy.
AIT - Algorithmic Information Theory, using Binary Lambda Calculus
cps - A formalization of continuation-passing style calculi in Coq [WIP]
vellum - Data Frames for Common Lisp
lambdavm - A programmable virtual CPU written in untyped lambda calculus
react-use-c - Use C in your React!