On Fri, 11 Oct 2002, Dan Sugalski wrote: : I think that, for me at least, it'll be close enough to C to be : really confusing. (I already have the problem of leaving parens off : of my function calls when I write XS code...) There's a certain : appeal to not having to swap in almost-but-not-quite-the-same sets of : punctuations when moving from language to language.
And now for something completely not quite different... bits($x & $y) bits($x | $y) That is, bits() could just be a function that takes a superposition and interprets it as bitops, which makes an odd kind of sense. Or we could fix the "if this number was never used as a string" problem by differentiating integer ops from string ops: intbits($x & $y) intbits($x | $y) strbits($x & $y) strbits($x | $y) One could maybe shrink that down to int($x & $y) int($x | $y) str($x & $y) str($x | $y) Except that's not really much different than: +($x & $y) +($x | $y) _($x & $y) _($x | $y) And that would conflict with Damian's current notions of how superpositions behave in numeric or string context. Still, you can see how bits(1|2|4|8) could be made to work even if it really meant bits(any(1,2,4,8)) Larry, still thinking about a language vaguely resembling Perl 5. :-)