When optimized correctly, the intermediate
sys:int32
objects are not constructed.
In unoptimized code, sequences of operations like
(
sys:int32+ (
sys:int32- a b) (sys:int32- c d))
will generate intermediate
sys:int32
objects for the results of the subtraction, but the compiler can optimize these away because it knows that the function
sys:int32+
consumes
sys:int32
objects.