[Search for users] [Overall Top Noters] [List of all Conferences] [Download this site]

Conference turris::languages

Title:Languages
Notice:Speaking In Tongues
Moderator:TLE::TOKLAS::FELDMAN
Created:Sat Jan 25 1986
Last Modified:Thu May 22 1997
Last Successful Update:Fri Jun 06 1997
Number of topics:394
Total number of notes:2683

22.0. "100%" by ORPHAN::BRETT () Tue Jul 10 1984 21:52

We certified our Ada compiler today - that means we have told the Govt. that
we believe our compiler correctly diagnoses or runs all relevant validation
suite program.

Some time in the next 6 weeks, they will come here and confirm that we do in
fact do that (almost a formality), and shortly after, we (unless we missed
something) get a validation certificate.

Now, back to the bugs that slipped passed the validation suite...

/Bevin
T.RTitleUserPersonal
Name
DateLines
22.1SPIDER::KEANEWed Jul 11 1984 16:446
Congratulations.

Will internal test versions be available soon?

Brian

22.2XENON::SAUTERThu Jul 12 1984 12:289
Congratulations from me as well.  Is there a process in place that lets you 
add tests to the validation suite?  My thought is that after you fix all 
those bugs that "made it past the validation suite" you can create 
validation-style tests for them and get them inserted in the suite, thus 
increasing the chances that our competitors' compilers will fail 
validation!
 
Do you have any figures on run-time performance?  Whetstones or whatever?
    John Sauter
22.3LATOUR::AMARTINThu Jul 12 1984 13:036
Re .2:

You devil, you.  Actually, at one of the Intermetrics lectures on their Ada
effort, the lecturer indicated that they hoped to submit all of their unit
tests which exposed design flaws to the validation suite.
				/AHM
22.4ORPHAN::BRETTThu Jul 12 1984 18:1213
re .1 - people interested in having internal test versions should send mail 
	to ORPHAN/EIFFEL/SPEEDY/ELUDOM::MITCHELL, our beloved project leader.

performance is still a little under wraps, besides the next base level is
targetted at performance as well as bugs hence we only have approx. figures
to go with our goals.

Yes, we already have submitted some of our nastier tests to the validation
suite people.  It is an informal process but one that seems to work well,
we have fairly good ties with them, seeing they are just out of Boston.

/Bevin
22.5ORPHAN::BRETTFri Jul 13 1984 15:2329
Here's an example of one we missed...


	FUNCTION F RETURN STRING(1..4) IS
	BEGIN
		RETURN "1234";
	END;


Now, the syntax for a function-specification is

	function-specification ::= "function" ... "return" type-mark

and that of type-mark is

	type-mark ::= TYPE_name


Now, STRING(1..4), is EITHER a slice OR an index-constraint.  The parser
can't tell which, and a slice IS an ?_name.   So the program is SYNTACTICALLY
correct.  Unfortunately we failed to pick it up later either, and eventually
the compiler blew up.


This is quite a good example of the complexities involved in compiling Ada.


/Bevin
22.6XENON::SAUTERMon Jul 16 1984 12:2913
re: .5--Marvelous!  You said this is syntactically correct, which I 
assume means that is passes the BNF, as you described.  Does that mean 
that it is wrong only because of a footnote in the Ada standard?  Or 
does the Ada standard not consider this ambiguity?  If the latter, what 
should the compiler do?  Assume a slice, or look to a larger context to 
resolve the problem?  Assuming there is a well-defined answer to the 
question you should try to get this example into the Validation Suite.
 
By the way, I applaud the efforts of one of the other developers (you 
mentioned the name but I've forgotten it) to put their tests into the 
Validation Suite.  In the long run that can't help but improve the 
quality of the compilers.
    John Sauter
22.7LATOUR::AMARTINMon Jul 16 1984 12:5613
It was someone from Intermetrics who said it, John.

One vicious additional unit test has the possibility of causing your
competition to spend lots of resources to stay standard conforming.  The
prospect of forcing companies to skip a year of being validated was
discussed.  There was much chuckling between the two (or more) competing
compiler teams in the audience at the thought.

(I really hate these little sign-offs that are so much in vogue on
SF-LOVERS and SPACE, but what the hell).

"Think of it as evolution in action".
				/AHM
22.8ORPHAN::BRETTMon Jul 16 1984 23:3913
It is unlikely that an implementation would loose a whole year, because the
suite is available 6 months before it becomes the one you have to pass.  

It passes our BNF, and also the one in the ARM itself.  We THINK they are the
same language, but if you'll remember you language theory the problem of the
equivalance of two grammars...  

The illegality of the program is very blatant - the slice is NOT a type-mark,
semantically, any more than a procedure name is a variable just because they
have the same syntax.

/Bevin
22.9ORPHAN::BRETTFri Jul 20 1984 20:499
Only one of our objections to the validation suite was turned down (out of
quite a few), so we are going to push our objection harder as well as fix
the implementation to pass the test.   This was pretty good going, we 
expected a bit more flak.

Haven't heard yet when they turn up.

/Bevin
22.10XENON::SAUTERMon Jul 23 1984 12:213
re: .9--In a thousand words or less, what was the objection, and why was 
it rejected?
    John Sauter
22.11GVASA::LUGRINMon Jul 23 1984 19:1615
re: .0--Congratulation too.

	In DATAMATION (may 15) they say that DEC is selling the TELESOFT
	compiler which should be validated very soon for VMS and UNIX.

	My questions:
		Is that true?
		Is the code produced for VMS (UNIX?  STand-Alone?)

Other comment: It take some time to learn ADA, and having competent
	ADA programmers within DEC can only be good for the company.
	Why not starting now having an internal distribution of ADA
	and a NOTES file.  If somebody have time for that.

/jm
22.12ORPHAN::BRETTMon Jul 23 1984 13:5524
A test had the following code in it...


	type A is array(INTEGER range <>) of CHARACTER;
	C : constant A := "";

Now, the bounds for "" are  INTEGER'first to the predecessor of INTEGER'first.
In computing the predecessor we raised NUMERIC_ERROR instead of 
CONSTRAINT_ERROR.  The language contains two contradictory statements on this
issue

	4.2 para 3	"The evaluation of a string literal raises
			CONSTRAINT_ERROR if the predecessor of the lower
			bound does not exist"	(make that NULL string literal)

	11.1		"NUMERIC_ERROR	This exception is raised by ...
			including the case where an implementation uses a
			predefined numeric operation for the .. evaluation ..
			of some construct"

So, by the first we're wrong; by the second, we're right.  

/Bevin
22.13ORPHAN::BRETTMon Jul 23 1984 13:587
re: TELESOFT - I'm not up to date enough to comment.  They do have a validated
compiler for the 68000.  I believe it will be 'for VMS' and 'for UNIX' rather
than stand-alone.  We are recommending that until ours is available, VMS users
look into using the TELESOFT compiler.

/Bevin