Naming (numIng?) conventions

Before things get locked in fully I want to point how that there are still lots of inconsistencies in the naming. I’m demonstrably not a big fan of programmatic abbreviations/portmanteaus, but a lot of things don’t make sense.

Take fluid.bufcompose~ as an example.

It takes startFrame as an attribute (actually startframe, but that’s another discussion), but then expects numFrames as another. Why isn’t it numstartframes?

Also isn’t gain a num? Why isn’t it numgain?

I understand things like destgain as destinationgain is a bit long, but the num prefix (to me) never seems appropriate.

There was also some mention of this making sense in a SuperCollider context, but as a Max user, I don’t know that I should be concerned with SuperCollider contexts (I imagine there’s to ‘right to left’ order in SC, but I would expect stuff to act that way in Max either way).

As a placeholder, I’m not going to do more than give some pointers for our rationale here. But we acknowledge your strength of feeling.

Why do we care about consistency between environments?
I appreciate you may not, but there are two prongs to this. First, some people might be more nomadic between different environments, given that they have different affordances. On that basis, we’re pretty keen that there should be minimal impedance to moving between environments. Second, a crucial prong of the project is that we enable creative exchange of ideas and techniques between people using different environments, and for that, it helps if (say) SC and Max users can be sure they’re talking to each other about the same thing.

Clearly, this invites a trade-off between being doggedly consistent across platforms, and interfering with people’s idiomatic expectations for a particular environment.

Why num sometimes, but not others?
num serves as a disambiguator (I appreciate you may be sceptical about this!). Generally you’ll see it as a prefix to something that’s a plural noun (frames, chans) to make clear that what’s expected is a single quantity rather than a range. gain is unambiguously singular, frames not so much.

Well, startframe is an offset position, and numframes is the number of samples to read from that offset. I’m not sure I’d be able to make sense of numstartframes as a concept.

1 Like