9 ms·
>language features will for sure limit the optimizations a compiler/interpreter can do For example: Common Lisp has a full numerical tower, meaning it will au
by the-alt-one 5y ago
>language features will for sure limit the optimizations a compiler/interpreter can do
For example:
Common Lisp has a full numerical tower, meaning it will automatically convert fixed size numbers into bignums (and more cool stuff). This means that an addition has to branch if it can't prove that a result won't overflow from fixnum to bignum. Yes, C also needs to use bignums, but they're on an opt-in basis. In CL they're opt-out.
There are more examples of this, often related to the dynamism of your language. The more introspection a language is capable of, the less a compiler designer can do to cheat and optimize your program.