|
|
| 5GL:Property, Method, Event and Action? |
Many years ago some people have a vision that "everyone can use computer". At that time not many people believed that. Now that vision is a reality.
Our vision is that "everyone can do computer programming". We believe that codeless and visual programming is the way to go.
Object-Oriented Programming is the first step towards making it possible for developers to use objects to represent programming elements using properties and methods. When events were added to classes it enabled rapid application development, especially the visual development of graphic user interface. But event handling is still expressed via texture programming languages.
The idea of Limnor codeless programming is to add "Actions" to classes. Adding actions to classes eliminates the need of texture programming languages, making generic purpose codeless and visual programming possible without sacrificing programming power, because it is not a domain specific approach.
A class in Object-Oriented Programming is defined by properties, methods and events. Now it is enhanced by actions. Computer software is created by manipulating programming entities graphically, creating actions and assigning actions to events.
In the history one generation of computer languages do not replace previous generations of computer languages.
Higher level computer languages (C, C++, Java, C#, VB, etc.) made lower level computer languages (Assembly, Machine languages, etc.) mostly used by compilers and machines only, not by human.
Visual codeless programming systems may make texture programming languages, high level or low level, mostly used by compilers and machines only. Limnor Studio is such an effort. Limnor Studio compiler compiles visual representations into C# language.
Being visual and codeless, Limnor Studio is a 5th generation language (programming system).
People expect 5GL to be easy to use, to be visual. There are many excellent visual programming languages and systems available now. One issue is that while each visual programming innovation has its unique advantages in some aspects it also has its limitations in other aspects. If different visual programming systems may work together then developers may take advantages of different systems and avoid the limitations. 5GL may solve the problem by being an abstraction layer for visual programming.
Following criteria may define an abstraction layer for visual programming:
All visual programming systems can use the abstraction layer to represent their programming results.
Given a programming task, if visual programming system A and visual programming system B may be used to accomplish all or parts of the task then A and B may use the same representation of the abstraction layer for the parts of the task they both can accomplish.
The first criterion requires the layer to have a wide coverage. Most programming languages, such as C/C++, Java, C#, VB, etc., meet this criterion.
The first criterion does not restrict each visual programming system to have its own programming elements for unique visual representations.
The second criterion requires the layer to be an abstraction for visual programming and makes it possible for different visual programming systems to work together.
It can be deduced that when designing a 5GL to meet the criteria, such a 5GL should allow decorative expansions by individual visual programming systems. When the 5GL compiles/interprets a program, it ignores those decorative expansions.
|
| Comments |
|
No Comments have been Posted.
|
| Post Comment |
|
Please Login to Post a Comment.
|
| Ratings |
|
Rating is available to Members only.
Please login or register to vote.
No Ratings have been Posted.
|
|
| Login |
Not a member yet? Click here to register.
Forgotten your password? Request a new one here.
|
|