On Tue, 6 Dec 2005 19:48:34 +0100 Erik wrote: > On Monday 05 December 2005 18.17, Mehmet Okonsar wrote: > > Hello users and creators of the best music notation program in > > the world! > > > > What can you suggest for learning Scheme? > > A set of few links for getting from almost 0 up to Lilypond > > source. Recommended readings textbooks and on-line tutorials.. > > Thanks > > You can check out schemers.org.
I will not turn this into a discussion about Scheme (we could maybe find another list) but I think that some words are in place. I was interested in understanding why a programmer would choose Scheme (or Lisp) for a programming language and I found only half answers. You cannot make pointer-mistakes in Scheme, for example. I found that my RedHat has a nice scheme-interpreter, University of Massachusetts at Boston scheme, sounds nice. I tried to find out how a programmer would read a string and e.g. cut the first letter (character) and put it into a variable. It is easy to understand that Scheme makes a new variable each time you get something which has to be stored. Changing strings is not possible in scheme; you create a new one and overwrite or delete the old one, I think. Correct me if I am wrong (but see the quote below from wikipedia first). However I wanted to know how this language would cut strings and I never found out - I even think that UMB-scheme cannot assign the first half of a string to another (new) string. Shame on me, sort of, I couldn't go on especially when I got the advice to try to understand what you actually **can do** with Scheme, because every operation translated into machine code or C-code in my head. I am still wondering why you cannot take the first half of a string ... So I need a good introduction to "the rationale behind Scheme", and I think I have found such one on Wikipedia: http://en.wikipedia.org/wiki/Scheme_programming_language "The dialect of Lisp known as Scheme was originally an attempt by Gerald Jay Sussman and Guy Steele during Autumn 1975 to explicate for themselves some aspects of Carl Hewitt's theory of actors as a model of computation. Hewitt's model was object-oriented (and influenced by Smalltalk); every object was a computationally active entity capable of receiving and reacting to messages. The objects were called actors, and the messages themselves were also actors. An actor could have arbitrarily many acquaintances; that is, it could "know about" (in Hewitt's language) other actors and send them messages or send acquaintances as (parts of) messages. Message-passing was the only means of interaction. Functional interactions were modeled with the use of continuations; one might send the actor named "factorial" the number 5 and another actor to which to send the eventually computed value (presumably 120)." When I read such stuff I wonder why a message isn't an object. And how do they propose to cut a string ... (enough said;-) -- dax2-tele2adsl:dk -- http://d-axel.dk/ Donald Axel _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-user