ELENA is a general-purpose language with late binding. It is multi-paradigm, combining features of functional and object-oriented programming. Rich set of tools are provided to deal with message dispatching : multi-methods, message qualifying, generic message handlers, run-time interfaces
If there is only one argument -> do not create frame, just replace the old argument with new one after typecasting.
A;
B
{
A cast() = new A();
}
singleton C
{
foo(A a)
{
console.writeLine("bar")
}
}
public program()
{
var b := new B();
var a := new A();
C.foo(a);
C.foo(b);
}
If there is only one argument -> do not create frame, just replace the old argument with new one after typecasting.
The generated code can be simplified: