Restrictions

 

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.