SAHARBAUGH@ROO.FIT.EDU (06/28/91)
Is NYU Ada/ED defined to be an "Ada Interpreter". The version I I used from 1983 to 1987 required a complete processing of the source code before it would then begin to interpret the intermediate code it had produced. In about 1984 Robert Dewar said to me "You really don't expect to ever be able to interpret Ada code?" Then a few years later the people at Westinghouse said they would soon have the ability to interpret the complete Ada language. Is their effort the ACE mentioned in the posting? Is ACE an interpreter by my definition? ( For a demonstration of my definition of an interpreter go to your PC and type BASIC). I hope that a good quality Ada interpreter is available. I have always regretted that I am not skilled enough to write one. You see, I am a systems engineer and I have really believed in programmable systems ever since I met my first one in the early 60's. The whole idea of edit, compile, link, download and run is, to me, an expedient that we must outgrow if computers are to be truly useful. As an example scenario, for tutorial purposes only, imagine a manned deep space exploration with all on-board software in Ada. Imagine a need to reprogram the software. The crew must be have all the baggage of the compiler etc. plus the skills to use them or, if the computers are truly Ada machines, the crew can change the Ada statements and immediately the computer changes its behavior. Since I learned of ACE I thought that this was a very good thing to do. The idea that the machine understands my language, Ada, would be very good. If I can type in an Ada statement as a command to ACE is there any reason I can't type in my whole Ada program and have ACE interpret it? Efficiency is usually cited as the downside of interpreters and thats the show stopper for the systems built by people who read this BB. BUT there are many applications for computers that afford to be "inefficient". If the machine will run say 100 Ada statements per second I can use that machine to control many industrial processes and I don't need to drive 50 miles back to my office to recompile the Ada to change a plus sign to a minus sign.(Thats when you learn how to patch object code). I'm sure you see the same situation on a ship at sea, etc. So, in conclusion, I would like to know if ACE is a true Ada interpreter and some measure of its speed performance. Thanks. sam harbaugh saharbaugh@ROO.FIT.EDU -----------
mfeldman@seas.gwu.edu (Michael Feldman) (06/29/91)
In article <9106281209.AA08681@ajpo.sei.cmu.edu> SAHARBAUGH@ROO.FIT.EDU writes: >Is NYU Ada/ED defined to be an "Ada Interpreter". The version >I I used from 1983 to 1987 required a complete processing of the >source code before it would then begin to interpret the >intermediate code it had produced. >In about 1984 Robert Dewar said to me "You really don't expect >to ever be able to interpret Ada code?" Ada/Ed is loosely called an interpreter. Actually, it's known officially as "executable semantic model." The Ada source is translated into an intermediate form, then the intermediate form is interpreted. Whether you call the first pass (source->IF) a "compiler" is splitting hairs. It is certainly a translator. In a sense, Ada/Ed is a front end without the back end, since most compilers produce some sort of IF (attributed trees or suchlike). Ada/Ed just stops there. >Then a few years later the people at Westinghouse said they >would soon have the ability to interpret the complete Ada >language. Is their effort the ACE mentioned in the posting? >Is ACE an interpreter by my definition? ( For a demonstration >of my definition of an interpreter go to your PC and type BASIC). The version of ACE that I copied from STARS and built on our Sun indeed seems to be an interpreter. But at least this version supports a sort of "Pascal subset" of Ada. It seems to be designed less as a full interpreter for Ada than the sort of portable shell interpreter we were all going to have as a part of the magical APSE. Are my observations correct here? I haven't tested ACE extensively yet, and maybe I'm underestimating its capability. If it's really intended as an Ada interpreter for a really signficant part of the language (meaning full data structures, generics, packages, maybe even tasking), is there any schedule for its completion, or is it in the "real soon now" category? My bottom line: nice as far as it goes, lets you write "shell scripts" using Ada procedure syntax, etc. But doesn't go nearly far enough. Or have I missed a key bit of the documentation? Mike