I've recently experimented with a macro that solves a related problem (although for different reasons). Basically it allows you to solve the same problems you could solve using polymorphism, but by easing the burden of composition. It might be helpful here too.
https://github.com/tlycken/IJulia-Notebooks/blob/master/Using%20macros%20to%20implement%20value-objects%20and%20other%20simple%20wrappers%20in%20Julia.ipynb // T
