Hi Kashyap,

> Regarding the (local) - I'll take a look if I can produce a Pull Request
> with the fix. I wonder though if it has anything to do with the "problem
> with namespace" mentioned under the "Usage" section of
> https://github.com/aw/picolisp-json

Yes, indeed. This must be one reason. With PicoLisp version 17.3.4 (the
corresponding entry in doc/ChangeLog is "04mar17, Namespace chaining instead of
merging") the namespace system was completely rewritten. The former experimental
way of using namespaces turned out impractical, but the current one, chaining
namespaces into a search order (analog to Forth "vocabularies"), is very useful.
I use it a lot in my projects.


Concerning json.l, one critical point may be that this lib seems to be intended
also for pil32 and thus should load also without namespace support.

For that I would recommend the following solution:

   (unless (== 64 64) (from "####"))

   (symbols 'json 'pico)

   (local) (MODULE_INFO *Msg err-throw json-parse-file json-parse-string
   json-parse-unicode json-count-brackets json-array-check json-object-check
   json-object-check-separator link-generic link-array link-object
   link-object-value iterate-object iterate-list make-null make-boolean
   make-json-number make-json-string make-json-array make-generic make-object
   make-array)

   ####

This skips (i.e. does not read) the whole symbols stuff. The list following
(local) should contain all symbols private in this lib.

Let me know if you need further input.

☺/ A!ex

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

Reply via email to