Reviving Lisp for smaller programmable machines
Raman Gopalan - Bangalore, India
Volunteer free software programmer, SimpleMachines, Italy
(full article in the attachment)
Accepted for publication in Electronics For You, India;
Article number: 9960
Abstract — “if some languages claim to be the Swiss army knife of programming, then Pico Lisp may well be called the scalpel of programming: sharp, accurate, small, lightweight but also dangerous in the hands of the inexperienced”. Lisp offers a practical mathematical notation to write computer programs, mostly being influenced by lambda calculus. It is still the most favored programming language for artificial intelligence research.
Programming microcontrollers is a real challenge, given the complexity of today’s microcontroller architecture. The C language is widely used to program them. The philosophy of cross-compiling a program for the target seems to be the most popular choice among microcontroller aficionados. An ARM Cortex M4 clone (such as the Infineon XMC4500) typically has about a megabyte of flash and a few hundred kilobytes of internal RAM. With resources of that order on the chip, a much more interesting approach is to program the device natively with a powerful, dynamic language like Lisp.
This project aims at reviving Lisp for native, interactive and incremental microcontroller program development by running a dialect of Lisp as virtual machine on the target. The project also demonstrates the power of Lisp through the execution of various expressive Lisp programs on a microcontroller.
Full Article in the attachment.