	----------------------------------------------------------------------
	-- Title       :  DemoAK
	-- Version     :  1.00
	-- Copyright   :  (C) 1994 David Wallace Croft.  All rights reserved.
	-- Author      :  David Wallace Croft, CompuServe [76600,102]
	-- Compiler    :  standard Ada
	-- Description :  Demonstration of standard Ada packages.
	----------------------------------------------------------------------

	with A83_014_Vector          ; use A83_014_Vector          ;
	with A83_015_Matrix          ; use A83_015_Matrix          ;
	with A83_016_Matrix_Solutions; use A83_016_Matrix_Solutions;
	with A83_017_Random          ; use A83_017_Random          ;
	with ConsAK                  ; use ConsAK                  ;
	with ErroAK                  ; use ErroAK                  ;
	with FileAK                  ; use FileAK                  ;
--      with FloaAK                  ; use FloaAK                  ;
	with InteAK                  ; use InteAK                  ;
	with LineAK                  ; use LineAK                  ;
	with MathAK                  ; use MathAK                  ;
	with Text_IO                 ; use Text_IO                 ;
	with TimeAK                  ; use TimeAK                  ;

	package DemoAK is
	----------------------------------------------------------------------
	----------------------------------------------------------------------
	procedure Demo;
	----------------------------------------------------------------------
	----------------------------------------------------------------------
	end DemoAK;

	package body DemoAK is
	----------------------------------------------------------------------
	----------------------------------------------------------------------

	procedure Demo is
	----------------------------------------------------------------------
	  Copyright : constant string :=
	   "DemoAK v1.1 (C) 1994 David Wallace Croft.  Freeware.";
	  Default :          natural :=  1;
	  Min     : constant natural :=  0;
	  Max     : constant natural := 10;
	  Option  :          natural;
	begin
	  loop
	    Put_Line ( Copyright );
	    Put_Line ( "" );
	    Put_Line (
		 "Demonstration of available Ada programming language packages."
		   );
	 Put_Line ( "This program is free and may be distributed." );
	 Put_Line (
	   "All code within this section is compiler independent." );
	 Put_Line (
	   "For information on licensing these packages, the author" );
	 Put_Line ( "may be contacted via CompuServe at [76600,102]." );
	 Put_Line ( "Use at your own risk." );
	 Put_Line ( "" );
	 Put_Line ( " 0 = Quit" );
	 Put_Line ( " 1 = A83_014_Vector -- Vector types and operations" );
	 Put_Line ( " 2 = A83_015_Matrix -- Matrix types and operations" );
	 Put_Line ( " 3 = A83_016_Matrix_Solutions -- Least Squares" );
	 Put_Line ( " 4 = A83_017_Random -- Random numbers & statistics" );
	 Put_Line ( " 5 = ConsAK         -- Console text input/output" );
	 Put_Line ( " 6 = ErroAK         -- Exception Handling" );
	 Put_Line ( " 7 = FileAK         -- File text input/output" );
	 Put_Line ( " 8 = LineAK         -- Linear Programming" );
	 Put_Line ( " 9 = MathAK         -- General Math Subprograms" );
	 Put_Line ( "10 = TimeAK         -- Calendar and Time" );
	 Put_Line ( "" );
	 Option := Ask_Nat ( "Option ", Default, Min, Max );
	 Default := Option + 1;
	 if Default > Max then
	   Default := Min;
	 end if;
	 case Option is
	   when  0 => exit;
	   when  1 => A83_014_Vector.Demo;
	   when  2 => A83_015_Matrix.Demo;
--         when  3 => A83_016_Matrix_Solutions.Demo;
	   when  4 => A83_017_Random.Demo;
	   when  5 => ConsAK.Demo;
	   when  6 => ErroAK.Demo;
	   when  7 => FileAK.Demo;
	   when  8 => LineAK.Demo;
	   when  9 => MathAK.Demo;
	   when 10 => TimeAK.Demo;
	   when others =>
		Put_Line ( "The demonstration of that option is currently"
		  & " not available." );
		Pause;
	 end case;
	 Put_Line ( "" );
	  end loop;
	exception
	  when others =>
	    Notify ( "DemoAK.Demo" );
	    raise;
	end Demo;

	----------------------------------------------------------------------
	----------------------------------------------------------------------
	end DemoAK;
