David Zelinsky:
...
> In Lisp (of which Scheme is a dialect) a "symbol" is an identifier,
> which can have simultaenous associated values of one or more of various
> types, including variable or function.  Which value type is used depends
> on context.  A slightlhy more detailed explanation is here:
> 
>    https://en.wikipedia.org/wiki/Common_Lisp#Scalar_types
...

 I don't follow, well yes [1] says with some vague wordings that a symbol
 is an identifier also somewhat implying that it isn't a variable,
 [2] says it is type but doesn't really bother to explain it.
 I just find a lot jumbo mumbo, perhaps someone who alreade knows
 guile in and out would perhaps understand it perfectly well...

[1] https://people.csail.mit.edu/jaffer/r5rs_4.html#SEC15
[2] https://people.csail.mit.edu/jaffer/r5rs_5.html#SEC20

 And regarding common lisp, Guy L. Steele Jr. writes in his book
 "common lisp" from 1990 that (section 2.3. Symbols): 
   Symbols are Lisp data objects that serve several purposes and have 
   several interesting characteristics. Every object of type 
   «symbol» has a name, called its "print name".
   ...
   Symbols have a component called the "property list", or "plist".
   ...
   Symbols are also used to represent certain kinds of variables in
   Lisp programs,

 So, it seems clear to me that a symbol cannot be a simple variable
 like the "a" one here: a = \lyricmode { hello }

 [3] shows a symbol: 'thickness
 Does that mean that the only symbols in lilypond are thoose in
 scm/define-music-types.scm ?

[3] https://lilypond.org/doc/v2.25/Documentation/extending/property-alists 

Regards,
/Karl Hammar



Reply via email to