On January 26, 2012 at 1:34 AM Alex Gilding <alex.gild...@talktalk.net> wrote:
> 2) Related to that, the download page describes miniPicoLisp as "pure"
> PicoLisp, supporting "the full language". Is there any kind of
> established definition of what specifically constitutes the PicoLisp
I suggest we create such a list, for several reasons. We could prototype on
some wiki the definitions. My suggestions:
- Virtual machine specification
* Coding of cells and S-expressions in memory
* how eval loop must run
(Right now there are three "standards", the miniPicoLisp,
the 32-bit PicoLisp, and the x86_64 PicoLisp.)
- Core language specification
* list and data manipulating
* very basic I/O, like stdin and stdout
- Full PicoLisp Runtime Specification:
- all of the above
- PicoLisp database
- whatever is in the current PicoLisp download
Rationale for virtual machine specification:
interoperability with (potential) 3rd party implementations,
and ease implementation in PicoLisp in hardware. (FPGA: VHDL/Verilog/MyHDL.)
Rationale for Core Language Specification:
make it easier to embed the language in embedded systems or in other
eLua and Lua, and also help 3rd party implementors.
Rationale for Full PicoLisp Runtime Specification:
specify a core set of services, like how the JRE has also a has set of JDBC
network helpers, like how C the language also has it's standard C library and
This separation will also help new students to better understand how the
and everything fits together.
On top of all of that, I am open to creating a 3rd party repository of
libraries like CPAN for Perl or PEAR for PHP. These could live on a separate
I could host it.
Pilog I don't know where to put in the lists above... can it be had separate
from the DB?