This page shows a list of restrictions of the Green compiler.
Methods with variable number of parameters were not implemented.
Shells and Dynamic Extensions were not implemented in this compiler. Shells have been implemented in an old compiler which generated code in C. The current compiler generates Java code which makes it impossible to implement shells. This concept demands an object change its class at runtime.
Arrays must have only one dimension.
Use of parameterized classes
with function "type" as in
var x : type(Stack(integer));
is not allowed.
The Green manual describes the
Introspective Reflection Library (IRL) with all its
classes. Some methods return types as "DS.Iter(ClassMethodInfo)" in the manual.
In the IRL we implemented, they return "array(ClassMethodInfo)[]".
Constants cannot be a constant
expression. Then
const max = 5 + 3;
is illegal;
deepClone, deepCopy, ... were not implemented.
The IRL classes LiveLocalVariableInfo, LiveParameterInfo, MethodCallInfo, and CodeAnnotation were not implemented.
They may be other small details that were not implemented, but these are really small.
Return to the Green Compiler Manual.