David Kastrup writes:
>> In general, the _right_ way to build a custom extension language using
>> Guile 2 is to write a compiler that converts your language into one of
>> the other languages that Guile 2 supports.
>
> Lilypond is not Scheme. It has syntax ambiguities that are resolved by
> lexi
Mark H Weaver writes:
> David Kastrup writes:
>>> In general, the _right_ way to build a custom extension language using
>>> Guile 2 is to write a compiler that converts your language into one of
>>> the other languages that Guile 2 supports.
>>
>> Lilypond is not Scheme. It has syntax ambiguit
> > and that other programs that use Guile for extension will run into
> > similar difficulties, but as far as I can tell Lilypond is quite
> > unique here.
>
> Because nobody else uses Guile for serious extensions. And not because
> of its performance: that is _irrelevant_ for most extension pur
ri...@happyleptic.org writes:
>> > and that other programs that use Guile for extension will run into
>> > similar difficulties, but as far as I can tell Lilypond is quite
>> > unique here.
>>
>> Because nobody else uses Guile for serious extensions. And not because
>> of its performance: that i
David Kastrup writes:
> Very funny. If x is not an integer, it is put into the music argument
> instead, and the next "argument" is not an argument but independent
> code.
Ah, okay. In that case, the design of the Lilypond language does indeed
make compilation (or even parsing) before execution
On Mon 12 Dec 2011 19:29, Mark H Weaver writes:
> You are using Guile in a very unusual way. You have constructed a
> hybrid language of both Scheme and Lilypond, where each can be nested
> within the other (so far so good), but -- and here's the kicker -- you
> apparently want to implement this
David Kastrup writes:
>> Be confident that I'm ashamed by my ignorance but I do not know how
>> exactly Lilypond uses Guile (nor what Lilypond exactly does), but your
>> description of it does sound like it's the only way to "extend" a
>> program.
>
> Not at all. But when we are talking about an
Hello Guile developers,
Following up on my last email, I am nervously announcing a new branch,
'wip-compiler'. I hope that in a few months this branch will contain a
working compiler. For now, it contains a few new data structures and a
function that converts Tree-IL to a form that will be nicer f