@@ -76,8 +76,8 @@ Ada is multi-faceted. From one perspective it is a classical stack-based
7676general-purpose language, not tied to any specific development methodology.
7777It has a simple syntax, structured control statements, flexible data
7878composition facilities, strong type checking, traditional features for code
79- modularization (" subprograms" ), and a mechanism for detecting and responding
80- to exceptional run-time conditions (" exception handling" ).
79+ modularization (* subprograms * ), and a mechanism for detecting and responding
80+ to exceptional run-time conditions (* exception handling * ).
8181But it also includes much more:
8282
8383.. index :: single: Ada language; Scalar ranges
@@ -163,10 +163,10 @@ Programming in the large
163163^^^^^^^^^^^^^^^^^^^^^^^^
164164
165165The original Ada 83 design introduced the package construct,
166- a feature that supports encapsulation (" information hiding" ) and
166+ a feature that supports encapsulation (* information hiding * ) and
167167modularization, and which allows the developer to control the
168168namespace that is accessible within a given compilation unit. Ada 95
169- introduced the concept of " child units," adding considerable flexibility
169+ introduced the concept of * child units *, adding considerable flexibility
170170and easing the design of very large systems.
171171Ada 2005 extended the language's modularization facilities by allowing
172172certain kinds of mutual references between package specifications,
@@ -180,7 +180,7 @@ Generic Templates
180180A key to reusable components is a mechanism for parameterizing modules
181181with respect to data types and other program entities, for example a
182182stack package for an arbitrary element type. Ada meets this requirement
183- through a facility known as " generics" ; since the parameterization is done
183+ through a facility known as * generics * ; since the parameterization is done
184184at compile time, run-time performance is not penalized.
185185
186186.. index :: single: Ada language; Object-Oriented Programming (OOP)
@@ -199,10 +199,10 @@ performance.
199199However, large real-time systems often have components such as GUIs that do
200200not have real-time constraints and that could be most effectively developed
201201using OOP features. In part for this reason, Ada 95 supplies comprehensive
202- support for OOP, through its " tagged type" facility: classes, polymorphism,
202+ support for OOP, through its * tagged type * facility: classes, polymorphism,
203203inheritance, and dynamic binding. Ada 95 does not require automatic garbage
204204collection but rather supplies definitional features allowing the developer
205- to supply type-specific storage reclamation operations (" finalization" ).
205+ to supply type-specific storage reclamation operations (* finalization * ).
206206Ada 2005 brought additional OOP features including Java-like interfaces and
207207traditional :ada: `obj.op(...) ` operation invocation notation.
208208
@@ -217,10 +217,10 @@ Concurrent Programming
217217^^^^^^^^^^^^^^^^^^^^^^
218218
219219Ada supplies a structured, high-level facility for concurrency. The unit of
220- concurrency is a program entity known as a " task" . Tasks can communicate
220+ concurrency is a program entity known as a * task * . Tasks can communicate
221221implicitly via shared data or explicitly via a synchronous control mechanism
222222known as the rendezvous. A shared data item can be defined abstractly as a
223- " protected object" (a feature introduced in Ada 95), with operations executed
223+ * protected object * (a feature introduced in Ada 95), with operations executed
224224under mutual exclusion when invoked from multiple tasks.
225225Protected objects provide the functionality of semaphores and condition
226226variables but more clearly and reliably (e.g., avoiding subtle race
@@ -237,7 +237,7 @@ multi-core architectures were introduced in Ada 2012.
237237Systems Programming
238238^^^^^^^^^^^^^^^^^^^
239239
240- Both in the " core" language and the Systems Programming Annex, Ada supplies
240+ Both in the * core * language and the Systems Programming Annex, Ada supplies
241241the necessary features for hardware-specific processing.
242242For example, the programmer can specify the bit layout for fields in a record,
243243define alignment and size properties, place data at specific machine
@@ -412,7 +412,7 @@ is compiled.
412412
413413In addition, the language supports mathematical proof and can thus provide
414414high confidence that the software meets a range of assurance requirements:
415- from the absence of run-time errors (" AORTE" ), to the enforcement of safety
415+ from the absence of run-time errors (* AORTE * ), to the enforcement of safety
416416or security properties, to compliance with a formal specification of the
417417program's required behavior.
418418
@@ -446,7 +446,7 @@ automated tools.
446446Hybrid Verification
447447~~~~~~~~~~~~~~~~~~~
448448
449- SPARK supports " hybrid verification" , which combines testing and
449+ SPARK supports * hybrid verification * , which combines testing and
450450formal proofs.
451451As an example, an existing project in Ada and C can adopt SPARK to implement
452452new functionality for critical components. The SPARK units can be analyzed
@@ -496,7 +496,7 @@ GNAT Pro Assurance is a specialized version of the GNAT Pro development
496496environment, available for any of the products in the GNAT Pro family:
497497GNAT Pro for Ada, GNAT Pro for C, GNAT Pro for C++, and GNAT Pro for Rust.
498498It is targeted to projects
499- requiring customized support, including bug fixes and " known problems"
499+ requiring customized support, including bug fixes and * known problems *
500500analyses, on a specific version of the toolchain. This service is
501501especially suitable for applications with long maintenance cycles or
502502certification requirements, since critical updates to the compiler or
@@ -853,7 +853,7 @@ GNATtest
853853The GNATtest tool helps create and maintain a complete unit testing
854854infrastructure for complex projects. It captures
855855the simple idea that each public subprogram (these are known as
856- " visible" subprograms in Ada) should have at least one corresponding
856+ * visible * subprograms in Ada) should have at least one corresponding
857857unit test. GNATtest takes a project file as input, and produces two outputs:
858858
859859* The complete harnessing code for executing all the unit tests under
@@ -1049,7 +1049,7 @@ appearance to be customized in the editor.
10491049
10501050GNAT Studio is intuitive to new users thanks to its menu-driven interface
10511051with extensive online help (including documentation on all the
1052- menu selections) and " tool tips" . The Project Wizard makes it simple to get
1052+ menu selections) and * tool tips * . The Project Wizard makes it simple to get
10531053started, supplying default values for almost all of the project properties.
10541054For experienced users, it offers the necessary level of control for
10551055advanced purposes; e.g., the ability to run command scripts. Anything that
0 commit comments