Issue #8437 has been updated by phluid61 (Matthew Kerwin).


=begin
eike.rb (Eike Dierks) wrote:
 > I'd believe the math operator plane of unicode should be removed
 > from the allowable names of identifiers,
 > but should instead be reserved for operators in the parser, like +
 > nowdays is.

Neither for nor against this idea at the moment, but which "math operator plane" do you mean?  A quick read on wikipedia (((<link|URL:http://en.wikipedia.org/wiki/Mathematical_operators_and_symbols_in_Unicode>))) lists the following potential Unicode 6 blocks:

* Mathematical Operators (U+2200???U+22FF) ??? ((<PDF|URL:http://www.unicode.org/charts/PDF/U2200.pdf>))
* Miscellaneous Mathematical Symbols-A (U+27C0???U+27EF) ??? ((<PDF|URL:http://www.unicode.org/charts/PDF/U27C0.pdf>))
* Miscellaneous Mathematical Symbols-B (U+2980???U+29FF)  ??? ((<PDF|URL:http://www.unicode.org/charts/PDF/U2980.pdf>))
* Supplemental Mathematical Operators (U+2A00???U+2AFF) ??? ((<PDF|URL:http://www.unicode.org/charts/PDF/U2A00.pdf>))
* Letterlike Symbols (U+2100???U+214F) ??? ((<PDF|URL:http://www.unicode.org/charts/PDF/U2100.pdf>)) ((*I'd leave this block for identifiers, personally*))
* Miscellaneous Technical (U+2308???U+230B) ??? ((<PDF|URL:http://www.unicode.org/charts/PDF/U2300.pdf>))
* Geometric Shapes (U+25A0???U+25FF) ??? ((<PDF|URL:http://www.unicode.org/charts/PDF/U25A0.pdf>))
* Miscellaneous Symbols and Arrows (U+2B30???U+2B4C) ??? ((<PDF|URL:http://www.unicode.org/charts/PDF/U2B00.pdf>))
* Mathematical Alphanumeric Symbols (1D400???1D7FF) ??? ((<PDF|URL:http://www.unicode.org/charts/PDF/U1D400.pdf>)) ((*Again, probably identifiers*))
=end
----------------------------------------
Feature #8437: custom operators, unicode
https://bugs.ruby-lang.org/issues/8437#change-39493

Author: eike.rb (Eike Dierks)
Status: Open
Priority: Low
Assignee: 
Category: 
Target version: Next Major


The ruby language does currently one support a predefined set of operators.
It would be nice to add custom operators.
A lot of people ask about the elvis operator aka (?:) to cope with nil, aka rails try()

This probably is a problem with the parser at first,
because introducing new operators makes parsing a lot more complicated.

Maybe we could allow symbols from the unicode space
to be used as new operators?
That would be compatible with all before code written in ascii.

So we could allow all the symbols from the unicode Math operators plane
to be available as operators in Ruby.

While few of you might have tried that,
Unicode is fully available for naming identifiers.

We should also extend the set of operators to the unicode space.

While we are still not used to it now,
to have some unicode characters in our codes,
could really add to the expressivness.


So as of today, you can already name your variable like
delta_t or ??t

Or if you're working with angles,
you might call your variables α or ??
This is completely legal in Ruby.


I'm asking for:
this_set ??? other_set

or maybe we could even do this for prefix like:
???2

I'd believe the math operator plane of unicode should be removed
from the allowable names of identifiers,
but should instead be reserved for operators in the parser, like + nowdays is.





















-- 
http://bugs.ruby-lang.org/