Re: \consists terminology

2018-06-15 Thread Kieren MacMillan
Hi all,

> "will include the following as one of many constituents
> upon instantiation to be part of its translator group"

\involves
\incorporates

??

Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread N. Andrew Walsh
Hi David,
On Fri, Jun 15, 2018 at 6:37 PM David Kastrup  wrote:

>
> "consists of" and "will include the following as one of many
> constituents upon instantiation to be part of its translator group" is
> not the same.
>
> Well, if the latter of these is what "\consists" is intended to mean in
this context, then I'm inclined to think that maybe my earlier pedantry
might be on to something. Do you agree with the following:

"A \consists B" is equivalent to "B constitutes [non-exclusively the
relevant part of] A"?

If that's the case, the active verb that goes in the opposite direction
would be "comprise". Its negation could be "decomprise."
You could also theoretically use "\invokes/\disinvokes" if that isn't
already used elsewhere.

David Foster Wallace, terrible person though he was, would likely have had
a few better suggestions.

Cheers,

A
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread Aaron Hill

On 2018-06-15 09:03, David Kastrup wrote:

"consists of" and "will include the following as one of many
constituents upon instantiation to be part of its translator group" is
not the same.


I asked you to defend the hyperbolic "factually utterly wrong".  At most 
the distinctions are that of tense and a clarity of the underlying 
mechanism.  That is, "will include" is more of a promise of future 
behavior than "consists of" which is present and absolute.  Next, you 
specified that the thing is part of a so-called translator group.  Sure, 
"consists of" is far too generic to cover that, so you would have to say 
`\translatorGroupConsists` or equivalent to get to that level of 
specificity.  But documentation can easily supplement this by informing 
people that contexts have translator groups, and that is where something 
like an engraver lives.


Should we not avoid polluting a language with over-specification, 
especially when it comes to implementation details that stand a chance 
of being changed?  So unless the distinction about translator groups is 
truly important, `\consists` and "consists of" seem to be sufficient for 
communicating the essentials.


Your point that `\remove` feels out of place is one I can agree with.  
However, invented words like "unconsists" are not my cup of tea; though 
to be honest, I wouldn't object too strongly provided we were unable to 
track down something more suitable.  And if there little reason to budge 
on `\consists`, then our options may be limited.



Nope, I am totally serious here.  How precisely would `\where`,
`\with`, and `\without` as stated here be in any way unclear or
incorrect?  These are simpler words that are reasonably precise with
virtually no conflicting connotations.


\with is very extensively used.

\new Voice \where { \accidentalStyle piano } { ... }

is not just a massive change but also a change massively for the worse.


Your quoted example fails to justify why you think it would be for the 
worse.  The readings would be "create a new voice with an accidental 
style of piano" versus "create a new voice where the accidental style is 
piano".  Both are equally very plain and direct.  But I am willing to 
concede there is a scenario in LilyPond where `\with` is definitely the 
preferable term and/or that a supposed `\where` would be confusing 
and/or wrong.



-- Aaron Hill

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread Kieren MacMillan
>> \enbike \debike
> You mean \mount \unmount ?

No… \addbiketoshed \removebikefromshed
=)

K.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread David Kastrup
Kieren MacMillan  writes:

>>> Another alternative might be \including and \excluding
>> Or \engages / \disengages .  So many bike sheds.
>
> \enbike \debike

You mean \mount \unmount ?

-- 
David Kastrup

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread David Kastrup
Aaron Hill  writes:

> On 2018-06-14 23:58, David Kastrup wrote:
>> Flaming Hakama by Elaine  writes:
>>> Here is a usage of the \consists command:
>>>
>>>   \context {
>>> \Staff
>>> \consists Mark_engraver
>>> \consists Metronome_mark_engraver
>>>   }
>>>
>>> To convey what this does, it would be more along the lines of
>>> "Create a Staff context that consists of a Mark_engraver and
>>> Metronome_mark_engraver".
>>
>> Which forms a grammatical statement which, when interpreted at
>> its grammatical meaning, is factually utterly wrong.
>
> On 2018-06-15 06:54, David Kastrup wrote:
>> Engraver/translator instances are particular to a certain context.  The
>> context exercises its contained translator_group implementation as the
>> main manner of its operation.  If that sounds opaque it is because the
>> terminology at the C++ level is one incoherent mess.
>
> So, which way is it?  Elaine's reading of `\consists` as "consists of"
> is entirely a plausible interpretation that seems to jive with how you
> describe how translators are instanciated as part of a context.  What
> was (or is) "factually utterly wrong" about it?

