Software Engineering in Swift, Go and Julia Compared

How do class extensions, duck typing and multiple dispatch compare when extending and reusing existing code?

Object-oriented programming is one way to help you organize large programs, but it is not the only approach. Here I compare Swift, Go and Julia in how they tackle reuse of code. Swift takes the OOP approach and supercharges it with interface and class extensions. Go tries to rethink this whole thing by bringing Duck typing into a statically typed language…