On Sep 16, 2006, at 6:38 AM, Frank Barknecht wrote:
Hallo, Hans-Christoph Steiner hat gesagt: // Hans-Christoph Steiner wrote:
Arg... another example of the limitations of email, its so hard to communicate anything where nuance is essential. This discussion would take 10 minutes in person and no one would be annoyed.
Ah, yes, that's so very true... ;)
- I do not care about strict adherence to backwards compatibility
- I do care about finding broad standards that make sense in the
overall
- I did not know that [once] already exists elsewhere outside of
purepd
A name - of an object or a funicton - always carries some meaning of its own, which should be related to its behaviour. That is my main point against having [once] closed as default: A closed [once] to me more seems like a "[never]". Viewing it from this point was what made me come up with [countdown]. Maybe [countdown] isn't the best name, either. Alternatives could be [manyshot], [someshot], [passmany], [passcount] etc. What do you think?
I can say a [never] object makes no sense, while a [once] object that is default closed would be like "When I tell you to, then let something past just once". In Pd:
| [bang( | | [once 0] |
The question of consistency is a tough one here. Linguistic consistency is what you are outlining. From what I know most programming languages are more likely to adhere consistency of function arguments. But its tough to say what would work better in Pd.
Words can be very vague, especially when you consider that many programmers will be programming in a language that is not their native tongue. So it seems quite difficult to be strictly adherent to the words. Of course, it should be close as possible. But words are how humans communicate with each other, so the meaning of the language should be given attention.
So the other kind of consistency in question here is consistency of usage. All similar functions should have the same arguments, for example. Which type of consistency trumps the other? That's the question at hand.
I personally feel that its not more linguistically consistent to have [once] default open when it has no argument. But this is inconsistent in usage with similar objects ([spigot]...).
.hc