Currently, Ikarus allows you to attach arbitrary values to identifiers
at expansion time, but it does not allow you to do that and at the
same time have the identifier be usable as a variable/macro. I have
not finalized my thoughts about this, but it's coming any-time-now.
Eduardo Cavazos wrote:
Do you know of any other implementations allow this?
This sounds really cool... they're basically the old-school
"property lists" for the 21st century.
I wonder if this is also a good place to hang docstrings?
I can see folks argue against having docstrings available at runtime if
they didn't ask for them to be there. But I don't see the harm in having
them associated at the syntax level.
Also, I think only specifying where docstrings are stored and not the
exact mechanism for adding them to this storage is good. If someone
wants to have a special 'define' form which stores the docstring, fine.
Maybe somebody wants to add docstrings in another fashion. It would be
good to accomodate various ways.
You could even have a "property" for the one-liner style docstring and a
separate one that you place a longer help description at.
(set-doc-string! abc "...")
(set-symbol-help! abc @{ ...})
etc.
If you prefer to put all your documentation in a file separate from the
main 'sls' that's OK too.
Ed