Ada Programming Tutorial at Wikibooks
Total Page:16
File Type:pdf, Size:1020Kb
AADDAA PPROGRROGRAMMINGAMMING by Wikibooks contributors Developed on Wikibooks, the open-content textbooks collection © Copyright 2004–2007, Wikibooks contributors. Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled "GNU Free Documentation License". Image licenses are listed in the section entitled "Image Credits." Principal authors: • Martin Krischik (Contributions) • Georg Bauhaus (Contributions) • Manuel Gómez (Contributions) • Samuel Tardieu (Contributions) • Santiago Urueña (Contributions) • Ludovic Brenta (Contributions) • C.K.W. Grein (Contributions) • Ed Falis • Bill Findlay (Contributions) • Pascal Obry • Simon Wright (Contributions) • Unnamed Hero (Contributions) • John Oleszkiewicz (Contributions) • B. Seidel (Contributions) • Nicolas Kaiser (Contributions) • Allen Lew (Contributions) • Larry Luther (Contributions) The current version of this Wikibook may be found at: http://en.wikibooks.org/wiki/Ada_Programming Table of Contents 1PREFACE................................................................................................................................16 About Ada.................................................................................................................................................16 Programming in the large...............................................................................................................................................16 Programming in the small..............................................................................................................................................17 The Language Reference Manual..................................................................................................................................17 Ada Conformity Assessment Test Suite.........................................................................................................................18 Programming in Ada................................................................................................................................18 Getting Started...............................................................................................................................................................18 Language Features.........................................................................................................................................................18 Computer Programming.................................................................................................................................................19 Language Summary.......................................................................................................................................................19 Predefined Language Libraries......................................................................................................................................19 Other Language Libraries..............................................................................................................................................20 External resources....................................................................................................................................20 Source Code..............................................................................................................................................20 References.................................................................................................................................................20 See also.....................................................................................................................................................21 Resources.......................................................................................................................................................................21 Manuals and guides........................................................................................................................................................21 Associations...................................................................................................................................................................21 Free online books/courses..............................................................................................................................................21 Authors and contributors..........................................................................................................................21 2BASIC...................................................................................................................................23 "Hello, world!" programs.........................................................................................................................23 "Hello, world!"...............................................................................................................................................................23 "Hello, world!" with renames........................................................................................................................................24 "Hello, world!" with use................................................................................................................................................24 FAQ: Why is "Hello, world!" so big?............................................................................................................................24 Things to look out for...............................................................................................................................25 Comb Format.................................................................................................................................................................25 Notes.........................................................................................................................................................26 Type and subtype...........................................................................................................................................................26 Constrained types and unconstrained types...................................................................................................................26 Dynamic types................................................................................................................................................................27 Separation of concerns...................................................................................................................................................27 3INSTALLING............................................................................................................................28 AdaMagic from SofCheck.......................................................................................................................28 AdaMULTI from Green Hills Software...................................................................................................28 DEC Ada from HP....................................................................................................................................29 GNAT, the GNU Ada Compiler from AdaCore and the Free Software Foundation...............................29 GNAT GPL Edition........................................................................................................................................................29 GNAT Modified GPL releases.......................................................................................................................................30 GNAT 3.15p....................................................................................................................................30 GNAT Pro.......................................................................................................................................30 GCC................................................................................................................................................31 The GNU Ada Project....................................................................................................................................................31 GNAT for AVR microcontrollers...................................................................................................................................32 Prebuilt packages as part of larger distributions............................................................................................................32 AIDE (for Microsoft Windows).....................................................................................................32 Blastwave (for Solaris on SPARC and x86)...................................................................................32 Chapter Cygwin (for Microsoft Windows)..................................................................................................33 Debian (GNU/Linux and GNU/kFreeBSD)...................................................................................33 DJGPP (for MS-DOS)....................................................................................................................34 FreeBSD..........................................................................................................................................34