1. A computer-implemented method for compiling ASL (ACPI Source Language) code into AML (ACPI machine language) code, comprising: accessing an ASL program; executing a preprocessor to process the ASL program and to insert support for at least one non-native programming construct; and processing the ASL program using an ASL compiler to compile the ASL program into a resulting AML program.