ELENA Programming Language Home Page
Alex Rakov, Feb 2012
ELENA is a general-purpose, object-oriented, polymorphic language with late binding.
It features multiple dispatching,
context-dependent roles, dynamic inheritance and
group object support.
Programs written in ELENA Language consist of a relatively large number of
"tiny" objects where the level of interactions between objects is comparable
with a level of inner-object calculations. To prevent the system becoming too
complex to deal with the number of possible interactions between objects is
limited. This approach allows eliminate "super" objects which in many cases
make the program design too specialized and hard to modify.
ELENA treats any program as a set of objects (class instances). The program
flow is a process of interaction between objects by sending each other
messages. A message may have attached information (a message parameter).
An object may react on message if it has an appropriate message handler
(a method). If the object reacts on the message it is treaded as successful
otherwise unsuccessful. In its turn the method sends messages to other objects
and so on until the flow reaches the method written by external tools
(meta method). So ELENA may be considered as a framework language defining
rules for object interaction. Usually the object sends chain of messages where
executing of every next message depends on the result of previous one. When one
of messages is failed the chain considered as broken. It's possible to declare
alternative chains which are executed if previous ones are broken.
Every object may be formed up with other objects characterizing its internal
state. They in turn may be formed with others and so on until meta objects
which internal states are considered as raw data.
For the full description look at ELENA Specification
ELENA 1.6.18 is released
Contributors are welcomed
ELENA IDE 1.3.0 received SOFTPEDIA "100% CLEAN" AWARD
ELENA is available from
Sourceforge download page
- This document describes the concept of the group object.
Programming with ELENA
- This document describes general concepts and main features of
ELENA Programming Language.
Getting started. Part 1
- Introduction to ELENA programming.
ELENAVM Script tutorials
Introduction to ELENA Script
Dynamic Programming in ELENA
New Group Types
Add a variable to a class instance at run-time
Currently only Windows-x86(Win32) platform is supported.
Any questions or bug reports may be reported either to one of ELENA forums
or directly to Alex Rakov
You may visit the official blog for the additional information and documentations
Copyright (c) Alex Rakov, 2006-2012