Hi Thorsten,

> using flat property lists with keywords like
> ,----
> | (:a b :c d)
> `----
> as data (not as a symbol's property list) is pretty common in e.g. Emacs
> Lisp and elsewhere. In Clojure the keywords even work like functions

I feel that I don't completely understand the question.

In PicoLisp, a property list cannot be seen separated from a symbol.
After all, these are properties OF a symbol. It is just an
implementation detail that they are a list internally.

A stand-alone list of key-value pairs is an "association" list, as used
with 'assoc' or 'asoq'.

> These 'stand-alone' property lists are pretty useful for function
> keyword arguments too, e.g.
> ,----
> | (defun foo (&keys a b c (d . 5) e (f . "g")) ...)
> `----

There were some rosetta tasks in that like. I don't remember exactly if
they address the same problem, but you may look at the "Named
parameters" and "Optional parameters" tasks. Is this similar?

What exactly would be your goal?

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

Reply via email to