On 07/06/12 14:54, Tim McNamara wrote:
Hmm. The way you wrote that, it appears that the fault is not with Scheme but
the with one's unfamiliarity with Scheme. This is certainly *my* problem with
understanding the Scheme-based extensions in Lilypond. And yet when I look at
them I can intuit some sense of the structure and processes of the extensions
(I have a little experience with eLisp, which helps just slightly).
Despite all the parentheses which do make one feel a bit cross-eyed, Scheme is designed
to be a simple and quickly learned language which is firmly grounded in the principles of
good computer programming- one of the reasons it is used in teaching beginning
programmers at MIT. using "pretty-printing" makes the syntax a bit easier for
humans to read. The first few chapters of SICP would probably be very helpful.
Well, it's that unfamiliarity that I'm talking about, really. My point isn't
that Scheme is bad in itself but that using it means that virtually _everyone_
wanting to script or work on LilyPond has to learn a new language, syntax and
set of programming paradigms, even if they are already programmers; because
apart from computer science students, most people don't learn LISP dialects.
This isn't a bad thing to have to do in terms of one's programming experience
and education but it _is_ a potential barrier to entry for LilyPond, which I
think might be avoidable.
The links are useful -- thanks for sharing!
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user