I posted 2 questions on the guile-user mailing list
This is the first one (any help appreciated)
and this is the second one (any help appreciated)
@abbienormal Disclaimer: I do not know Guile so I may be saying b******t in the next couple of messages. (1/3)
Apparently "help" is a function. In that case "(help NAME)" will evaluate "NAME" to get its value. If name is not bound to a value you will get an error. Thus "(help NAME)" will call the function named "help" on the value of the binding (variable if you prefer) "NAME". If you change the binding of "NAME" you will get different results. (2/3)
@abbienormal The syntax " 'NAME " is a special form that will evaluate to the symbol "NAME", *not* to whatever value may have been bound to "NAME". So "(help 'NAME)" will call the function named "help" on the symbol "NAME".
Symbols are similar to interned strings.
Hope this help. (3/3)
@abbienormal I suspect that the documentation for "(help 'NAME)" would be more correct if it read "even if it does not name an object"
I'm not sure what interned strings are
(help'NAME) works onone thiing only, as far as I can tell: modules
If you call
it will display the doc string for that module
Otherwise it will claim it can't retrieve documenation
Now my question is:
is there a thing that
1) is not a module
2) is not an object
3) has documentation ?
if the answeris no, then the help text shoud say:
(help 'NAME) gives documentation for the module NAME
As it is now, it's misleading
According to the documentation, "(help 'NAME)" should also tell you about functions and property lists bound to that NAME.
I am not saying the help text is clear.
For people who care about, support, or build Free, Libre, and Open Source Software (FLOSS).