Still, PicoLisp source, I mean the program you write in PicoLisp,
(not the C code) can become quite large depending on your application.

We mitigated this, not by storing the "compiled" structures of pointers
to pointers. (Although we could have - but that would have been
complicated to implemented I think, and I am not convinced it would have
been much smaller than the text source.)
Instead, we compressed the text files (picolisp source code) and
unpacked them upon on loading. Source code in general compresses very well.
In principle, I think you could create something like these Javascript
"minifiers" before putting it through compression. This hypothetical
PicoLisp minifier would for instance replace long variable names with
shorter ones.

On 2017-07-15 12:56, Alexander Burger wrote:
> Hi Matt,
>> In order to minimize flash footprint, I was wondering if it would be
>> possible to compile code down to byte code?  The reason i wanted to do that
>> is then I could make of some library functions in reader macros off-target
>> and avoid installing libraries on the target.
> Can you explain what you mean? Compile *what* to byte code? Not the PicoLisp
> binary, right?
> Note that normal PicoLisp doesn't compile anything. It "compiles" to 
> structures
> of pointers to pointers, where the compiler is called the "reader" in Lisp.
> As you talk of libraries, you should look at miniPicoLisp. It "compiles" Lisp
> source files to C structures, to be able to put them into ROM instead of
> precious RAM at runtime. However, these are still not byte codes, but the good
> old pointers to pointers :)
> ♪♫ Alex


Reply via email to