Interpreter constructor
Interpreter()
Creates a new Interpreter instance.
Initializes the global environment and defines built-in functions like print and range.
Implementation
Interpreter() {
_environment = globals; // Start in global scope
// register base class for Exceptions
_registerBuiltinExceptionClasses();
// Register all built-in functions
_registerBuiltin("print", NativeFunction(_printBuiltin));
_registerBuiltin("range", NativeFunction(_rangeBuiltin));
_registerBuiltin("len", NativeFunction(_lenBuiltin));
_registerBuiltin("str", NativeFunction(_strBuiltin));
_registerBuiltin("int", NativeFunction(_intBuiltin));
_registerBuiltin("float", NativeFunction(_floatBuiltin));
_registerBuiltin("bool", NativeFunction(_boolBuiltin));
_registerBuiltin("type", NativeFunction(_typeBuiltin));
_registerBuiltin("abs", NativeFunction(_absBuiltin));
_registerBuiltin("pow", NativeFunction(_powBuiltin));
_registerBuiltin("hex", NativeFunction(_hexBuiltin));
_registerBuiltin("oct", NativeFunction(_octBuiltin));
_registerBuiltin("bin", NativeFunction(_binBuiltin));
//_registerBuiltin("input", NativeFunction(_inputBuiltin));
_registerBuiltin("list", NativeFunction(_listBuiltin));
_registerBuiltin("dict", NativeFunction(_dictBuiltin));
_registerBuiltin("set", NativeFunction(_setBuiltin));
_registerBuiltin("tuple", NativeFunction(_tupleBuiltin));
_registerBuiltin("round", NativeFunction(_roundBuiltin));
_registerBuiltin("min", NativeFunction(_minBuiltin));
_registerBuiltin("max", NativeFunction(_maxBuiltin));
_registerBuiltin("sum", NativeFunction(_sumBuiltin));
_registerBuiltin("repr", NativeFunction(_reprBuiltin));
_registerBuiltin("ord", NativeFunction(_ordBuiltin));
_registerBuiltin("chr", NativeFunction(_chrBuiltin));
_registerBuiltin("isinstance", NativeFunction(_isinstanceBuiltin));
_registerBuiltin("open", NativeFunction(_openBuiltin));
}