Become a fan of Slashdot on Facebook


Forgot your password?
IBM Java Open Source Programming

IBM Releases Open Source EGL Development Tools 50

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."
This discussion has been archived. No new comments can be posted.

IBM Releases Open Source EGL Development Tools

Comments Filter:
  • Not EGL. (Score:5, Informative)

    by GenP ( 686381 ) on Thursday December 08, 2011 @06:14PM (#38308874)
    Not that EGL [], nothing to see here, move along.
  • by msobkow ( 48369 ) on Thursday December 08, 2011 @06:19PM (#38308918) Homepage Journal

    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 [] 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.

    • by msobkow ( 48369 ) on Thursday December 08, 2011 @06:38PM (#38309144) Homepage Journal

      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.

    • by mattpalmer1086 ( 707360 ) on Thursday December 08, 2011 @07:41PM (#38309788)

      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.

      • regular expression joke?

      • by msobkow ( 48369 )

        In a nutshell, one of the big problems that has always faced cross-platform product development is vendor lock in. I provide an abstraction Object-Relational-Mapping architecture that defines the interface to the database, and then implements each database interface using custom code. So unless you have very specific query needs that have to be hand coded through the BL (Business Logic) layers of the manufactured code, you neither see nor touch actual SQL.

        All strings passed to the database are encoded

        • OK, I can grok that, thanks for taking the time to explain. Understanding what problem is being solved goes a very long way to making the rest of it comprehensible.

          I've been programming about the same amount of time as you, and I can't claim to be much better at explaining my own technologies. :)

  • EGL (Score:5, Informative)

    by hawguy ( 1600213 ) on Thursday December 08, 2011 @06:22PM (#38308958)

    Would it really be that hard to put a brief summary of what EGL is in the summary? []

    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:

  • by Galestar ( 1473827 ) on Thursday December 08, 2011 @06:28PM (#38309034) Homepage
    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.
  • This is awful, it like the worst of java with the "best" of cobol and a bit of peoplecode.....

    • exactly, I never see the point of a 'higher level" language that compiles down to java. Now, if it went to C then we might have a good reason for using it - all the benefits of fast, raw C but created from a simple-to-build language that simplifies many common constructs.

      • Haskell is a more reasonable code generation target - it has a nice optimizing compiler and implements a decent runtime, plus C FFI, plus recognizable errors, plus portability between compilers, without sacrificing features.
  • IBM has outdone themselves! They managed to create a language that combines the worst parts of Java, C aaaaand COBOL!

  • by Anonymous Coward on Thursday December 08, 2011 @07:56PM (#38309914)

    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.

    • by jrumney ( 197329 )

      Don't feel threatened: it will be used exactly the same way other 4GLs are.

      ie. to get data out of obsolete big-iron databases and display it on green screen TN3270 terminals.

    • If it'll be used exactly the same as other 4th generation languages, then be threatened: SQL is 4th gen...
    • Code debates are boring folks. Use what works. We have been using EGL for over 4 years with large enterprise customers and it does a great job of bridging the gap between older technologies (COBOL, RPG, Java, VSAM, 3270, 5250) and the web 2.0 world. It interfaces nicely with Java and Javascript so you can freely decide how much to do in EGL, Java or Javascript depending on your needs.

      Syntax is syntax. Any coder can pick this language and tooling up.

      -- eric

"Call immediately. Time is running out. We both need to do something monstrous before we die." -- Message from Ralph Steadman to Hunter Thompson