|
|
|
|
|
by jensb1
463 days ago
|
|
Hi, always wanted to create a toy lisp compiler in LLVM for some reason, but never had the time to get it working. Took a new stab at it with Claude 3.7. Got a working version up in less than 8hrs in total with passing tests! Never wrote a single line of code. I would estimate the number of cursor iterations to about 500. Process was:
1. Ask Claude to create a boiler plate JIT in LLVM (see below shared chat)
2. Asked Claude on the architecture and what classes should be created (did this in cursor):
- lexer
- parser
- AST
- Code gen
3. Implemented each part separately, lexer, parser and AST took 1hr, codegen took ~7hrs. It can define variables, functions and do some basic stuff:
try: (defn factorial [n] (if (= n 0) 1 (* n (factorial (- n 1))))) (factorial 5) Hope you like it! Here are some chats if you are interested in the first part of the coding (the rest was done in cursor): LLVM
- https://claude.ai/share/3c5a1f92-389f-4274-8348-dcceaee8f140 Lexer
- https://claude.ai/share/fa32b8bd-0b8e-4faa-bc09-fc3dd9bb5ad3 |
|