IBM Releases Open Source EGL Development Tools
New submitter dd1968 writes "Today IBM announced the release of a new set of Open Source development tools based on their EGL programming language. The announcement describes the tools as being built from the ground up on an 'open, extensible compiler and generator framework.' The one-language approach places an abstraction layer between the developer and target languages, frameworks, and runtime platforms."
Not that EGL, nothing to see here, move along.
I'll have to check this software lineup in more detail and see if I have competition for my code manufacturing approach. I use expert-systems techniques to "compile" an enhanced ERD/object model that is not based on UML into the object-relational-mapping code (currently focusing on Java, though I did do an earlier variant with C# as well.)
But I'm not trying to prove a be-all solution with my work, I'm just trying to automate the grunt work and leave the business logic and user interfacing up to skilled developers.
Check out http://msscodefactory.sourceforge.net/ if you're curious. I'm debugging the latest version of the PostgreSQL DbIO code right now, and should have that done by Monday. After that I can start doing the "forks" of the PostgreSQL DbIOs for other databases.
I do not fail; I succeed at finding out what does not work.
Would it really be that hard to put a brief summary of what EGL is in the summary?
http://en.wikipedia.org/wiki/EGL_(programming_language)
EGL (Enterprise Generation Language) is a high level, modern business oriented programming language, designed by IBM to be platform independent. EGL is similar in syntax to other common languages so it can be learned by application developers with similar previous programming background. EGL application development abstractions shield programmers from the technical interfaces of systems and middleware allowing them to focus on building business functionality. EGL applications and services are written, tested and debugged at the EGL source level, and once they are satisfactorily functionally tested they can be compiled into COBOL, Java, or JavaScript code to support deployment of business applications that can run in any of the following environments:
Enterprise/Systems: Java, C#, C++, C
Web: the above + PHP/Ruby/Javascript
Scripting: the above + Python
Why do we need another language? From a cursory look over EGL it does not appear to offer anything these don't.
AccountKiller
They've taken a completely different approach to code production than I do, but it still seems pretty powerful. I think most of what they've accomplished is a clean, elegant variation on good old C pre-processor macros, but restricted so it's a lot harder to hang yourself when writing such code expansions.
It seems to borrow a fair bit from the concept of annotations and UML stereotyping for it's expansion arguments, rather than inspecting a business application model for that information.
It's definitely competition for the grunt code market, but I think my approach requires less work on the part of business modellers, while IBM's approach is probably more comfortable for coders than modellers.
Either way, I'm going to have to hurry up with coding a GUI for this beast so people can use it without groking raw XML.
I do not fail; I succeed at finding out what does not work.
This is awful, it like the worst of java with the "best" of cobol and a bit of peoplecode.....
Jehovah be praised, Oracle was not selected
IBM has outdone themselves! They managed to create a language that combines the worst parts of Java, C aaaaand COBOL!
". I use expert-systems techniques to "compile" an enhanced ERD/object model that is not based on UML into the object-relational-mapping code (currently focusing on Java, though I did do an earlier variant with C#"
my 'software lineup' is called "text editor + python".
i use my 'software lineup' to 'write' things called 'programs' than 'run' on 'computers'.
I just read through your whole site, but I have no idea what MSS Code Factory is, what problems it solves, what it would do for me or why I would want it. I get that it generates code from a model using a bunch of rules, much faster than a human could type it - but that is rarely the critical problem in writing code.
Now, I've worked with various code generators and high level modelling tools for decades, and none of them have been worth the effort so far. The effort involved in learning the system, working around the inevitable bugs in it (usually involving having to keep patching the output again and again as the model evolves), and interfacing with the bits the model can't handle just make them an exercise in frustration. It's a bit like the old regular expression joke.
I'm not saying yours is the same; for all I know it's totally awesome and doesn't suffer from the same problems as all the other ones I've had to deal with - but you are so into your own project that you've forgotten how to explain why anyone else should care.
Take a small step back, put yourself in our shoes, and tell us why we need it.
It's yet another 4GL and they're nothing new. Most programmers here know about languages that are 3GL (Python, Java, C, C#, Clojure, Lisp, whatever, they're all 3GLs).
I started working using 2GL: manually entering opcode into the machine but I digress.
4GLs exists since a long time. This "EGL" is just a new enterprise (read bloated, inneficient and solving the wrong problems) 4GL. IBM here is creating a new language to bill more $IBM-consulting/hours.
Don't feel threatened: it will be used exactly the same way other 4GLs are.
Free 128 Petabyte RAM extension sidekick with striking 'Eclipse' logo on it!
regular expression joke?
-- no sig today
If it'll be used exactly the same as other 4th generation languages, then be threatened: SQL is 4th gen...
I've read about EGL in the past and its the RichUI stuff that makes it interesting to me. With all the JS frameworks to make mobile and web 2.0 look decent or native maybe this gives me some abstraction to all that noise. IBM gave me eclipse (which i love), EGL has been around for awhile. Ill try it out...