

In 2010, it changed to an MIT/X11 license. In 2002, that version was released under a GNU General Public License (GNU GPL).

In 1999, a first rewrite from scratch was done, fully in C. The first versions were written in a mix of C and assembly language. In the mid-1990s, database functions were added. The design of PicoLisp is most similar to the first version of MacLisp, Interlisp and mainly Portable Standard Lisp. In the 1980s, PicoLisp began development on the Macintosh, and was used in commercial application development since then. Other features include: Prolog engine, database engine and database queries, distributed databases, inlining of C language functions and native C function calls, child process management, interprocess communication, browser graphical user interface (GUI), and internationalization and localization. Applications are written using a class hierarchy of entities and relations. Persistent symbols are first-class citizens (objects), they are loaded from database files automatically when accessed, and written back when modified. Ī special feature is the intrinsic create, read, update, and delete (CRUD) functioning. This is because the quote function is changed to return all its arguments unevaluated, not only the car of the first.

PicoLisp does not include Lisp's lambda function. Macros are needed only in rare cases and are implemented using the quote function. It is free and open-source software released under an MIT License (X11).įunctions can accept arbitrary types and numbers of arguments. On the language level, a programmer can use three different data types (numbers, symbols, and lists) being represented by cells and differentiated by bits at the end of the cell. It is built on one internal data type: a cell. Its most prominent features are simplicity and minimalism. It runs on operating systems including Linux and others that are Portable Operating System Interface ( POSIX) compliant. PicoLisp is a programming language, a dialect of the language Lisp.
