Newbies What Next ? News Forums Calendar


News Sections
General News (3987/0)
Reviews (636/0)
Press Releases (465/0)
Distributions (197/0)
Software (907/0)
Hardware (537/0)
Security (192/0)
Tutorials (356/0)
Off Topic (181/0)

User Functions


Don't have an account yet? Sign up as a New User

There are no upcoming events

6 Invaluable Free Ada Books

6 Invaluable Free Ada Books

Ada is a structured, statically typed, imperative, wide-spectrum, multi-paradigm, object-oriented high-level, ALGOL-like programming language, extended from Pascal and other languages. The language was developed in the late 1970s and early 1980s. Ada is named after Augusta Ada Byron (often now known as Ada Lovelace), daughter of the poet Lord Byron.

Ada has built-in language support for explicit concurrency, offering tasks, synchronous message passing, protected objects, and non-determinism. Ada incorporates the benefits of object-oriented languages without incurring the pervasive overheads.

Notable features of Ada include: strong typing, inherent reliability, modularity mechanisms (packages), run-time checking, parallel processing, exception handling, the ability to provide abstraction through the package and private type, and generics.

Ada is particularly strong in areas such as real-time applications, low-level hardware access, and safety-critical software, as it has specialized design features, and high reliability. Most errors are detected at compile time and of those remaining many are detected by runtime constraints. Whilst Ada was originally targeted at embedded and real time systems, the Ada 95 revision added support for object-oriented (including dynamic dispatch), numerical, financial, and systems programming. With its readability, scalability, and being designed for development of very large software systems, Ada is a good choice for open source development.

The focus of this article is to select some of the finest free Ada books which help newcomers to Ada to master this language. All of the texts here come with our recommendation, each offering unique insights, and pitched at different levels. So get reading (and learning).

1. Ada 95: The Craft of Object-Oriented Programming

Ada 95: The Craft of Object-Oriented Programming
Author John English
Format HTML
Pages 486

Ada 95: The Craft of Object-Oriented Programming is an introduction to Ada 95. It uses an example-driven approach which gradually develops small trivial programs into large case-study type programs.

The main focus of this book is on maintenance problems, and using object-oriented technology to write maintainable, extensible programs. Program design is introduced throughout the book, with hypothetical maintenance scenarios used to show design shortcomings. and revise them to accommodate maintenance needs. Practical issues such as debugging programs are tackled, and important Ada features not found in other languages are dealt with practically and early on in the text. Each chapter ends with useful exercises.

Chapters cover:

  • Programming concepts
  • Fundamentals of Ada - includes program layout, context clauses, strings, and the beginnings of a simple calculator which is extended in later chapters
  • Statements - covers If statements, assignment statements, compound conditions, the case statement, range tests, the null statement, loops, and exception handling
  • Procedures, functions and packages - Zeller's Congruence, declaring procedures and functions. The chapter also examines packages including child packages
  • Defining new data types - define data types which can be tailored fairly closely to the type of information that a particular program is concerned with modelling. The chapter covers standard data types, integers, subtypes, modular integers, real types, numeric literals, constants, and enumerations. The chapter ends with the type Boolean, and the type Character
  • Composite data types - record types, strings, declaring array types, multidimensional arrays and more
  • Exceptions - shows a programmer how to declare and re-raise exceptions, and obtain information about exceptions
  • Program design and debugging

Abstract Data Types

  • Private types - examines full and partial views, deferred constants, overloaded operators, the Use type clauses, and more
  • Designing with abstract data types - separate out the user interface, design the mode, define the view package, implement the ADT packages and more
  • Dynamic memory allocation - access types, linked lists, doubly linked lists, iterators, and more
  • Generics - generic packages, generic parameters and more
  • Building a calculator

Designing extensible software

  • Tagged types - variant records, tagged types, inheriting primitive operations and more
  • Polymorphism and dispatching - class-wide types, dispatching, abstract types, and stream input/output
  • Controlled types - memory leaks, user-defined finalisation, smart pointers, user-designed assignment, and testing controlled types
  • An object-oriented calculator
  • Designing a spreadsheet
  • Multitasking - looks at active objects, task types, communicating with tasks, sharing data between tasks, and more
  • Loose ends

2. Ada 95: The Lovelace Tutorial

Ada 95: The Lovelace Tutorial
Author David A. Wheeler
Format HTML
Pages 293

Ada 95: The Lovelace Tutorial is an introduction to Ada 95. The book explains the basics of the Ada computer programming language and assumes that the reader has had some exposure to another algorithmic programming language (such as Pascal, C, C++, Fortran, or BASIC).

Lovelace is interactive and contains many short sections, most of which end with a question to help ensure the reader understands the material. Object-oriented facilities of Ada are covered in depth, and all of the essential features of Ada programming are given thorough treatment.

