This can be done better with traits in Julia, which are more powerful, safer and faster.
See here: https://white.ucc.asn.au/2018/10/03/Dispatch,-Traits-and-Met...
See here: https://white.ucc.asn.au/2018/10/03/Dispatch,-Traits-and-Met...
Maybe in the end they will succeed and will invent a generally superior approach to software development. But for the moment it all feels very experimental and so not a language I'd want to commit to at present if I were starting a major, non-solo project.