I read this criticism about D on Reddit and it claims that you cannot use strings in mixins. Can you please elaborate about this and the reason behind it?

QUOTE:
Look at strings: they are defined as immutable(char []). "immutable" as in "you could put it in ROM", ... CTFE can't see strings correctly (can't be determined at compile time). So rather than fix the compiler so that strings can be used in mixins in the way that people expect it to work even if that means making them something other than immutable(char []), they decided to start using enums where strings actually go. Seriously: take the same code and replace 'string "foo"' with 'enum "foo"' and it starts to work!
END QUOTE

Reply via email to