Hacker News new | ask | show | jobs
Toy Lisp compiler using LLVM done with AI in 8hrs (github.com)
1 points by jensb1 463 days ago
1 comments

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