[CM] Grace 1.0.1 error
Heinrich Taube
taube at uiuc.edu
Mon, 3 Mar 2008 05:37:17 -0600
> # What may be the problem do you think? I think lisp (chicken
> scheme) works but does not recognize common music commands?
Hi, the real answer is that Grace is not Common Music. The essential
differece is that Grace has no object system and provides realtime
scheduling -- these place certain constraints on what I can
effectively bring over. Over time Grace will come to contain most of
the useful features of CM but not exactly and not all of them will
make it. For example the (new ...) macro wont be part of Grace because
there is no object system. In Grace -- instead of creating objects and
outputting them to files -- you just send data to ports that are
always there:
Common Music: (output (new midi :keynum 60 ) )
Grace Scheme: (send "mp:note" #:keynum 60 )
Grace SAL: send "mp:note, keynum: 60
the send way is (in my opinion) is simpler and is certanly less cons-
full.
> # (keynum->hertz 60) gave 261.625579833984.
> # (loop for i to 10 collect i) gave "unbound variable loop"
Im in the process of migrating Loop, Patterns and the Spectral stuff
to Grace the next binary release, these are very easy to add and
without name changes. However Maybe I should make Grace eqivalents be
the same name as CM. I go back and forth on this im not sure what the
best thing to do is: keep old comfortable names or take the
opportuniny to make the names more schemey to reflect the underlying
environment, eg:
(keynum->hertz 60) -> (hertz 60)
(send "note" :keynum 60) -> (send "mp:midi" :keynum 60)
> # Have a nice day!
> -ugur guney-
you too!
best, rick