> >     %a ^:union[op] %b
> >
> >     %a :foo[op]:bar %b
> 
> I think that any operators over 10 characters should
> be banished, and replaced with functions.

I'd agree with that. In fact probably anything over 4,
and even 4 is seriously pushing it.

I'll clarify that I am talking here about using adverbs.

>From A3 (about the colon):

    Hence, this operator modifies a preceding operator
    adverbially. ... It can be used to supply a ``step'' to a
    range operator, for instance.

I would expect the length of these adverbs to fall in a
range somewhat the same as properties. So a word
like 'union' is reasonable, and even 'intersection' too.

Ignoring hyperoperators, one might use an adverb thus:

    $a / $b : dbz_Inf

to have a divide by zero be treated as Infinity.

I can see scope for a bunch of adverbs that control how
a particular hyperoperation works. Thus, perhaps:

    @a ^[/] @b : short

to stop iteration when the shortest of two arrays is used up.

But this assumes that the adverb applies to the ^[]
hyperop, not the / op.

Perhaps this is resolved thus:

    @a ^[/ : dbz_Inf] @b : short

But I also suspect it would be good to be able to
associate distinct adverbs with the lhs and rhs of
a binary operation.

So I thought perhaps one could go down the path of 

    @a ^ :step(2) [/ : dbz_Inf] :step(3) @b : short

Hmm. Perhaps hyperop adverbs are preceded with
a ^ and one gets instead:

    @a ^[/] @b : dbz_Inf, ^short, ^step(2,3)

--
ralph

Reply via email to