"consists of" and "will include the following as one of many
constituents upon instantiation to be part of its translator group" is
not the same.

> With my fallacious ideas rent assunder, it seems like `\consists` is a
> perfectly fine word.  `\consistsOf` or `\consistingOf` would certainly
> be more grammatically correct, but it sounds like you still have
> something against that.

They are breaking the reserved word conventions.  Even while I want
those to stop being reserved words eventually, they are used in a place
where this kind of music function naming convention would be unusual.

>>> Finally, what about `\with` becoming `\where`?  It reads just as
>>> plainly, and would free up the term if we wanted to opt for `\with`
>>> and `\without` as opposed to `\consists` and `\remove`.
>>
>> Frankly, by now I suspect that you did not actually close the sarcasm
>> tag you opened at the start of your comment.
>
> Nope, I am totally serious here.  How precisely would `\where`,
> `\with`, and `\without` as stated here be in any way unclear or
> incorrect?  These are simpler words that are reasonably precise with
> virtually no conflicting connotations.

\with is very extensively used.

\new Voice \where { \accidentalStyle piano } { ... }

is not just a massive change but also a change massively for the worse.

-- 
David Kastrup

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


RE: \consists terminology

2018-06-15 Thread Mark Stephen Mrotek
\bunk \debunk

Mark

-Original Message-
From: lilypond-user [mailto:lilypond-user-bounces+carsonmark=ca.rr@gnu.org] 
On Behalf Of Kieren MacMillan
Sent: Friday, June 15, 2018 8:38 AM
To: David Kastrup 
Cc: Flaming Hakama by Elaine ; Lilypond-User Mailing 
List ; Carl Sorensen 
Subject: Re: \consists terminology

>> Another alternative might be \including and \excluding
> Or \engages / \disengages .  So many bike sheds.

\enbike \debike

Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread Kieren MacMillan
>> Another alternative might be \including and \excluding
> Or \engages / \disengages .  So many bike sheds.

\enbike \debike

Kieren.


Kieren MacMillan, composer
‣ website: www.kierenmacmillan.info
‣ email: i...@kierenmacmillan.info


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread Aaron Hill

On 2018-06-14 23:58, David Kastrup wrote:

Flaming Hakama by Elaine  writes:

Here is a usage of the \consists command:

  \context {
\Staff
\consists Mark_engraver
\consists Metronome_mark_engraver
  }

To convey what this does, it would be more along the lines of
"Create a Staff context that consists of a Mark_engraver and
Metronome_mark_engraver".


Which forms a grammatical statement which, when interpreted at
its grammatical meaning, is factually utterly wrong.


On 2018-06-15 06:54, David Kastrup wrote:

Engraver/translator instances are particular to a certain context.  The
context exercises its contained translator_group implementation as the
main manner of its operation.  If that sounds opaque it is because the
terminology at the C++ level is one incoherent mess.


So, which way is it?  Elaine's reading of `\consists` as "consists of" 
is entirely a plausible interpretation that seems to jive with how you 
describe how translators are instanciated as part of a context.  What 
was (or is) "factually utterly wrong" about it?


With my fallacious ideas rent assunder, it seems like `\consists` is a 
perfectly fine word.  `\consistsOf` or `\consistingOf` would certainly 
be more grammatically correct, but it sounds like you still have 
something against that.



Finally, what about `\with` becoming `\where`?  It reads just as
plainly, and would free up the term if we wanted to opt for `\with`
and `\without` as opposed to `\consists` and `\remove`.


