[LINK] Ada programming language security
stephen at melbpc.org.au
stephen at melbpc.org.au
Fri Dec 21 12:51:31 AEDT 2012
The new version of Ada allows developers to do contract-based programming
By Joab Jackson (IDG News Service) 20th December, 2012 18:59
http://www.ada2012.org
The International Organization for Standardization (ISO) has published as
a standard the latest version of the Ada programming language, Ada 2012,
which offers a new security feature found in few other languages, called
contract-based programming.
As Ada tends to be used in mission-critical embedded systems,
standardization allows cautious users to upgrade to the new version with
the assurance that the fresh features work as they are designed to, and
that these features will be supported by Ada-compliant tool vendors.
Contract-based programming allows programmers to better fortify their
programs against bugs and malicious misuse.
With contract-based programming, the programmer has the ability to
specify a set of conditions that must be met before a program's routine
executes, as well as to set a range of permissible output values.
By checking such pre- and post-conditions during run time, a program
ensures that it can't be injected with or emit malicious or incorrect
data, potentially making it safer and more reliable.
While contract programming is generally considered to be a good idea by
many computer science academicians, few languages today support it, at
least without additional add-ons for the compiler. The Eiffel programming
language is probably the most widely known language that natively
supports design by contract.
Contract-based programming fits with DO-178C/ED-12C, a new safety
standard for avionics software, managed by the RTCA (Radio Technical
Commission for Aeronautics).
Ada 2012 has a number of other new features as well.
The updated language is better suited for working in multicore
environments. The designers also worked on making the language more
expressive, adding in more powerful iterators and additional ways of
formulating conditional expressions.
The U.S. Defense Department commissioned the development of Ada in the
late 1970s as a way to consolidate the proliferating number of languages
then being used across the military.
While Ada never caught on as a general use language -- or even as the
sole language for the Defense Department -- it has found a home in
aviation as well as other industries that require real-time ultra-
reliable systems.
Ada 2012 is the first major update to the Ada standard in seven years.
The Ada Rapporteur Group (ARG) of the ISO/IEC (International
Electrotechnical Commission) JTC 1 (Joint Technical Committee) revised
the language.
AdaCore has already released an Ada 2012 complier and associated tools.
Green Hills Software and Atego also offer Ada tools as well.
Refs:
http://www.arnnet.com.au/article/445154/new_ada_2012_iso_standard_offers_s
ecurity_boost/
http://blogs.msdn.com/b/larryosterman/archive/2007/01/04/contractual-
obligations.aspx
http://gcn.com/Articles/2008/04/11/The-return-of-Ada.aspx?Page=1
http://www.eiffel.com/developers/design_by_contract.html
Cheers,
Stephen
More information about the Link
mailing list