On Sat, Jan 31, 2009 at 01:21:57PM -0800, Mark Lentczner wrote:
> Two exceptions to these lists:
>       sym<,> gets :value and :iso
>       sym<%> gets :bool as well

Also note that => is :value :iso despite being lumped with assignment.
I consider => to be equivalent to . in Lisp, so [=>] is essentially
just an S-expr in disguise.

> I'm not so happy with these names, :boolish? :simple? I just don't  
> know...

I think :iso is fine, unless someone wants to weigh in with something
from group theory.

As for :bool, that is a bit more problematic if it can be construed as
a strict type check.  We want to express the concept of something that
can be used as a boolean.  :truthy maybe?  :iffy?

> This does explicitly remove a few classes of operator from being used in 
> hyper, reverse and cross: Such things as the sequencer ops, assignment, 
> and method call.  Testing with the current form of STD.pm (r25127), not 
> all of those things parse anyway.

As long as we can make explicit exceptions, that seems okay.  And we
will have exceptions as long as we lump disimilar operators together
in the same precedence level like item assignment and =>.

Seems like unaries should also be labeled :iso if they return the same
type, even though we don't have a use for it yet.

> I almost have a patch against STD.pm ready to go that implements this  
> and passes teststd...  What do you think? Post it here? Check it in?   
> This is a goofy idea, drop it?

Seems fine, and I think I like the simplicity; go ahead and check it
in unless someone can spot a difficulty.  We can always fix anything
that goes haywire, or split one of the categories again if necessary.

Larry

Reply via email to