|
From: | Urs Liska |
Subject: | Re: Understanding Lilypond |
Date: | Sat, 17 Jan 2015 14:28:37 +0100 |
User-agent: | Mozilla/5.0 (Windows NT 6.1; WOW64; rv:31.0) Gecko/20100101 Thunderbird/31.3.0 |
Am 17.01.2015 um 14:13 schrieb Richard Shann:
On Sat, 2015-01-17 at 13:37 +0100, Urs Liska wrote:Concretely I see the problem in a sequence of related issues: - Scheme itself *is* difficult to get intoactually, Scheme syntax is incredibly simple - Scheme expressions are lists (a b c) with the first element being the procedure and the subsequent ones the parameters. So if you come across (if a b) you look up the procedure "if" in the documentation, rather than having to learn a bunch of keywords (if, case, else ...) which have special syntax peculiar to them.
Yes. But the way until you get familiar with this simple foundation and with all its implications is incredibly steep.
- There are so many Scheme dialects,the only one relevant to LilyPond is the guile-1.8 interpreter. In Denemo we have moved on to guile-2.0 but I haven't come across other interpreters for Scheme, though I've noticed them mentioned in the Guile documentation.
Of course, but when you are searching for solutions, approaches or even tutorials on "Scheme" you'll get a bunch of different resources, some for Racket, some for MIT Scheme, some for guile-1.8, some for guile-2.0 and so on. While often there is something to the solution that you can use for the problem at hand often the suggestions don't work in LilyPond - and you don't have a clue why.
The correct Scheme version is stated somewhere at the beginning of the Extending manual, but it's done so in a way that you will only understand the meaning of it after having learned quite some Scheme.
Urs
HTH Richard
-- Urs Liska www.openlilylib.org
[Prev in Thread] | Current Thread | [Next in Thread] |