* Aeonix Ada 95 @ 1997-03-09 0:00 suburb 1997-03-09 0:00 ` Robert Dewar 0 siblings, 1 reply; 16+ messages in thread From: suburb @ 1997-03-09 0:00 UTC (permalink / raw) I am a software engineer for ITT Federal Services Corporation, at Vandenburg Air Force Base, Calif. USA. I have been assigned the task of choosing an Ada compiler for my software team and am seeking information on the Aeonix Ada 95 compiler. I need it to engineer software for real-time usage on an embedded system with some tough timimg constraints. I am soliciting for information and opinions concerning this compiler. Thank you. Robert Niedermann NiedermR@fsc1.vafb.af.mil (805) 734-8232 x-63668 -------------------==== Posted via Deja News ====----------------------- http://www.dejanews.com/ Search, Read, Post to Usenet ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-09 0:00 Aeonix Ada 95 suburb @ 1997-03-09 0:00 ` Robert Dewar 1997-03-09 0:00 ` Tom Moran 1997-03-14 0:00 ` Aeonix " Chris Morgan 0 siblings, 2 replies; 16+ messages in thread From: Robert Dewar @ 1997-03-09 0:00 UTC (permalink / raw) iRobert Niederman says <<I am a software engineer for ITT Federal Services Corporation, at Vandenburg Air Force Base, Calif. USA. I have been assigned the task of choosing an Ada compiler for my software team and am seeking information on the Aeonix Ada 95 compiler. I need it to engineer software for real-time usage on an embedded system with some tough timimg constraints. I am soliciting for information and opinions concerning this compiler. >> You should also investigate GNAT. One aspect of GNAT that is significant is that it is the only general purpose compiler that passes ALL (100%) of the applicable tests in the real time annex. Check out the validation reports on the IC host to verify this claim. For what system are you looking for a compiler? For information on commercial support for GNAT, send email to sales@gnat.com ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-09 0:00 ` Robert Dewar @ 1997-03-09 0:00 ` Tom Moran 1997-03-09 0:00 ` Dave Wood ` (2 more replies) 1997-03-14 0:00 ` Aeonix " Chris Morgan 1 sibling, 3 replies; 16+ messages in thread From: Tom Moran @ 1997-03-09 0:00 UTC (permalink / raw) >> embedded system with some tough timimg constraints > GNAT ... only general purpose compiler that passes ALL (100%) > of the applicable tests in the real time annex Do all versions of GNAT do all the real time stuff in an embedded system context? The original poster did not specify his target system. ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-09 0:00 ` Tom Moran @ 1997-03-09 0:00 ` Dave Wood 1997-03-10 0:00 ` Robert Dewar 1997-03-10 0:00 ` Robert Dewar 1997-03-11 0:00 ` Robert Dewar 1997-03-17 0:00 ` Robert I. Eachus 2 siblings, 2 replies; 16+ messages in thread From: Dave Wood @ 1997-03-09 0:00 UTC (permalink / raw) Tom Moran wrote: > > >> embedded system with some tough timimg constraints > > GNAT ... only general purpose compiler that passes ALL (100%) > > of the applicable tests in the real time annex > Do all versions of GNAT do all the real time stuff in an embedded > system context? The original poster did not specify his target system. I can't respond to the original poster due to conflict of interest, but we have validated the real-time annex just recently for our first ObjectAda Real-Time compiler (for Intel targets). PowerPC is following shortly. I'm pretty sure others have validated the real-time annex for real-time targets (Green Hills?) GNAT is not validated for *any* real-time targets, is it? -- Dave Wood -- Product Manager, ObjectAda for Windows -- Aonix - "Ada with an Attitude" -- http://www.aonix.com ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-09 0:00 ` Dave Wood @ 1997-03-10 0:00 ` Robert Dewar 1997-03-10 0:00 ` Dave Wood 1997-03-10 0:00 ` Robert Dewar 1 sibling, 1 reply; 16+ messages in thread From: Robert Dewar @ 1997-03-10 0:00 UTC (permalink / raw) Dave Wood wrote <<I can't respond to the original poster due to conflict of interest, but we have validated the real-time annex just recently for our first ObjectAda Real-Time compiler (for Intel targets). PowerPC is following shortly. I'm pretty sure others have validated the real-time annex for real-time targets (Green Hills?)>> Well I don't think there is any conflict of interest here, except in the normal sense of competition! But anyway, I certainly don't want to create incorrect impressions, so let me say exactly what I was talking about. First, there is no such think as "validating the real-time annex", at least not with version 2.0.1 of the ACVC. There is only one overall validation status, and for anything else you have to study the results in detail. The validation simply reports which tests pass, which tests fail, and which tests are inapplicable. There are three reasons for tests being inapplicable: 1. The test is plain wrong in a particular environment. For instance, in one of our upcoming validations, on a cross-target with no I/O, three tests expect Name_Error to be raised when opening a non-existent file, when clearly Use_Error is allowed by the RM. The (perfectly reasonable) resolution here was that these tests should be considered as passing in this environment if Use_Error is raised, since the RM specifically allows for the raising of Use_Error in such a case. 2. The tests is testing for some implementation variation that is not relevant to the current implementation. For example, there are a whole lot of IO tests that carefully insist that *if* you have, as allowed, a very small limit on the range of Count, then you properly raise various exceptions. But in practice most implementations make Count derived from Integer, so these tests are inapplicable and that is a good thing! 3. The test is ruled inapplicable for a given validation as a result of an appeal to RM 1.1.3(6): 6 Contain no variations except those explicitly permitted by this International Standard, or those that are impossible or impractical to avoid given the implementation's execution environment; The impossible or impractical phrase is of course a subjective standard, that is potentially tricky to judge. Two examples from current reported validations are: The AONIX compiler for NT only implements 7 levels of priorites because there are only 7 levels of task priorities provided in NT, so if you are maping priority levels one-to-one, the requirement of 31 levels of priority cannot be met. The Greenhills compiler for VxWorks does not pass the Annex D tests that test for strict conformance with the dispatching model of annex D. That is because VxWorks has subtly "wrong" semantics from the point of view of annex D. Actually I am not quite sure about the Greenhills case, I think these tests may be considered not supported, rather than inapplicable. The line between these two categories is a delicate one, so best to look at the actual test reports in the VSR's to determine exactly which tests pass and which do not. As far as other compilers go, I have not looked carefully at the validation profile of the embedded x86 product from Aonix. It lists two inapplicable tests, but I do not know if these are 1.1.3(6) cases or not, if not, then my statement is certainly not correct with respect to this validation, and I apologize for the mistake. The validated compilers list changes all the time (a good thing!) so any statement about its state is likely to become false with the march of time. When I said that GNAT passed the real time annex I meant that it did so without appealing to RM 1.1.3(6). Our position is to provide at least a mode in which annex D requirements are met completely. In the case where there is a clash between the underlying OS thread semantics and the requirements of annex D, we provide a choice between following annex D exactly, or just taking whatever you get from the underlying threads. Now one EXTREMELY IMPORTANT point is that it is perfectly possible to use a compiler with deviations from the standard. This is PARTICULARLY true in the case of annex D, since relatively few applications will depend on the details of the annex D semantics. After all in Ada 83, all such details were implementation defined, and yet many applications successfully used tasking (of course many applications also avoided the use of tasking because of the lack of definition, and we hope that the deterministic semantics of annex D will bring some of these applications back into the tasking fold :-) For example, the Greenhills compiler is the only off-the-shelf VxWorks compiler today (although perhaps that statement too will be obsoleted soon). Many Vxworks users would actually prefer that their Ada compiler follow the VxWorks semantics, and indeed as a default dispatching policy, this is reasonable, but you cannot expect to get accurate FIFO_WITHIN_PRIORITIES behavior in this environment (and indeed the compiler should reject the attempt). Dave Wood will remember that I was one of the people who most vociferously argued that the inability on NT to support 31 levels of priority should not be considered too negatively, since for many applications you WANT the 1-1 mapping, and you can't have both 31 levels of priority and this 1-1 mapping (complaints to Microsoft, not here!) However, I was not arguing that 7 = 31! If you have an application (RMA scheduling is a typical case which results in such a requirement) that requires 31 levels of priority then you will be out of luck, and your perfectly valid Ada 95 program will not run. Now I would assume that the embedded version of the compiler does not have this limitation of 7 priority levels, so very probably it does NOT have to rely on 1.1.3(6), and thus in thesense I was talking about DOES fully support Annex D on a general purpose platform. As I said, my validation knowledge was a little out of date (a state which I certainly hope will frequently be the case as new targets are validated!) The lesson to be learned from this discussion is that everyone seriously using a compiler should study the validation results in detail. Especially where there are 1.1.3(6) variations claiming variations not explicitly permitted by the RM, other than by virtue of this clause, it is important for users to understand the limitations. In some cases, these limitations can cause programs to silently malfunction even though they are 100% correct Ada 95. For example, if you have two tasks A and B, where A has priority Priority'First + 6 and B has priority Priority'Last - 6, then Ada semantics says that task B has a greater priority than A, but in an environment with only 7 levels of priority, the priorities will be silently reversed. This is a constructed example, and in the particular case of 7 levels of priority, it seems pretty unlikely that this would arise. However 1.1.3(6) has no language about the resulting variations being detected easily, or being unlikely to cause trouble, so it is definitely a buyer beware situation here. Going back to the GNAT validations. Ada Core Technologies has made a policy decision that we will only do validations in which we fully support the language (no unsupported tests in the VSR), and where inapplicable tests never appeal to 1.1.3(6), i.e. the only reasons for tests being inapplicable are cases 1 and 2 described above. We accomplish this goal by two methods: 1. If we cannot validate under these conditions in a given environment, we simply don't validate. Now of course commercial pressures might cause us to change this viewpoint (money talks!) but so far we have not had to relax this position. 2. Where there is a clash between the underlying threads model of the operating system, we provide a choice of threads models, the user either has the choice of using the OS thread model, with its limitations, or of using our own thread model which is exactly annex D compliant. We prefer that the threads model provided by the OS be exactly right, and for cases where we have some technical interaction (SGI, RTEMS, Tenon Machten), this can be achieved. But in other cases (notably Solaris), we need to offer the choice of threads models. The choice of the annex D thread model is made either automaticaly if a pragma is used indicating the requirement, or as a result of a compiler option. We certainly are NOT saying that compilers that appeal to 1.1.3(6) are in any sense unusable. As I mentioned earlier, I was one of the really strenuous arguers that the NT limitation I discussed above is one that should be allowed under 1.1.3(6), even though it is perfectly possible to provide exact annex D semantics on NT. In fact I think I can fairly say that without my arguments on behalf of the Aonix petition in this matter, the decision might easily have been made the other way! It is often the case that a compiler is fully usable even if it implements NONE of the real time (or any other) annex, in a particular situation. So certainly any implication that a compiler is unusable just because there is a single feature unsupported is total nonsense. However, here at Ada Core Technologies, we think it makes things simpler for users if they can get an ACT validated compiler and know that they do not have to worry about 1.1.3(6) issues, and that if something is required to be supported in the RM (as opposed to being explicitly optional, or implementation advice), then they can count on the fact that there are no intentional 1.1.3(6) deviations. Dave, what would be useful, and would help clear up any confusion I may have caused, is for you to quickly summarize the details of the inapplicable tests in the embedded validation. For the record, the inapplicable tests in the GNAT annex D validations correspond to the non-implementation of the asynchronous task capability. This capability was explicitly made optional in the RM, recognizing that it is unlikely to make sense in other than bare target environments. Robert Dewar Ada Core Technologies ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-10 0:00 ` Robert Dewar @ 1997-03-10 0:00 ` Dave Wood 1997-03-11 0:00 ` Robert Dewar 0 siblings, 1 reply; 16+ messages in thread From: Dave Wood @ 1997-03-10 0:00 UTC (permalink / raw) Gadzooks! Where do you find the time for such lengthy posts? :-) Robert Dewar wrote: > > Dave Wood wrote > > <<I can't respond to the original poster due to conflict > of interest, but we have validated the real-time annex > just recently for our first ObjectAda Real-Time compiler > (for Intel targets). PowerPC is following shortly. > > Well I don't think there is any conflict of interest here, except > in the normal sense of competition! But anyway, I certainly don't > want to create incorrect impressions, so let me say exactly what > I was talking about. Just a point of clarification. What I was saying was that I wouldn't respond to the original query (I forget who posted it), because I don't wish to engage in blatant advertising on c.l.a. I wasn't referring to your post, Robert, which followed the original. In fact, yor message was deleted from our server and so I never even had the chance to read it. [snip] > > The AONIX compiler for NT only implements 7 levels of priorites because > there are only 7 levels of task priorities provided in NT, so if you > are maping priority levels one-to-one, the requirement of 31 levels > of priority cannot be met. [snip] > As far as other compilers go, I have not looked carefully at the validation > profile of the embedded x86 product from Aonix. It lists two inapplicable > tests, but I do not know if these are 1.1.3(6) cases or not, if not, then > my statement is certainly not correct with respect to this validation, and > I apologize for the mistake. The validated compilers list changes all the > time (a good thing!) so any statement about its state is likely to become > false with the march of time. > > When I said that GNAT passed the real time annex I meant that it did so > without appealing to RM 1.1.3(6). Our position is to provide at least a > mode in which annex D requirements are met completely. In the case where > there is a clash between the underlying OS thread semantics and the > requirements of annex D, we provide a choice between following annex D > exactly, or just taking whatever you get from the underlying threads. > > Now one EXTREMELY IMPORTANT point is that it is perfectly possible to use > a compiler with deviations from the standard. This is PARTICULARLY true in > the case of annex D, since relatively few applications will depend on the > details of the annex D semantics. After all in Ada 83, all such details > were implementation defined, and yet many applications successfully used > tasking (of course many applications also avoided the use of tasking because > of the lack of definition, and we hope that the deterministic semantics of > annex D will bring some of these applications back into the tasking fold :-) > > Dave Wood will remember that I was one of the people who most vociferously > argued that the inability on NT to support 31 levels of priority should > not be considered too negatively, since for many applications you WANT > the 1-1 mapping, and you can't have both 31 levels of priority and this > 1-1 mapping (complaints to Microsoft, not here!) However, I was not > arguing that 7 = 31! If you have an application (RMA scheduling is > a typical case which results in such a requirement) that requires 31 > levels of priority then you will be out of luck, and your perfectly > valid Ada 95 program will not run. > > Now I would assume that the embedded version of the compiler does not have > this limitation of 7 priority levels, so very probably it does NOT have to > rely on 1.1.3(6), and thus in thesense I was talking about DOES fully > support Annex D on a general purpose platform. As I said, my validation > knowledge was a little out of date (a state which I certainly hope will > frequently be the case as new targets are validated!) Very thoroughly stated. To answer the issue, the validation in question is not the NT native compiler ("ObjectAda for Windows"), but rather the cross compiler targetting Intel running the Phar Lap ETS kernel ("ObjectAda Real-Time for Windows x Intel/ETS" - an ungodly long name, but such is required when you're talking about cross compilers and you hope for some level of precision...) The ETS kernel indeed eradicates the restrictions of NT with regard to priority levels and also provides for other performance characteristics (like deterministic scheduling and minimal latency) and interface characteristics (like on-chip peripheral drivers and support for various i/o devices) typically expected and required for hard real-time and embedded applications. While NT is generally not suitable for hard real-time applications, it's a great platform for development when targetting ETS because the ETS kernel uses the Win32 OS interface, which makes it very easy to accomplish early and inexpensive prototyping on the host environment before the target hardware is available for testing. In fact, it takes more to make a good cross development platform than just to validate a compiler - you need to deliver it along with a well-considered environment and set of tools suited to the task, like board customization packages, rate monotonic analysis tools, on-target debugging, and fully-integrated linking/ locating/ dowloading capabilities. OK, so maybe I can do a *little* blatant advertising. :-) > The lesson to be learned from this discussion is that everyone seriously > using a compiler should study the validation results in detail. I couldn't agree more - you have to be sure the compiler supports the features that you need. It's a sad fact that there are a significant number of "validated" Ada 95 compilers out there that don't pass a single Ada 95 test, a situation that will be rectified with ACVC 2.1. It's safe to say that there are unvalidated compilers (like GNAT) that support far more Ada 95 than some validated compilers (like those from, er, well, nevermind...) By all means, people should peruse the validated compiler listings (and test results contained therein) before making a decision that will have long-term cost implications. -- Dave Wood -- Product Manager, ObjectAda for Windows -- Aonix - "Ada with an Attitude" -- http://www.aonix.com ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-10 0:00 ` Dave Wood @ 1997-03-11 0:00 ` Robert Dewar 0 siblings, 0 replies; 16+ messages in thread From: Robert Dewar @ 1997-03-11 0:00 UTC (permalink / raw) <<Gadzooks! Where do you find the time for such lengthy posts>> I type fast, and I keep a window open for email and news stuff, and type in it when I don't have anything else to do :-) ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-09 0:00 ` Dave Wood 1997-03-10 0:00 ` Robert Dewar @ 1997-03-10 0:00 ` Robert Dewar 1 sibling, 0 replies; 16+ messages in thread From: Robert Dewar @ 1997-03-10 0:00 UTC (permalink / raw) Dave Wood asks <<GNAT is not validated for *any* real-time targets, is it?>> Well I am not quite sure I understand this question. Certainly for example, SGI considers that IRIX is usable for a wide range of real time applications, and for example JEOL is successfully using GNAT for real time applications in the medical instrumentation field, and we have many other customers doing hard real time applications using validated versions of GNAT. Perhaps what dave meant to say here was embedded or perhaps cross targets, in which case the answer is no, not yet. We expect to complete our first cross-validation in the next couple of weeks, and we will let you know when that is successfully completed! Robert Dewar Ada Core Technologies ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-09 0:00 ` Tom Moran 1997-03-09 0:00 ` Dave Wood @ 1997-03-11 0:00 ` Robert Dewar 1997-03-17 0:00 ` Robert I. Eachus 2 siblings, 0 replies; 16+ messages in thread From: Robert Dewar @ 1997-03-11 0:00 UTC (permalink / raw) Tom Moran said << Do all versions of GNAT do all the real time stuff in an embedded system context? The original poster did not specify his target system.>> Well there are versions of GNAT done by volunteers that have nothing to do with us (Ada Core Technologies), so certinly the anwer is NO. MOre specifically, I was talking about validated versions, and as I noted in my post, there are no validated versions of GNAT for embedded systems yet (a situation which will change very shortly!) ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-09 0:00 ` Tom Moran 1997-03-09 0:00 ` Dave Wood 1997-03-11 0:00 ` Robert Dewar @ 1997-03-17 0:00 ` Robert I. Eachus 1997-03-17 0:00 ` Robert Dewar 2 siblings, 1 reply; 16+ messages in thread From: Robert I. Eachus @ 1997-03-17 0:00 UTC (permalink / raw) In article <dewar.858351614@merv> dewar@merv.cs.nyu.edu (Robert Dewar) writes: > This reminds me of a question that Phillipe Kruchten asked me, > back in his prerational days when he worked on the Ada-Ed project > at NYU. Hmmm... Phillipe wasn't rational when he was at NYU? ;-) > He asked if he could be validated as an Ada 83 compiler. He proposed to > look at each C test, think for a bit, and then say Passed! If he could pass the B-tests, I'd be willing to give him a certificate. (For those who have never dealt with the ACVC, the B-tests are--in 1.x--about 1000 test which not only require you to find every error at compile time, but to diagnose it correctly. Some tests have/had hundreds of errors. Every compiler vendor I know spent most of their effort during validation getting the B-tests right. Most of the rest was spent on C-tests, and A,D,E and L collectively accounted for at most 1-2% of the effort.) -- Robert I. Eachus with Standard_Disclaimer; use Standard_Disclaimer; function Message (Text: in Clever_Ideas) return Better_Ideas is... ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-17 0:00 ` Robert I. Eachus @ 1997-03-17 0:00 ` Robert Dewar 1997-03-21 0:00 ` Aonix " Keith Allan Shillington 0 siblings, 1 reply; 16+ messages in thread From: Robert Dewar @ 1997-03-17 0:00 UTC (permalink / raw) Robert Eachus said << If he could pass the B-tests, certificate. (For those who have never dealt with the ACVC, the B-tests are--in 1.x--about 1000 test which not only require you to find every error at compile time, but to diagnose it correctly. Some tests have/had hundreds of errors. Every compiler vendor I know spent most of their effort during validation getting the B-tests right. Most of the rest was spent on C-tests, and A,D,E and L collectively accounted for at most 1-2% of the effort.)>> First of all, there is no requirement that you diagnose the error correctly, merely that you output an error message that refers to the affected line, it would be fine as far as the ACVC is concerned to simply flag every error line with a message that said ERROR. Given that every line has a comment on it that says ERROR, I have no doubt that the amazing Kruchten compiler would be able to read through a B test and announce ERROR on all appropriate lines :-) ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aonix Ada 95 1997-03-17 0:00 ` Robert Dewar @ 1997-03-21 0:00 ` Keith Allan Shillington 0 siblings, 0 replies; 16+ messages in thread From: Keith Allan Shillington @ 1997-03-21 0:00 UTC (permalink / raw) > Robert Eachus said > ... (For those who have never dealt with the ACVC, the > B-tests are--in 1.x--about 1000 test which not only require you to > find every error at compile time, but to diagnose it correctly. Some > tests have/had hundreds of errors. Every compiler vendor I know spent > most of their effort during validation getting the B-tests right. > Most of the rest was spent on C-tests, and A,D,E and L collectively > accounted for at most 1-2% of the effort.) Me thinks your numbers are overly pessimized, but, that is all in the past anyway. Anyone who bothers to look at the 2.X ACVC suite will find a stronger emphasis on C and L tests. It was our expectation in writing them that the vendors would find a little more need to focus on the implementation of the executable bits. And, let us not discount the value of a good error message from a compiler. Robert Dewar deftly points out: <<Given that every line has a comment on it that says ERROR, I have no doubt that the amazing Kruchten compiler would be able to read through a B test and announce ERROR on all appropriate lines :-)>> Takes me back to the days of the Basic interpreter that was possessed of the single error message: "Huh?" ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-09 0:00 ` Robert Dewar 1997-03-09 0:00 ` Tom Moran @ 1997-03-14 0:00 ` Chris Morgan 1997-03-14 0:00 ` Robert Dewar 1 sibling, 1 reply; 16+ messages in thread From: Chris Morgan @ 1997-03-14 0:00 UTC (permalink / raw) In article <dewar.858097255@merv> dewar@merv.cs.nyu.edu (Robert Dewar) writes: > > <<Gadzooks! Where do you find the time for such lengthy posts>> > > I type fast, and I keep a window open for email and news stuff, and type > in it when I don't have anything else to do :-) > How many priority levels do you support, what is your interrupt latency and are you validated? -- Chris Morgan (cm@mihalis.demon.co.uk) ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Aeonix Ada 95 1997-03-14 0:00 ` Aeonix " Chris Morgan @ 1997-03-14 0:00 ` Robert Dewar 1997-03-17 0:00 ` Human compilers (was: Re: Aeonix Ada 95) Norman H. Cohen 0 siblings, 1 reply; 16+ messages in thread From: Robert Dewar @ 1997-03-14 0:00 UTC (permalink / raw) Chris asks <<How many priority levels do you support, what is your interrupt latency and are you validated?>> This reminds me of a question that Phillipe Kruchten asked me, back in his prerational days when he worked on the Ada-Ed project at NYU. He asked if he could be validated as an Ada 83 compiler. He proposed to look at each C test, think for a bit, and then say Passed! :-) ^ permalink raw reply [flat|nested] 16+ messages in thread
* Human compilers (was: Re: Aeonix Ada 95) 1997-03-14 0:00 ` Robert Dewar @ 1997-03-17 0:00 ` Norman H. Cohen 1997-03-19 0:00 ` Robert Dewar 0 siblings, 1 reply; 16+ messages in thread From: Norman H. Cohen @ 1997-03-17 0:00 UTC (permalink / raw) Robert Dewar wrote: > This reminds me of a question that Phillipe Kruchten asked me, back in his > prerational days when he worked on the Ada-Ed project at NYU. Surely you mean his "pre-Rational" days. Sometimes capitalization makes a big difference! :-) > He asked if he could be validated as an Ada 83 compiler. He proposed to > look at each C test, think for a bit, and then say Passed! > > :-) Perhaps he could be validated as an Ada-83 interpreter, but not as a compiler. Phillipe, don't give up your day job! :-) -- Norman H. Cohen mailto:ncohen@watson.ibm.com http://www.research.ibm.com/people/n/ncohen ^ permalink raw reply [flat|nested] 16+ messages in thread
* Re: Human compilers (was: Re: Aeonix Ada 95) 1997-03-17 0:00 ` Human compilers (was: Re: Aeonix Ada 95) Norman H. Cohen @ 1997-03-19 0:00 ` Robert Dewar 0 siblings, 0 replies; 16+ messages in thread From: Robert Dewar @ 1997-03-19 0:00 UTC (permalink / raw) Norman said <<Surely you mean his "pre-Rational" days. Sometimes capitalization makes a big difference! :-)>> OOPS, I forgot the BEGIN JOKE and END JOKE keywords once again (we have to be precise about such things for the formalists :-) :-) ^ permalink raw reply [flat|nested] 16+ messages in thread
end of thread, other threads:[~1997-03-21 0:00 UTC | newest] Thread overview: 16+ messages (download: mbox.gz / follow: Atom feed) -- links below jump to the message on this page -- 1997-03-09 0:00 Aeonix Ada 95 suburb 1997-03-09 0:00 ` Robert Dewar 1997-03-09 0:00 ` Tom Moran 1997-03-09 0:00 ` Dave Wood 1997-03-10 0:00 ` Robert Dewar 1997-03-10 0:00 ` Dave Wood 1997-03-11 0:00 ` Robert Dewar 1997-03-10 0:00 ` Robert Dewar 1997-03-11 0:00 ` Robert Dewar 1997-03-17 0:00 ` Robert I. Eachus 1997-03-17 0:00 ` Robert Dewar 1997-03-21 0:00 ` Aonix " Keith Allan Shillington 1997-03-14 0:00 ` Aeonix " Chris Morgan 1997-03-14 0:00 ` Robert Dewar 1997-03-17 0:00 ` Human compilers (was: Re: Aeonix Ada 95) Norman H. Cohen 1997-03-19 0:00 ` Robert Dewar
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox