|
|
|
|
|
by ristos
633 days ago
|
|
The monomorphic vs polymorphic argument is an interesting one. I think that you could explicitly get unboxing if you used something like CLOS style multimethods to dispatch based on the type, so that (add <float> <float>) would dispatch to the function that uses fadd on those operands. I never realized that you could use this kind functionality, multimethods or free monad interpreters, to write in-code optimizations that are conveniently abstracted away in actual code usage. Edit: nevermind, that's also dynamic dispatch. You'd have to add static dispatch via macros or some external transpilation step. |
|