LinuxLinks.com
Newbies What Next ? News Forums Calendar

Search





News Sections
Home
General News (3973/0)
Reviews (628/0)
Press Releases (464/0)
Distributions (187/0)
Software (859/0)
Hardware (522/0)
Security (192/0)
Tutorials (343/0)
Off Topic (181/0)


User Functions
Username:

Password:

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


Events
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
Website www.adaic.org
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
Website www.adahome.com
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
Website people.cs.kuleuven.be/~dirk.craeynest
Author Do-While Jones
Format HTML, PDF, ASCII
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
All Group Tests

Top Free Software
6 Office Suites
7 Document Processors
6 Lean Desktops
6 Desktop Search
9 Project Management
9 Groupware Apps
14 File Managers
10 Databases
21 Backup Tools
21 DVD Tools
21 Window Managers
21 Productivity Tools
9 Terminal Emulators
21 Financial Tools
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
11 Remote Display Apps
42 Best Games
42 More Games
21 More Games
21 Notable Games (1)
21 Notable Games (2)
21 Notable Games (3)
8 ASCII Games
9 Educational Games
42 Audio Apps
42 Video Apps
6 Screencasting Apps
80 Security Apps
9 System Monitoring
6 Family History Apps
11 PDF Tools
6 Music Servers
6 Collection Managers
7 Calculator Apps
8 Geometry Apps
Free Console Apps
14 Multimedia
Programming
8 Compilers
9 IDEs
9 Debuggers
7 Revision Control Apps
6 Doc Generators
'Free' Proprietary
21 Closed-Source Apps
Top Commercial Apps
42 Games
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

All Group Tests

Other Articles
Migrating from Windows
Back up your data
Distribution Guide
Distro Portal Pages
20 Free Linux Books
Running Linux Under Windows


Older Stories
Sunday 03/23
  • Keep a Watchful Eye with these Console Based Process Viewers (0)

  • Saturday 03/15
  • Focus on Your Writing by Using Markdown Editors (0)

  • Sunday 03/09
  • Experience Home Computers that Missed the Big Time (0)

  • Monday 03/03
  • Molly: Children of the Universe (0)

  • Sunday 03/02
  • Up-and-Coming Clients to Tweet (0)
  • Reminiscing the Wonderful ZX Spectrum (0)

  • Monday 02/17
  • Need a Good Bitcoin Client? (0)

  • Sunday 02/09
  • 5 Highly Promising Cross-Platform IDEs (0)
  • Play the Best Linux Puzzle Games (0)
  • Essential LaTeX Tools (0)


  • Vote

    What do you find MOST attractive about Open Source software?

    Amount of customization
    Security
    Freedom provided
    Speed of development
    Quality
    Multiple versions
    Cost
    Potential to contribute
    Ability to modify code
    Results
    4716 votes | 2 comments

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