Frankly, by now I suspect that you did not actually close the sarcasm
tag you opened at the start of your comment.


Nope, I am totally serious here.  How precisely would `\where`, `\with`, 
and `\without` as stated here be in any way unclear or incorrect?  These 
are simpler words that are reasonably precise with virtually no 
conflicting connotations.


-- Aaron Hill

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread Carl Sorensen
How about \contains and \excludes?

\contains says that we want a context to contain a particular kind of translator
\excludes says that we want  exclude  a translator that would normally be 
included

\includes and \excludes would be more a natural pair, but then there is a 
conflict between \include and \includes

Another alternative might be \including and \excluding

Carl


___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread David Kastrup
Carl Sorensen  writes:

> How about \contains and \excludes?
>
> \contains says that we want a context to contain a particular kind of 
> translator
> \excludes says that we want  exclude  a translator that would normally be 
> included
>
> \includes and \excludes would be more a natural pair, but then there
> is a conflict between \include and \includes
>
> Another alternative might be \including and \excluding

Or \engages / \disengages .  So many bike sheds.

-- 
David Kastrup

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread David Kastrup
Aaron Hill  writes:

> On 2018-06-15 03:29, David Kastrup wrote:
>> Flaming Hakama by Elaine  writes:
>>> On Fri, Jun 15, 2018, 1:42 AM David Kastrup  wrote:
 Sorry, this is not going at all in the direction you were aiming for
 but from a purely technical standpoint getting rid of \remove would
 be a much more worthwhile target than junking \consists , and
 \unconsists or something of similar awkwardness would be a lot less
 problematic as a newcomer than something as generic as \add .
>>>
>>> Quite the contrary. This is helping to elucidate what's actually going
>>> on, and I suspect a more descriptive terminology may result.
>>
>> The less descriptive terminology has the advantage that it does not
>> come
>> as preloaded with precise but incorrect preconceptions.
>
> Why not call it `\xyzzy` then?

Because it comes with no preconceptions, precise or fuzzy.

> I would debate that preconceptions are the lesser evil when stacked up
> against the potential of undescriptive and/or misleading terms.  If
> the terminology is not clear enough, then it is significantly harder
> to correct or override a preconception.  Of course, we should avoid
> cluttering the user experience with all of the gory details of the
> underlying mechanisms; but if folks are uncomfortable with the casual
> reading of `\consists`, then it would seem that it is a poor word
> choice indeed.

I have seen a grammar complaint.

> It truly is a shame that `\with` is already used, as the pair of
> `\with` and `\without` could be a great way to succinctly state the
> relationship in this scenario.  Perhaps `\including` and `\excluding`
> could work, but then...

Too close to \include in my book which is something else entirely.

> `\consists` seems to imply aggregation or possibly even containment.

So?

> This sounds like one of the incorrect preconceptions we are wanting to
> avoid, since it is my understanding that the associated engravers, et
> al. are *not* to be considered an element of the context that
> `\consists` them.

Not?

> Rather, they co-exist and work along side during the process.

Engraver/translator instances are particular to a certain context.  The
context exercises its contained translator_group implementation as the
main manner of its operation.  If that sounds opaque it is because the
terminology at the C++ level is one incoherent mess.

I don't see anybody stepping up to clean that up, however.  At the
LilyPond level, it is comparatively clean in comparison.  I'd like to
use something like \unconsists instead of \remove (why is this not in
the third person singular like the rest anyway?) for comparatively
relevant technical reasons.

> So, `\including` might even be overstating the relationship here.
> (Mind you, the confusion between `\including` and `\include` would be
> more than enough to disqualify it anyway.)
>
> Could `\recognizes` and `\ignores` work?

It's much much much more incorrect than what you are coming from.

> These words, again, do not imply any form of ownership, rather are
> hinting more at some form of permission, granting a translator to do
> its work within that context.  I would have suggested `\allows` and
> `\denies` as simpler words, but the latter already exists along with
> its pair `\accepts`.  Oh, but now a crazy thought... Could overloading
> those existing terms work?  That is, would LilyPond be able to tell
> the difference between `\accepts "SomeContext"` vs. `\accepts
> "SomeEngraver"`?  If so, then we could potentially throw away both
> `\consists` and `\remove`.

