lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Quit [now definitely O/T]


From: David Kastrup
Subject: Re: Quit [now definitely O/T]
Date: Fri, 13 Nov 2009 07:36:47 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/23.1.50 (gnu/linux)

Jesús Guillermo Andrade <address@hidden> writes:

> El 12/11/2009, a las 02:17 p.m., David Kastrup escribió:
>> And that's the main point: does the job.  The one thing Emacs Lisp has
>> going over Common Lisp that it is a reasonably limited language to
>> learn
>> in comparison.  Which is a nuisance to seasoned Lisp programmers, and
>> gets quite more people to meddle with it.
>
> But surely from a practical point of view: would not that kind of
> shift

[Going to a single extension language, with the "from-scratch" proposal
Lua]

> change the whole design philosophy of lilypond?

The design, as in "principal data flow", would not change.  The
implementation would.

> How much would have to adapt?

All.  Unless one plugs in a Baby scheme interpreter.  But that's likely
not a totally fantastic idea.

> Maybe start of scratch?

All this was under the "start from scratch" premise.  It would be
sensible to fade out C++ against C in the process, change the data
structures to Lua friendly ones, change most of the internal Scheme
code, provide a chicken Scheme interpreter at user level.

The principal Lilypond data structure, the property list, would actually
be quite more efficiently implemented using Lua tables.

>>>    I can actually understand and work with the Lua coroutines.  In
>>>    contrast, I am not sure that trying to solve tasks with Scheme...
>>>
>>>
>>> That is a problem of perspective that is faced with all programmers
>>> that have ever read one line of scheme/lisp code. The problem has
>>> historical roots and has been documented elsewere. Notwithstanding,
>>> there are several ways to overcome this perpective limitation.
>>
>> Oh come on, get down from your high horse.
>
>< I get the point...

The problem is that a cons is not self-contained data.  So even with
continuations, the main data structures don't have scoped behavior.
That makes much of the control structures in Scheme work out less than
fabulous in practice once you don't just juggle atoms.

But still just Scheme is better than Scheme+C++ for extension.  If one
can do.

-- 
David Kastrup





reply via email to

[Prev in Thread] Current Thread [Next in Thread]