On 06/08/2013 06:39 PM, Walter Bright wrote: > So they don't need to be classes at all. It's not about embodying > functionality > vs data. It's about having a value type vs a polymorphic ref type.
I've had quite good experiences using template mixins to generate struct polymorphism (in practice it's more of a policy class way of operating). The main problem is that this tends to slow down compilation quite a bit, though less so with DMD than with the other 2 compilers.