Accepting a subcontext into a hierarchy and instantiating a translator
are so utterly different things that your request to conflate them in
order to make things "more correct" is a complete absurdity.

So what then would \defaultchild "some_translator" mean if those are
comparable things?

> Finally, what about `\with` becoming `\where`?  It reads just as
> plainly, and would free up the term if we wanted to opt for `\with`
> and `\without` as opposed to `\consists` and `\remove`.

Frankly, by now I suspect that you did not actually close the sarcasm
tag you opened at the start of your comment.

-- 
David Kastrup

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread Aaron Hill

On 2018-06-15 03:29, David Kastrup wrote:

Flaming Hakama by Elaine  writes:

On Fri, Jun 15, 2018, 1:42 AM David Kastrup  wrote:

Sorry, this is not going at all in the direction you were aiming for
but from a purely technical standpoint getting rid of \remove would
be a much more worthwhile target than junking \consists , and
\unconsists or something of similar awkwardness would be a lot less
problematic as a newcomer than something as generic as \add .


Quite the contrary. This is helping to elucidate what's actually going
on, and I suspect a more descriptive terminology may result.


The less descriptive terminology has the advantage that it does not 
come

as preloaded with precise but incorrect preconceptions.


Why not call it `\xyzzy` then?

I would debate that preconceptions are the lesser evil when stacked up 
against the potential of undescriptive and/or misleading terms.  If the 
terminology is not clear enough, then it is significantly harder to 
correct or override a preconception.  Of course, we should avoid 
cluttering the user experience with all of the gory details of the 
underlying mechanisms; but if folks are uncomfortable with the casual 
reading of `\consists`, then it would seem that it is a poor word choice 
indeed.


It truly is a shame that `\with` is already used, as the pair of `\with` 
and `\without` could be a great way to succinctly state the relationship 
in this scenario.  Perhaps `\including` and `\excluding` could work, but 
then...


`\consists` seems to imply aggregation or possibly even containment.  
This sounds like one of the incorrect preconceptions we are wanting to 
avoid, since it is my understanding that the associated engravers, et 
al. are *not* to be considered an element of the context that 
`\consists` them.  Rather, they co-exist and work along side during the 
process.  So, `\including` might even be overstating the relationship 
here.  (Mind you, the confusion between `\including` and `\include` 
would be more than enough to disqualify it anyway.)


Could `\recognizes` and `\ignores` work?  These words, again, do not 
imply any form of ownership, rather are hinting more at some form of 
permission, granting a translator to do its work within that context.  I 
would have suggested `\allows` and `\denies` as simpler words, but the 
latter already exists along with its pair `\accepts`.  Oh, but now a 
crazy thought... Could overloading those existing terms work?  That is, 
would LilyPond be able to tell the difference between `\accepts 
"SomeContext"` vs. `\accepts "SomeEngraver"`?  If so, then we could 
potentially throw away both `\consists` and `\remove`.


Finally, what about `\with` becoming `\where`?  It reads just as 
plainly, and would free up the term if we wanted to opt for `\with` and 
`\without` as opposed to `\consists` and `\remove`.


-- Aaron Hill

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology

2018-06-15 Thread David Kastrup
Flaming Hakama by Elaine  writes:

> On Fri, Jun 15, 2018, 1:42 AM David Kastrup  wrote:
>
>> David Kastrup  writes:
>>
>> > Flaming Hakama by Elaine  writes:
>> >
>> >> I think that conveys more clearly what is happening.
>> >
>> > Not really: that remains something to look up in the documentation.
>> >
>> > Now I'll readily admit that \consists / \remove does not make for an
>> > appealing antonym pair.  I'd be leary after all this time of turning a
>> > common word like "add" into a reserved word even though "remove" is not
>> > better in that regard.  But at least it has the advantage of being
>> > established.
>>
>> Some of my argument may be based on some tendency of arguing anything
>> out of contrariness.  However, this latter point has been irking me
>> quite a bit as opposed to the quirky grammar you complain over.
>
>
> It's not really a matter of quirky grammar.
>
> It's that the term does not convey the relationship in question.

