Hi Imran + Tomas,
in addition to Tomas' perfect explanation, let me add one note to:
> > BTW, is it possible to create your own reader macro's?
> Creating reader macros is not built-in in picolisp. However, you can
> write your own reader if you think it's important. That shouldn't be
> that hard.
There is a way to switch the Lisp-level 'read' function to a kind of
"low-level mode", by calling it with one or two arguments (explained in
In that case, 'read' returns atoms (numbers, internal and transient
symbols) but not complete s-expressions. Parentheses and other
meta-characters are simply returned as transient symbols and can be
This makes it quite easy to write a customized reader. For example, the
JSON "library" (http://rosettacode.org/wiki/JSON#PicoLisp), mentioned
earlier in this thread, makes use of that.