Huh. I thought about doing this, figured it would be impossible / pointless, and that (apparently wrong) assumption led me on a year-long journey: The core problem, I thought, would be that AVRs have very very little memory. 316 Lisp cells sounds about right. I figured, well that's pointless. How can I do better? I wasn't able to find a microcontroller that you can attach external memory to (without cheating and usin…
If you build a compiler without runtime eval, you can use all the AVR's memory for user data. Still tiny, but not as cramped as this interpreter: http://microscheme.org Then again, if it doesn't have runtime eval, is it really a lisp?
As for microscheme, it looks cool. Although I am annoyed, because it implicitly claims to be Scheme (it's not), and it explicitly claims to be functional (scheme most definitely isn't). But those are just nitpicks.