@John I know that "*" means no commutative, but I see no reason "+" has a meaning of commutative.
On Thu, Jul 3, 2014 at 10:53 PM, Stefan Karpinski <ste...@karpinski.org> wrote: > That's even worse. > > > On Thu, Jul 3, 2014 at 10:52 AM, yi lu <zhiwudazhanjiang...@gmail.com> > wrote: > >> I will vote for "+", although I learn mathematics. Maybe that is why I am >> not a mathematician. >> >> Yi >> >> >> On Thu, Jul 3, 2014 at 10:45 PM, Stefan Karpinski <ste...@karpinski.org> >> wrote: >> >>> On Thu, Jul 3, 2014 at 9:42 AM, Ivar Nesje <iva...@gmail.com> wrote: >>> >>>> We should really create a simple system where you can get those hints >>>> printed in the REPL, without defining more methods. >>> >>> >>> Yes, I think we should really pursue this avenue. >>> >>> For what it's worth - and perhaps something since I'm the original >>> perpetrator of the str*str concatenation syntax - I've come to regret this >>> operator choice. My reasoning at this point is that we want our operators >>> to have fairly "pure" meanings. I chose str*str because concatenation can >>> be viewed as a kind of multiplication in the ring of string patterns >>> (alternation in the regex sense is the addition operation, the empty string >>> is the unit and the non-matching pattern is the zero). However, many >>> operations can be viewed as a form of multiplication. In the max-plus >>> algebra <http://en.wikipedia.org/wiki/Max-plus_algebra>, for example, >>> addition is the multiplication operator. So, at this point I think we >>> should stick to very pure classical meanings for operators in Base - the >>> Base.* function should be just addition of numbers in the classical sense, >>> not the broader sense of addition in any conceivable ring. >>> >>> >> >