I doubt that we'll manage substantially better.

>> While it would likely do nothing to address your complaint, actually
>> moving to \consists / \unconsists would, while doubling down on the
>> unnaturality you complain about, make for a better pairing, create a
>> new keyword very unlikely to be in previous use and free \remove.
>>
>
> So here's a question.
>
> Is \consist only used to express the relationship between contexts and
> engravers?

\consists, and basically yes (it's not just engravers but any translator
of which engravers are just one subset).

> Because if it's just used to with respect to engravers, you could
> consider \addEngraver and \removeEngraver.

We have translators named *_translator and translators named *_engraver
and translators named *_performer .

If you want to be precise, this kind of line does not actually add or
remove an engraver anywhere but actually causes any context instantiated
from the containing context definition to contain or not contain the
respective engraver.

It adds and removes the instruction to instantiate an engraver as part
of instantiating a context from the current context definition.

>> Sorry, this is not going at all in the direction you were aiming for
>> but from a purely technical standpoint getting rid of \remove would
>> be a much more worthwhile target than junking \consists , and
>> \unconsists or something of similar awkwardness would be a lot less
>> problematic as a newcomer than something as generic as \add .
>>
>
> Quite the contrary. This is helping to elucidate what's actually going
> on, and I suspect a more descriptive terminology may result.

The less descriptive terminology has the advantage that it does not come
as preloaded with precise but incorrect preconceptions.

So the tradeoff is a really fuzzy one.

> Based on Urs' comment, if it is more like registering a callback, how
> about \register and \unregister?

The "callback" is what is called a "listener".  A translator is a whole
collection of listeners as well as internal state and logic.  That
doesn't mean "register" is incorrect but we also register possible child
context types.  So it's again more a case of a really fuzzy tradeoff.

-- 
David Kastrup

___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user


Re: \consists terminology (was: Advice on naming and structuring scholarLY commands)

2018-06-15 Thread Flaming Hakama by Elaine
On Fri, Jun 15, 2018, 1:42 AM David Kastrup  wrote:

> David Kastrup  writes:
>
> > Flaming Hakama by Elaine  writes:
> >
> >> I think that conveys more clearly what is happening.
> >
> > Not really: that remains something to look up in the documentation.
> >
> > Now I'll readily admit that \consists / \remove does not make for an
> > appealing antonym pair.  I'd be leary after all this time of turning a
> > common word like "add" into a reserved word even though "remove" is not
> > better in that regard.  But at least it has the advantage of being
> > established.
>
> Some of my argument may be based on some tendency of arguing anything
> out of contrariness.  However, this latter point has been irking me
> quite a bit as opposed to the quirky grammar you complain over.


It's not really a matter of quirky grammar.

It's that the term does not convey the relationship in question.



While
> it would likely do nothing to address your complaint, actually moving to
> \consists / \unconsists would, while doubling down on the unnaturality
> you complain about, make for a better pairing, create a new keyword very
> unlikely to be in previous use and free \remove.
>

So here's a question.

Is \consist only used to express the relationship between contexts and
engravers?

If not, what are the other entities that are related by way of \consist?

Because if it's just used to with respect  to engravers,  you could
consider \addEngraver and \removeEngraver.



> Sorry, this is not going at all in the direction you were aiming for but
> from a purely technical standpoint getting rid of \remove would be a
> much more worthwhile target than junking \consists , and \unconsists or
> something of similar awkwardness would be a lot less problematic as a
> newcomer than something as generic as \add .
>

Quite the contrary. This is helping to elucidate what's actually going on,
and I suspect a more descriptive terminology may result.

Based on Urs' comment, if it is more like registering a callback, how about
\register and \unregister?


Thanks,
___
lilypond-user mailing list
lilypond-user@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-user