Clay language
bearophile
bearophileHUGS at lycos.com
Mon Dec 27 13:48:15 PST 2010
Walter:
>>> Additional optimizations should not be prevented, however.
> I.e. the same situation as today.
It's a different situation. See this part:
> It should be possible to specify
> that one or more of these optimizations is required, and have the compiler
> raise an error when they cannot be applied for some reason.<
The idea is to allow the code (I presume with the help of some annotations) to require certain optimizations (some are listed here, and they are more complex than replacing a*4 with a<<2:https://github.com/jckarter/clay/wiki/Guaranteed-optimizations ), if the compiler doesn't perform a specific optimization (that I presume an annotation asks for), a compilation error is raised, and the programmer is forced to change the code, removing the annotation or doing something else. This also means that a conforming Clay compiler must perform a certain number of not simple optimizations (further optimizations are accepted. So the point is for a specific piece of code to have a common level of optimization).
I don't know if all this is possible (this meta-feature is in the wish list of Clay), but if it's doable then it sounds like a very good thing to add to D3.
Bye,
bearophile
More information about the Digitalmars-d
mailing list