[Prev][Next][Index][Thread]

operator embellishment (was re: Update on MINSE)



I wrote:
>      Is operator-operator binding something that will ever
>      need to be carried to an indefinitely deep level?

Bruce Smith wrote:
> 
> I think you're talking about what we've been calling "operator
> embellishment".

Yes.

My experience is limited in this respect -- i.e. i can't
remember clearly any cases where i've seen operators
embellished in this way (though i can imagine some).

Can anyone provide any "real" examples of where this is
used, and more significantly what it means?  Such examples
would be really helpful in trying to see what is feasible
and what is needed.

I took this into consideration with the approach so far
being that an embellished operator -- for example, a
subscripted "plus" sign -- is just a compound with three
sub-elements and a specific meaning.

This interpretation allows embellishing to about the same
level as Bruce described (the embellishing operator itself
cannot be embellished, but the embellishment may contain
other expressions possibly including embellished operators):

> However, it might be necessary for one of the arguments to an embellisher
> (the operator or the e.g. subscript) to itself be, or contain,
> an embellished operator. This may be rarely desired, but it is allowed
> in our proposal, and could be expressed, for example, by
> 
>         a {+_2}_3 b
> for
>         a +   b
>            2
>             3

As for this first example, i am a little confused as to its
possible meaning.  Here, is the "plus" operator subscripted
twice, or is it embellished by the entity "2, subscript 3"
which means something else?  (The answer to this question
isn't all that important, but it affects how i would represent
the same thing using MINSE.)

> or by
> 
>         a +_{b +_2 c} d
> for
>         a +       d
>            b +  c
>               2
> 
> [which are admittedly extremely contrived examples].

So, for example, suppose that the subscripted "plus" operator were
supposed to mean addition modulo the subscript, and represented
with a compound named "msum" (for "modulo sum").  Then we could
write the second example as

    'msum(a,'msum(b,2,c),d)

Using current rendering schema, the style definition for "msum"
might look something like

    xf(6, A) + " @sub(+," + xf(99, B) + ") " + xf(6, C)

that is, the first argument rendered, followed by a plus sign
subscripted by the second argument, and then the third argument.

"msum" would be then given an appropriate description in a
context file, providing a well-defined meaning.


Ping


References: