Features/Ada developer tools

= Feature Name = Features/AdaDeveloperTools

Summary
Ada is a structured, statically typed, imperative, wide-spectrum, and object-oriented high-level computer programming language.

Owner

 * Name: Pavel Zhukov


 * Email: landgraf@fedoraproject.org

Current status

 * Targeted release: Fedora 16
 * Last updated: 2011-06-04
 * Percentage of completion: 70%

Detailed Description
Ada is a modern programming language designed for large, long-lived applications – and embedded systems in particular – where reliability and efficiency are essential. It was originally developed in the early 1980s (this version is generally known as Ada 83) by a team led by Dr. Jean Ichbiah at CII-Honeywell-Bull in France. The language was revised and enhanced in an upward compatible fashion in the early 1990s, under the leadership of Mr. Tucker Taft from Intermetrics in the U.S. The resulting language, Ada 95, was the first internationally standardized (ISO) Object-Oriented Language. Under the auspices of ISO, a further (minor) revision was completed as an amendment to the standard; this version of the language is known as Ada 2005. Work is currently in progress on some additional features (including support for program anotations) and is expected to be completed in 2012.

Benefit to Fedora
For Fedora this brings the Ada support right up to date and alongside Debian. It also enables our developers to use a powerful, secure and fast programming language.

Scope
Required steps are:
 * 1) Ada Packaging Guidelines - accepted
 * 2) Support of Ada 2012 specification - in progress - gcc-4.7 is needed
 * 3) GprBuild - Gnat project build (Requres XMLAda) - approved
 * 4) GtkAda - Ada bindings for GTK - approved
 * 5) QtAda - Ada bindings for QT - ready for review
 * 6) GPS - GNAT Programming Studio  - in progress
 * 7) AWS - Ada web server and tools for http:// and other protocols - ready for review
 * 8) Matreshka - a set of Ada libraries to help to develop information systems. - approved

How To Test

 * 1) No special hardware is needed.
 * 2) For install compiler and project-file use: $ yum install fedora-gnat-project-common gprbuild
 * 3) Use any examples GPRs for build and test

User Experience
End users won't notice the difference. Developers will have a more powerful and up to date Ada to use.

Dependencies
None

Contingency Plan
None necessary. We should fix existing packages in order to help the Community. We should also monitor upstream development process for potentially discovered issues and proactively apply patches.

Documentation

 * Ada overview
 * Ada Reference Manual (2005)

Release Notes

 * Fedora 16 includes full stack of tools for Ada Development: Compiler (gcc-gnat), Project Builder (gprbuild), IDE (GPS) and some others
 * Ada bindings for most popular tools such as: GTK, Qt, zeromq, Databases (PostgreSQL, MySQL and SQLite) etc

Comments and Discussion

 * See Talk:Features/Ada_developer_tools