Laurel Language Designer Guide

10.4. Global variables🔗

Laurel will allow specifying mutable global variables. Laurel procedures will get an extra set of global input and output parameters, but these parameters may be left out causing them to be inferred from the procedure body. Global parameters never have to be passed and they are not part of the returned parameters since they're already accessible by the caller. The global input and output parameters of a caller need to be a superset of those of its callees. Global variables will be used to simplify the heap encoding pass.