2 ms·
> But OO polymorphism is pretty unique It's not. Julia uses multiple dispatch so that you can use the same * operator on integers, floats, complex numbers, qu
by dnautics 6y ago
> But OO polymorphism is pretty unique
It's not. Julia uses multiple dispatch so that you can use the same * operator on integers, floats, complex numbers, quaternions, matrices, matrices of quaternions, galois field elements, and then it's sophisticated enough that if you implement a new type with +, -, /, etc. you can get matrix solving from the standard library for free. So you just implement + - * / on the GF(256) and you can do reed-solomon erasure repair, hell, in quite optimized code trivially without rewriting LU decomposition.
Other FPs have solved the polymorphism question in their own ways as well (protocols are a common scheme).