Gnu Ada
   HOME

TheInfoList



OR:

GNAT is a
free-software Free software, libre software, libreware sometimes known as freedom-respecting software is computer software distributed under terms that allow users to run the software for any purpose as well as to study, change, distribute it and any adapted ...
compiler In computing, a compiler is a computer program that Translator (computing), translates computer code written in one programming language (the ''source'' language) into another language (the ''target'' language). The name "compiler" is primaril ...
for the
Ada programming language Ada is a structured, statically typed, imperative, and object-oriented high-level programming language, inspired by Pascal and other languages. It has built-in language support for '' design by contract'' (DbC), extremely strong typing, expli ...
which forms part of the
GNU Compiler Collection The GNU Compiler Collection (GCC) is a collection of compilers from the GNU Project that support various programming languages, Computer architecture, hardware architectures, and operating systems. The Free Software Foundation (FSF) distributes ...
(GCC). It supports all versions of the language, i.e. Ada 2012, Ada 2005, Ada 95 and Ada 83. Originally its name was an
acronym An acronym is a type of abbreviation consisting of a phrase whose only pronounced elements are the initial letters or initial sounds of words inside that phrase. Acronyms are often spelled with the initial Letter (alphabet), letter of each wor ...
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 The United States Air Force (USAF) is the Air force, air service branch of the United States Department of Defense. It is one of the six United States Armed Forces and one of the eight uniformed services of the United States. Tracing its ori ...
awarded
New York University New York University (NYU) is a private university, private research university in New York City, New York, United States. Chartered in 1831 by the New York State Legislature, NYU was founded in 1832 by Albert Gallatin as a Nondenominational ...
(NYU) a contract to build a
free Free may refer to: Concept * Freedom, the ability to act or change without constraint or restriction * Emancipate, attaining civil and political rights or equality * Free (''gratis''), free of charge * Gratis versus libre, the difference betw ...
compiler for Ada to help with the Ada 9X standardization process. The 3-million-dollar contract required the use of the
GNU GPL The GNU General Public Licenses (GNU GPL or simply GPL) are a series of widely used free software licenses, or ''copyleft'' licenses, that guarantee end users the freedom to run, study, share, or modify the software. The GPL was the first ...
for all development, and assigned the copyright to the
Free Software Foundation The Free Software Foundation (FSF) is a 501(c)(3) non-profit organization founded by Richard Stallman on October 4, 1985. The organisation supports the free software movement, with the organization's preference for software being distributed ...
. The first official validation of GNAT occurred 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 (later AdaCore SAS) in Paris, to provide continuing development and commercial support of GNAT. The two companies always operated as one entity, but did not formally unify until 2012 as AdaCore.GNAT Pro Insider
Autumn/Winter 2014–2015, p.1
GNAT was initially released separately from the main GCC sources. On October 2, 2001, the GNAT sources were contributed to the GCC CVS repository. 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. By GCC 4.0, more exotic platforms were also able to pass 100% of the ACATS tests.


License

The compiler is licensed under the terms of the GNU GPL 3+ with GCC Runtime Library Exception. 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 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 Linux or BSD distributions and is included in the main GCC Sources. GNAT Pro is a supported version of GNAT from
AdaCore GNAT is a free-software compiler for the Ada programming language which forms part of the GNU Compiler Collection (GCC). It supports all versions of the language, i.e. Ada 2012, Ada 2005, Ada 95 and Ada 83. Originally its n ...
. 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). 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 was a GNAT version that compiled from the Ada programming language to
Java bytecode Java bytecode is the instruction set of the Java virtual machine (JVM), the language to which Java and other JVM-compatible source code is compiled. Each instruction is represented by a single byte, hence the name bytecode, making it a compact ...
. GNAT for dotNET is a GNAT version that compiles from the Ada programming language to
Common Language Infrastructure The Common Language Infrastructure (CLI) is an open specification and technical standard originally developed by Microsoft and standardized by International Organization for Standardization, ISO/International Electrotechnical Commission, IEC (ISO/ ...
for the .NET Framework and the free and open source implementations Mono and Portable.NET.


See also

*
APSE In architecture, an apse (: apses; from Latin , 'arch, vault'; from Ancient Greek , , 'arch'; sometimes written apsis; : apsides) is a semicircular recess covered with a hemispherical Vault (architecture), vault or semi-dome, also known as an ' ...
– a specification for a programming environment to support software development in Ada * * *
Ravenscar profile The Ravenscar profile is a subset of the Ada tasking features designed for safety-critical hard real-time computing. It was defined by a separate technical report in Ada 95; it is now part of the Ada 2012 Standard. It has been named after the Engl ...
– a subset of the Ada tasking features designed for safety-critical hard real-time computing *
SPARK Spark commonly refers to: * Spark (fire), a small glowing particle or ember * Electric spark, a form of electrical discharge Spark may also refer to: People * Spark (surname) * Jessica Morgan (born 1992; formerly known as Spark), female singe ...
– a programming language consisting of a highly restricted subset of Ada, annotated with meta-information describing desired component behavior and individual runtime requirements


References


Further reading

* *


External links


History of the GNAT Project

GNAT in the GCC wiki

FSF GNAT installation instructions for major platforms

The GNU Ada Project
— more FSF versions of GNAT

— packaging of GNAT and other Ada programs in
Debian Debian () is a free and open-source software, free and open source Linux distribution, developed by the Debian Project, which was established by Ian Murdock in August 1993. Debian is one of the oldest operating systems based on the Linux kerne ...

Write It in Ada — Run It on the Java Virtual Machine
{{DEFAULTSORT:Gnat Ada (programming language) Free and open source compilers Free software programmed in Ada GNU Project software New York University Software using the GPL linking exception