https://codereview.appspot.com/244840043/diff/80001/Documentation/changes.tely
File Documentation/changes.tely (right):

https://codereview.appspot.com/244840043/diff/80001/Documentation/changes.tely#newcode68
Documentation/changes.tely:68: as if they were proper Scheme functions.
Argument checking will
On 2015/06/07 22:49:05, Keith wrote:
On 2015/06/07 22:16:00, Keith wrote:
> Skip "as if they were.." if they really are proper Scheme functions.

I guess the result of
  (define-music-function ... )
with all its type-checking and references to the source line-numbers
is
something more than a simple Scheme function, so I see why you say
"as if they
were"

Well, when called from Scheme there is not much in the line of
"references to the source line-numbers".  The result of
define-music-function would now meet the predicate procedure?, had
procedure-properties so it is sort of a function.  But it is actually a
GUILE data structure which has additional function-call semantics.  And
calling procedure-environment on it fails (no idea how this would behave
in GUILEĀ 2 though: it seems like allowing capture of a procedure
environment could be an interesting extension).  The C++ equivalent
would be something like being derived from a function class (actual C++
functions are not of a type that can be used as base class but there are
some comparable constructs).

Maybe I should not use "proper" but "genuine" here.  I don't think GUILE
has an established term for this we could use.

https://codereview.appspot.com/244840043/
_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to