Lessons cover:

  • Brief Introduction to Ada - What is Ada, simple program, use clauses, simple variable, integers, parameters and exceptions
  • Basic Ada Structure (Packages) - sections cover program units, declarations and bodies, packages, and compilation units
  • Ada Lexical Elements - looks at Ada from the bottom up
  • Procedures and Type Integer - the Ada type Integer is used to store integer values, declare a subprogram (procedure or function) declaration, subprogram Bodies and Local Variables
  • Statements (if, loop) - If statements, case statements, simple loops, and loop iteration schemes
  • Basic Types (Float, Boolean, subtypes, record) - type float, Boolean, creating types and subtypes, enumeration, arrays, records, and private and limited private types
  • Object-Oriented Programming - includes inheritance, dynamic dispatching, encapsulation, standard object-oriented format, abstract types and subprograms, and more
  • Introduction to String Types - examples types of strings, basics of type strings and more
  • Basic Input/Output - learn how to use more capabilities of Text_IO, especially how to read and write text files, line and file endings
  • Exceptions - learn how to define exceptions, how to raise exceptions, and how to handle exceptions
  • Generics - defining generics, generic formal parameters and more
  • Access Types - learn how to declare and use access types
  • Tasks and Protected Types
  • Ada-related Information
  • Ada Program Structure
  • Interfacing to Other Languages (including C and Java)
  • Miscellaneous Ada Subjects
  • Sample Ada Program "Small"

3. ADA in Action: with Practical Programming Examples

ADA in Action: with Practical Programming Examples
Author Do-While Jones
Pages 153

ADA in Action explores many selected advanced features and constructs of ADA and explains how to use them for the best results. It provides examples of how to write clear, correct, maintenance code and gives the reader re-usable components that can be used without modification in their own programs.

The book shows the reader to apply good software engineering principles and techniques to ADA programs through tested and proven methods. The text will be of benefit to military software and commercial software engineers and programmers, educational institutions and ADA programmers.

Chapters cover:

  • Introduction
  • Numeric Considerations - examines the POOR_COORDINATES package, the STANDARD_INTEGERS package, the non-existent STANDARD_FLOATS package, DIM_INT_32 package, generic INTEGER_UNITS package, generic FLOAT_UNITS package, DIM_FLOAT package, and more
  • IO Utilities - ASCII_UTILITIES package, TEXT_IO package, VIRTUAL_TERMINAL package, SCROLL_TERMINAL package, FORM_TERMINAL package, and more
  • Programming isn't software engineering - looks at the show tool, the more tool, the write tool, the line tool, the search tool, and more
  • Testing software components and programs

Next Section: 6 Invaluable Free Ada Books - Part 2

Bookmark and Share

Last Updated Sunday, May 18 2014 @ 07:09 AM EDT

We have written a range of guides highlighting excellent free books for popular programming languages. Check out the following guides: C, C++, C#, Java, JavaScript, CoffeeScript, HTML, Python, Ruby, Perl, Haskell, PHP, Lisp, R, Prolog, Scala, Scheme, Forth, SQL, Node.js (new), Fortran (new), Erlang (new), Pascal (new), and Ada (new).

Group Tests
100 Essential Apps
All Group Tests

Top Free Software
5 Office Suites
3 Lean Desktops
7 Document Processors
4 Distraction Free Tools
9 Project Management
4 Business Solutions
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 Productivity Tools
5 Note Taking Apps
9 Terminal Emulators
21 Financial Tools
5 Bitcoin Clients
21 Text Editors
21 Video Emulators
21 Home Emulators
42 Graphics Apps
6 CAD Apps
42 Scientific Apps
10 Web Browsers
42 Email Apps
12 Instant Messaging
10 IRC Clients
7 Twitter Clients
12 News Aggregators
11 VoIP Apps
42 Best Games
9 Steam Games
42 Audio Apps
5 Music Streaming
42 Video Apps
5 YouTube Tools
80 Security Apps
9 System Monitoring
8 Geometry Apps
Free Console Apps
14 Multimedia
4 Audio Grabbers
9 Internet Apps
3 HTTP Clients
5 File Managers
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
Free Web Software
21 Web CMS
14 Wiki Engines
8 Blog Apps
6 eCommerce Apps
5 Human Resource Apps
10 ERP
10 CRM
6 Data Warehouse Apps
8 Business Intelligence
6 Point-of-Sale

Other Articles
Migrating from Windows
Back up your data
20 Free Linux Books
24 Beginner Books
12 Shell Scripting Books

Older Stories
Monday 03/09
  • Raspberry Pi 2: Raspbian (ARMv6) v Linaro (ARMv7) (0)

  • Friday 03/06
  • Raspberry Pi 2 review (0)

  • Sunday 02/22
  • Chess in a Few Bytes (0)
  • Learn the Art of Computer Programming With These Great Free Beginner Books (2)
  • CD Audio Grabbers (0)

  • Monday 01/19
  • fitlet is a tiny fanless PC full of openness (0)

  • Sunday 01/18
  • MintBox Mini gives Linux users a pocket-sized PC (0)
  • 6 Invaluable Assembly Books (0)

  • Wednesday 01/14
  • Why Mac users donít switch to Linux (0)
  • MIPS Creator CI20 review (0)

  • Vote

    What Linux distribution do you run on your main computer?

    641 votes | 3 comments

    Built with GeekLog and phpBB
    Comments to the webmaster are welcome
    Copyright 2009 - All rights reserved