PicoLispcomputingFreedom | Build | Picolisp | Picolisp Machine | Pil sources | Pil Tutorials | Linux | BASH | C Programmming | Operating Systems | Javascipt | Emacs | vim | Pharo Smalltalk | Computer Security | Penti
If you have always been interested in Lisp and its variant forms such as Common Lisp, Scheme, Racket, newLISP and the like, I think that you are really going to love Picolisp.
The original 32 bit implementation is written in C, and supports 32bit programming. Over the years the language has grown and is now available in 64 bit. The really cool things is this time the language is implemented by a generic assembler written in picolisp. The picolisp website has all the documentation that you need to get setup and running. It also has an extensive tutorial on the language. So you can get started there.
What I want to do here, is examine the sources and the implementation details so that we can get a low level / deep understanding of how the language actually works.
IntroductionThe main picolisp website has a very comprehensive documentation consisting of the Picolisp Reference and other tutorials. I do not intend on duplicating efforts here. What I will try and do instead is add complementary and supplemental information here. As such I have followed the topics in the order they appear in the Reference. Hopefully reading this document in conjunction with the original reference will help bring it to life.
TransactionsThe 5 Transaction Steps
Short transactions, involving only a single DB operation, are available in functions like new! and methods like put!> (by convention with an exclamation mark), which implicitly call (dbSync) and (commit 'upd) themselves
Updating the Database
Entities / Relations
Pilog (PicoLisp Prolog)