Hi Alex,
I attempted to use 1 as the CELLS value in pico.h and immediately ran into
segfault at mark(ApplyArgs); in gc.c. I got around the segfault by simply
doing this -
if(ApplyArgs)mark(ApplyArgs);
if(ApplyBody)mark(ApplyBody);
After that, most things work but I ran into another segfault while trying
to run this sample.l file
## sample.l
(de test (Pat . Prg)
(bind (fish pat? Pat)
(unless (match Pat (run Prg 1))
(msg Prg)
(quit 'fail Pat) ) ) )
(test "Hello"
(pick '((X) (get X 'str))
(list (box) (prog1 (box) (put @ 'str "Hello")) (box)) ) )
kashyap@DESKTOP-NICP8CC:~/s/miniPicoLisp/src$ ../bin/picolisp sample.l
Segmentation fault
I'd appreciate any pointers.
Why am I trying CELLS = 1? Just poking around - I was just trying to figure
out the min number of CELLS I needed for certain programs.
Regards,
Kashyap