4 ms·
This isn’t really true. You can do: let ( + ) a b = ... Just fine
by dean177 7y ago
This isn’t really true.
You can do: let ( + ) a b = ...
Just fine
- thedufer 7y agoThat's a custom operator definition. Operator overloading is when the same operator can be used on different types (for example, if `+` worked on both floats and ints, instead of explicitly having to reach for the correct `+` like you do in OCaml).
- ernst_klim 7y agoWhich can be done, since OCaml has objects let (+) a b = a#add b
- thedufer 7y agoYeah, I guess you can get a limited sort of operator overloading by building it out of row polymorphism. That doesn't solve the most common use-case of operator overloading, though, which is allowing the same operators to work on floats and ints, because it only works on objects.