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