Hi Lindsay,

> https://picolisp.com/wiki/?Documentation#yajson

Thanks!

One minor point: In the 'case' calls, the CARs of clauses with multiple
keys are quoted, like

   ('(" " "^I" "^J" "^M") ..

Strictly speaking this is not correct or at least not needed, as 'case'
does not evaluate the CARs.

It works correctly though, because it expands to

   ((quote " " "^I" "^J" "^M") ..


so the symbol 'quote' is simply also checked for.


If OK, I'd also propose a simplification of

   (de jsonSkipWhiteSpace (Lst)
      (let (C NIL  NotDone T)
         (while (and NotDone Lst (setq C (car Lst)))
            (if (sect (list C) '(" " "^I" "^J" "^M"))
               (++ Lst)
               (setq NotDone NIL) ) )
         Lst ) )

Couldn't it be just the following?

   (de jsonSkipWhiteSpace (Lst)
      (while (member (car Lst) '(" " "^I" "^J" "^M"))
         (++ Lst) )
      Lst )

But anyway, it could be just

   (seek '(((C)) (not (sp? C))) Lst)

or, if we remove also white spac at the end

   (clip Lst)

☺/ A!ex

-- 
UNSUBSCRIBE: mailto:picolisp@software-lab.de?subject=Unsubscribe

Reply via email to