1 -- main.adb: illustrate subprocedure and function subunits 2 3 procedure Main is 4 5 type Month_Type is (Jan, Feb, Mar, Apr, May, Jun, 6 Jul, Aug, Sep, Oct, Nov, Dec); 7 8 procedure Put (Day, Year: Integer; Month: Month_Type) is separate; 9 10 function Next_Month (Month: Month_Type) return Month_Type is separate; 11 12 begin 13 14 Put (10, 1998, Next_Month (Dec)); 15 Put (Month=>Next_Month(Dec), Day=>10, Year=>1998); 16 17 end Main;