bug-lilypond
[Top][All Lists]
Advanced

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

Re: Illegal C++


From: Wiz Aus
Subject: Re: Illegal C++
Date: Sat, 08 Oct 2005 22:55:00 +1000

From: Nicolas Sceaux <address@hidden>
To: "Wiz Aus" <address@hidden>
CC: address@hidden
Subject: Re: Illegal C++
Date: Sat, 08 Oct 2005 01:42:29 +0200

"Wiz Aus" <address@hidden> writes:

>>From: Nicolas Sceaux <address@hidden>
>>"Wiz Aus" <address@hidden> writes:
>>
>> > lilypond uses an interpretive language (Scheme)
>>
>>No. LilyPond uses an *implementation* of Scheme, namely guile, which
>>only provides an interpreter, but no compiler, unlike many other Scheme
>>implementations.  Please do not widespread wrong clichés.
>>
> Well sure - except that "interpretive" isn't ever an accurate
> description of a *language* - any language can fully compiled,
> partially compiled (e.g. Java), or fully interpreted.

Again, no. "Interpretive" is *never* an accurate description of a
*language*. You're confusing with *implementations* of a language.
Sounds like we're fully in agreement.  I suspect it's a human language 
problem, not a computer language one!  My point was only that lilypond made 
use of an interpreter while executing, which was bound to affect efficiency 
far more than an extra C++ function call layer.
Implementations can provide compilers or interpreters, not languages.

> But I agree it would more accurate to see lilypond uses an
> interpret*ed* language (Scheme).

uh? I don't think that using a Scheme implementation with no compiler
is an advantage.

I meant 'say' not 'see' - in other words, lilypond does use an interpreted language, and that language happens to be Scheme.
> Even if it did use pre-compiled scheme, because lilypond supports
> compiling scores that contain Scheme code, it would still require
> effectively interpretive processing, which is not doubt a large reason
> for it's less-than-blinding-fast operation.

My personnal experience is that parsing is not, by far, the longest part
in a score compilation.
It may not be the longest part, but parsing, interpreting and executing 
scripts *is* typically a slow process.  Actually calculating the necessary 
layout of where things should go on a page can be done very very quickly 
(witness any commerical GUI-based music editor - and yes I accept they often 
don't quite have the level of sophistication lilypond does, but they do at 
least 50% of the work lilypond does, and can typically process 50+ page 
scores in well under a second, as opposed to over 2 minutes).  I'm not sure 
what takes up most of liypond's time, but I would surprised if it really 
were calculating score layout.
_________________________________________________________________
SEEK: Over 80,000 jobs across all industries at Australia's #1 job site. http://ninemsn.seek.com.au?hotmail




reply via email to

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