GNAT

From Infogalactic: the planetary knowledge core
(Redirected from GNAT Pro)
Jump to: navigation, search

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

Lua error in package.lua at line 80: module 'strict' not found.

GNAT
300px
Ada source within GPS
Developer(s) New York University (NYU), AdaCore and the GNU Project
Initial release 1995; 29 years ago (1995)
Stable release FSF GNAT 4.9.2[1] GNAT Pro 7.2.1 (2014-02-10)[2]
Operating system FreeBSD, GNU/Linux,
Solaris/SPARC,
Microsoft Windows,
Mac OS X,
plus others as supported by FSF GNAT within GCC
Type Compiler
License GNU GPL 3+ with GCC Runtime Library Exception[3]
Website www.getadanow.com - FSF GNAT
www.adacore.com/home/gnatpro/ GNAT Pro

GNAT is a free-software compiler for the Ada programming language which forms part of the GNU Compiler Collection. It supports all versions of the language, i.e. Ada 2012, Ada 2005, Ada 95 and Ada 83. Originally its name was an acronym that stood for GNU NYU Ada Translator, but that name no longer applies. The front-end and run-time are written in Ada.

History

The GNAT project started in 1992 when the United States Air Force awarded New York University (NYU) a contract to build a free compiler for Ada to help with the Ada 9X standardization process. The 3-million-dollar contract required the use of the GNU GPL for all development, and assigned the copyright to the Free Software Foundation. The first official validation of GNAT happened in 1995.

In 1994 and 1996, the original authors of GNAT founded two sister companies, Ada Core Technologies in New York City and ACT-Europe in Paris, to provide continuing development and commercial support of GNAT. The two companies merged as AdaCore in 2004.[4]

GNAT was initially released separately from the main GCC sources. On October 2, 2001 the GNAT sources were contributed to the GCC CVS repository.[5] The last version to be released separately was GNAT 3.15p, based on GCC 2.8.1, on October 2, 2002. Starting with GCC 3.4, on major platforms the official GCC release is able to pass 100% of the ACATS Ada tests included in the GCC testsuite. In GCC 4.0, more exotic platforms are also able to pass 100% of ACATS.

License

The compiler is licensed under the terms of the GNU GPL 3+ with GCC Runtime Library Exception.[3]

All versions leading up to and including 3.15p are licensed under the GMGPL offering similar runtime exceptions. The GMGPL license is GNU GPL 2 with a linking exception that permits software that with licenses that are incompatible with the GPL to be linked with the output of Ada standard generic libraries that are supplied with GNAT without breaching the license agreement.

Versions

FSF GNAT is part of most major GNU/Linux or BSD distributions and is included in the main GCC Sources.

GNAT Pro is a supported version of GNAT from AdaCore.

In addition to FSF GNAT and AdaCore's GNAT Pro, AdaCore releases additional versions (GNAT-GPL, a public older version of GNAT Pro, and GNAT GAP, a version for AdaCore's educational programs).[6] These AdaCore versions have the runtime exceptions removed, this requires software that is linked with the standard libraries to have GPL-compatible licenses to avoid being in breach of the license agreement.

JGNAT is a GNAT version that compiles from the Ada programming language to Java bytecode. GNAT for dotNET is a GNAT version that compiles from the Ada programming language to Common Language Infrastructure for the .NET Framework and the free and open source implementations Mono and Portable.NET.

See also

References

  1. https://www.gnu.org/software/gcc/releases.html
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. 3.0 3.1 Lua error in package.lua at line 80: module 'strict' not found.
  4. GNAT Pro Insider Autumn/Winter 2014–2015, p.1
  5. GCC CVS mailing list archive "New language: Ada"
  6. Lua error in package.lua at line 80: module 'strict' not found.

Further reading

  • Lua error in package.lua at line 80: module 'strict' not found.
  • Lua error in package.lua at line 80: module 'strict' not found.

External links