Re: EGL demo afterthoughts (long)
Posted in 2004
Fernando Fernandez wrote: > Hi all! > > I've just been watching an EGL demo by Tom Chastain, from IBM Labs, in > an event called Infobahn, in Lisbon. > > I must confess I'm a bit disappointed. > Don't be. You have to learn to lower your expectations to the level where if they can convert some 4GL, its a good thing. You can not create a language that is all things to all people. > We've worked with 4GL since the 80's and we work with Java since late > 90's. We've been able to keep away from major detours called "4GL for > Windows", "New Era" (this one fooled us for some time), 4J's, Querix, > etc. We were expecting the "real thing"... > Eeew New Era. Now that brings back bad memories. It was a joke written by people who didn't understand OO languages. New Era had two serious killer flaws... No object delegation and way too many subclasses when they created what little of a library that they had. It was written by individuals who didn't know jack about OO. > And the real thing should have had, for starters: > > 1. Full (I mean *full*) 4GL compatibility (syntax, file format, > command line) > 2. Object-orientation > 3. Java integration (like with C in older versions) > 4. Windows & web browser execution > Full OO and Full 4GL compatibility? Aint gonna happen two different things. You have two different paradigms. Of course one of the characteristics of OO is late binding. 4GL compatibility would mean early binding because you have to retain your C compatibililty. Remember you said you wanted *FULL* compatibility with 4GL. ;-) And now you want "Web Browser capability". What exactly do you mean. You would want a JSP to call an "EGL" app? Note I put "EGL" in quotes because your request is for a *new* and *improved* egl... But getting back to the "web" capability. Web is a thin client. EGL/JAVA are a thicker client. JSPs are meant for a thin app. (Ok a thick page). You don't want to use a JSP for an App unless you're using it to download and launch a java app. > Of course, it would be nice to have also: > > * an IDE (eclipse is a good choice) > * multiple simultaneous connections > * more instructions to send mail, read/write files, parse XML, etc. > Multiple connections tend to be more of an implementation issue rather than a language issue. > I sincerely don't understand why this has been so difficult. Let's see: > > 1. Rewriting the compiler it's not so difficult. Several companies > have done it, and there is even an open source project that has > done it too. Doing it in Java wouldn't be harder Uhm, I suggest you try writing a cross compliler. Especially when you're switching from a langugage that is procedureal and you want to make it OO and then you have the issues of early bindig vs late binding. C vs Java functionality. System constraints on multiple platforms, etc ... What makes it theoretical is that you do have a BNF of 4GL available. But its a non trivial task. > 2. Object orientation has been already done in New Era , keeping > (incomplete) compatibility with the original 4GL. Bzzzt New Era was a joke and a poor implementation. > 3. Java integration comes easy after the first two > 4. Running in Windows has already been done in "4GL for Windows" (are > the 'O' guys smarter?) > [SNIP] I suggest you put your money where your mouth is. If you think its trivial, go for it. Its the details that will kill you. ;-) I don't mean to insult you or start a flame war. However, you're asking for a silver bullet and none exist. If you're going to be converting a 4GL app to an OO paradigm, you're better off doing a rewrite. Yes its more money, however in most cases your business requirements have changed and you would be better off with a clean implementation rather than a cobbled hack of translated code. But hey! What do I know? ;-)