lilypond-devel
[Top][All Lists]
Advanced

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

Re: Project - Eliminating grob parents and outside-staff-priority


From: Keith OHara
Subject: Re: Project - Eliminating grob parents and outside-staff-priority
Date: Sat, 29 Sep 2012 10:53:09 -0700
User-agent: Opera Mail/12.01 (Win32)

On Sat, 29 Sep 2012 10:30:32 -0700, address@hidden <address@hidden> wrote:


The way you're using "tentative" is almost exactly how pure properties are used 
in LilyPond.

Specifically, 'pure-height being the estimated vertical extent before 
line-breaking, while 'height is its extent after line-breaking.

If there are distinct properties to describe the position at different stages, 
then each property can be evaluated just once (as HanWen suggested, and as Mike 
agreed 100%).


I think all property look-ups should be pure until one is absolutely certain 
that the property won't change, at which point the unpure value should be 
cached and returned for both pure and unpure queries (impure sounds too 
religious, thus unpure).  The pure properties need not always return the same 
value - they can get closer and closer to the unpure as more and more 
information gets determined.

This is the opposite approach, where some "properties" are not permanent at 
all.  The word 'tentative' is a better label than 'pure', because pure functions would 
always return the same value given the same arguments.




reply via email to

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