[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Checks for recursive element behavior (issue 6943072)
From: |
address@hidden |
Subject: |
Re: Checks for recursive element behavior (issue 6943072) |
Date: |
Sat, 22 Dec 2012 07:41:00 +0100 |
On 21 déc. 2012, at 10:09, address@hidden wrote:
> On 2012/12/21 07:59:02, MikeSol wrote:
>> Hey all,
>
>> I'm ok w/ this on the countdown but can someone check out David's
> suspicion that
>> this slows stuff down by O(n^3)? I definitely won't push this if it
> slows
>> LilyPond down to a crawl.
>
> I am not ok with that. It looks really, really, really expensive. I
> don't see what would be wrong with just setting a context property flag
> axis-group-active in the engraver and refuse to maintain an axis group
> if the flag is already set.
In general, elements should never recursively be elements of themselves. This
seems like a safe assumption for LilyPond programming, especially as recursion
through elements lists becomes more prevalent in the code base. This is an
implicit assumption with which we've been programming all along, but the
advantage of making it explicit via a check in the Pointer_group_interface is
that it alerts users of this. We could maybe create a flag
-recursive-element-leniency to allow for this if people really want it.
Keith thinks that it's worth it to put this in. I do too, but I'd like
unanimity, so if you still think this should not be part of LilyPond then I'll
scrap the patch. Note that I'm not adverse to any of your suggestions about
the engravers, but I think that this is a healthy patch for LilyPond that will
fix potential segfaults down the road (inadvertent user mistakes w/ element
lists) in addition to the one reported. Of course, if it slows LilyPond down
too much then it's not worth it, but I'm ok with it being in a development
version and then reverting it if people complain too much about speed issues.
Cheers,
MS
- Checks for recursive element behavior (issue 6943072), mtsolo, 2012/12/21
- Re: Checks for recursive element behavior (issue 6943072), dak, 2012/12/21
- Re: Checks for recursive element behavior (issue 6943072),
address@hidden <=
- Re: Checks for recursive element behavior (issue 6943072), k-ohara5a5a, 2012/12/22
- Re: Checks for recursive element behavior (issue 6943072), k-ohara5a5a, 2012/12/22
- Re: Checks for recursive element behavior (issue 6943072), dak, 2012/12/22
- Re: Checks for recursive element behavior (issue 6943072), dak, 2012/12/22