Lisp Compiler Progress • Live Lisp Hacking

Mesche Progress Update

Last week I detailed my plans for creating a compiler toolchain for a new Lisp called Mesche. Today I’ll show some early progress on it and explain a bit of what I had to do to get this far!

You can check out the code on Sourcehut: https://git.sr.ht/~mesche/compiler

Areas

  • Linker
  • Assembler
  • Basic program execution

Challenges

  • Understanding the ELF format and generating it correctly
  • x86 instruction encoding
401000:	b8 01 00 00 00       	mov    $0x1,%eax
401005:	48 8b 1c 25 00 20 40 	mov    0x402000,%rbx

Next steps

  • Encoding (and decoding) more instructions
  • Detecting instructions that use memory addresses, updating them
  • Writing functions in assembly and calling them

Resources

Lisp Live Hacking

Let’s hack on a Lisp project! To make things interesting, I’ll let you choose:

  • Gemini Exporter for Org Mode
  • Mesche Compiler
  • Music Player in Guile Scheme

Cast your vote here: https://fast-poll.com/poll/1387af43

We ended up working on the Gemini exporter, you can find the code here:

https://git.sr.ht/~daviwil/ox-gemini-clean

订阅系统工匠通讯!
与最新的系统工匠新闻和更新保持同步! 阅读 Newsletter 浏览更多信息。
名称 (optional)
邮箱