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

Reply via email to