On 05/06/12 06:10, Han-Wen Nienhuys wrote:
As long as you seek out new technologies, you'll always get new
perspectives on programming.
I, like most people, have only a limited amount of time. Learning a
programming language well enough to write code that sticks to wall
when you throw it, is a significant investment, and if there is a
choice, I'd invest in something that will pay off beyond working on
LilyPond. Scheme has very use in any context, so it's not very
attractive.
The problem with Scheme is that while it's theoretically beautiful its paradigm
and syntax are quite different from most current mainstream programming
languages. That makes it a much harder language to ease into than most out
there, and consequently harder to play around the edges of contributing or
tweaking LilyPond.
Some while back I remember playing around with a snippet containing a scheme
function for controlling the rules of transposition. Even though I was only
tweaking someone else's code it was very finnicky and difficult to get right.
That almost certainly wouldn't have been the case if I'd been tweaking Java,
Ruby or Python (all of which are programming languages I don't really _know_,
but which are not difficult to ease into or to comprehend).
Regarding new languages, while I don't want to re-open the "alphabet soup"
discussion, my suggestion wasn't simply a casual shout-out to a cool new
language; it was a carefully-considered proposal based on concerns for
programming power, ease and flexibility of syntax, code efficiency and
suitability for the next generation of hardware. New languages, with small
current adoption, do carry a risk, but it's still possible to identify the
combination of features, goals, ease of use (and adaptation) and community
"feel" that point towards a future success.
_______________________________________________
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user