* Re: Dec Ada
1996-05-26 0:00 Dec Ada John Paul Ross
1996-05-27 0:00 ` Robert Dewar
@ 1996-05-28 0:00 ` Ken Garlington
1 sibling, 0 replies; 3+ messages in thread
From: Ken Garlington @ 1996-05-28 0:00 UTC (permalink / raw)
John Paul Ross wrote:
>
> I have recently started using Ada 83 on Dec Alphas. and have noticed a
> couple of changes to the normal LRM I am used to using - notably
> in the section which describes Calendar part of which seems to have
> been split into two sub-paragraphs.
>
> Does anyone know the situation regarding this -which "version" of the
> LRM should validated compilers comply with - Dec's is dated 1993?
>
> I am not sure whether the LRM has been changed or whether Dec have
> changed it for their own purposes can anyone enlighten me?
Yes and no. The DEC Ada compiler, as far as I know, conforms to the
1983 Ada standard from ANSI/ISO, and has passed the validation suite for
that standard.
However, there is a DEC document that comes out with its VAX/VMS
compiler called "VAX Ada Language Reference Manual." My hardcopy version
is dated May 1989. I assume you received a similar manual (hardcopy or
softcopy) from DEC for the Alpha compiler. The cover page says this:
"This manual represents the Digital-supplemented text of ANSI/
MIL-STD-1815A-1983, Reference Manual for the Ada Programming
Language. Textual insertions (printed in color) describe the
Digital implementation of implementation-dependent language
features, as well as allowed implementation-specific additions
to the language (pragmas, attributes, input-output features, and
so on.)"
DEC kept the overall structure of the Ada standard in terms of paragraph
numbers, etc. and added their own subparagraphs as needed. For example,
paragraph 13.7 is the description of package System, as it is written in
the Ada standard. Section 13.7a is the VAX Ada-specific additions to
package System. To be a validated compiler, DEC has to comply to 13.7.
However, the standard validation suite will not test for the additional
features described in 13.7a.
If you want to write code that is strictly portable, you should use the
Ada standard and not the DEC Ada LRM. (Note that the DEC compiler has an
option to flag the use of non-portable constructs in the code, as well).
However, if you want to use the full power of the DEC Ada compiler, you
need the DEC Ada LRM.
--
LMTAS - "Our Brand Means Quality"
^ permalink raw reply [flat|nested] 3+ messages in thread