[comp.lang.ada] Derived Types, RM 3.4

Mendal@SIERRA.STANFORD.EDU (Geoff Mendal) (01/22/87)

Dear Ada Fans-
It's hardly been a week since the last SIGAda and we're already
confused.  Consider the following package spec:

  package P is
    type N is range 1 .. 10;
    type D is new N;  -- invalid

    function "+" (L, R : in N) return N;
  private
    type E is new N;  -- valid
  end;

What is the rationale for the special rules in RM 3.4(15)?  Why not
simply have predefined addition on type D and user-defined addition
on type E?

The rules on 3.4(15) are quite clear and obvious.  The question is
what is their underlying rationale?

   doug and geoff
-------