I do totally agree that [pdlua] is a great thing and that it would be desirable to have it become part of PD-Vanilla. Nevertheless,
Frank Barknecht wrote:
Some people may miss [s2l] in vanilla Pd, others miss a [pipe] for variable length lists or a multi-period [metro], a flexible markov chain object and whatnot. With pdlua most of this is almost trivial to write and can be installed without the need to compile anything once pdlua is installed.
We first have to distinguish between A) things that can already be achieved IN vanilla pd by creating abstractions on top of built-in objects B) things that can not.
Within category (A), there are things that would either result in a horribly inefficient implementation or require some hugly hack, so they deserve to be treated like case (B). Think for example about the "old" [list-length] abstraction that returned the length of a list by scanning it and counting its elements: it implemented the same funcionality of the later built-in [list length], yet it was quite desirable to have a built in object to do that. Probably better examples can be found.
Except these cases, I think that externals that solve class-A problems are not candidate to becoming part of PD Vanilla.
Now about class B that is the one I'm concerned with.
It's great to include a high-level interpreted language in PD that lets one create all the extensions s/he wants, but that doesn't mean that, if this extension language (lua) became part of PD Vanilla, ANY built-in object whose functionality could be obtained with a lua script would become unnecessary!
True: if [pdlua] was part of PD Vanilla, you wouldn't strictly "need" a [symbol2list] (or splitsymbol or whatever) object. But then you wouldn't need [*], [-], [sqrt], [cos], [list ...], [moses], [until]...... probably not even [trigger]. Would you imagine how pd patches would look like??
It is, I think, a matter of "elegance" (which means that it is subjective, I recognize).
Let me make a parallelism. I always missed [>=~], [==~], [abs~], etc.; I was quite astonished to find out they didn't exist when I first needed them, and I never understood why they didn't, until [expr~] became part of PD Vanilla, or probably until I _realised_ that [expr~] _was_ part of PD Vanilla. Now I still think they should exist, as I find ugly to write [expr~ $f1>=$f2] (or whatever it is) instead of [>=~]. I think it is a matter of elegance and consistence that every control math operator should have its signal counterpart.
Now i'm SURE there are good reasons why basic signal math operators don't exist, I haven't even searched the archives but i'm sure I'll find out something about it, however take this as an _example_.
Now I think breaking symbols is just another example; and like a couple of people have said in this thread, since you can join them it's reasonable to expect you can break them just as easily.
Bye m.