Overview
The backend does not perform any checks whatsoever. If any type mismatch/error happens on the backend layer, it will crash and abort the whole compilation process, which is why all possible errors should be caught by the frontend.
ScratchIR is also lexically scoped and supports control flow structures, since it's not actually compiling to assembly and can make use of Scratch's blocks.
Unlike ScratchScript, all scopes start with some control flow keyword (i.e. while
, repeat
, on
) and end with end
. Also, binary expressions start with the operator and are then followed by the operands (i.e. + 1 2
is the same as 1 + 2
).
Last modified: 02 мая 2024