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 
Good initiative!
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
 - networking
 - 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
programs, like
 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
so on.
This separation will also help new students to better understand how the
language works
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?
best regards,
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to