Ada 编程语言是否仍然适用于军队?
Is the Ada programming language still relevant in the military?
我现在知道很多编程语言了。回到我 18 岁的时候,我差点加入了美国空军,并且对 Ada 进行了测试。那是十多年前的事了。 Ada 编程语言在军事上是否仍像以前一样重要?
我想知道新的军事软件项目是否仍然使用 Ada 作为他们的首选语言进行编程。
是的,因为 Ada 用于关键任务设备可能在软件错误的情况下造成重大灾难的地方(例如航空电子设备、空中交通管制,当然还有军事),它仍在这些行业中使用,我怀疑它们会改变。
今天仍有新项目在 Ada 中开发。要求 Ada 的要求在几年前就被废弃了,但对于某些应用程序,Ada 是唯一可靠的 ("trusted") 选项。
Ada the Language: Alive and in Flight - October 10, 2016 摘录:
The Changing Context for DOD Software Development For nearly two
decades, the Ada programming language has been a cornerstone of
efforts by the Department of Defense (DOD) to improve its software
engineering practices. DOD created Ada in the 1970s to serve as a
department-wide standard that would satisfy its special requirements
for embedded and mission-critical software, and would also encourage
good software engineering. Both the new language and the new software
engineering ideas associated with it met with some criticism, and both
have evolved as a result. Today, Ada is the most commonly used
language for mission-critical defense software, which includes weapon
systems and performance-critical command, control, communications, and
intelligence (C3I) systems. DOD's inventory contains nearly 50 million
lines of Ada code in these applications (Hook et al., 1995). Given the
long operational life of such systems, DOD has made a significant
investment in Ada technology. Ada is the second most commonly used
language (after Cobol) for DOD automated information systems, which
include payroll and logistics programs. The DOD inventory contains
more than 8 million lines of Ada code in these applications (Hook et
al., 1995).
2016 年 11 月,美国国家标准与技术研究院 (NIST) 发布了 NIST-IR-8151 报告 "Dramatically Reducing Software Vulnerabilities"。该报告可在 https://doi.org/10.6028/NIST.IR.8151 获取。
以下是该报告的节选:
Two presentations at the Software Measures and Metrics to Reduce
Security Vulnerabilities (SwMM-RSV) workshop, Andrew Walenstein’s
“Measuring Software Analyzability” and James Kupsch’s “Dealing with
Code that is Opaque to Static Analysis,” point the direction to new
software measures. Both stressed that code should be amenable to
automatic analysis. Both presented approaches to define what it means
that code is readily analyzed, why analyzability contributes to
reduced vulnerabilities and how analyzability could be measured and
increased.
There are subsets of programming languages that are designed to be
analyzable, such as SPARK, or to be less error-prone, such as Less
Hatton’s SaferC. Workshop participants generally favored using better
languages, for example, functional languages, such as F# or ML.
However, there was no particular suggestion of the language, or
languages, of the future.
We note that with few exceptions, such as Ada 2012 [Barnes13], which
has SPARK, new languages have poor tool support. Supporting the
construction of tools is vital for the adoption and safe use of new
languages.
我现在知道很多编程语言了。回到我 18 岁的时候,我差点加入了美国空军,并且对 Ada 进行了测试。那是十多年前的事了。 Ada 编程语言在军事上是否仍像以前一样重要?
我想知道新的军事软件项目是否仍然使用 Ada 作为他们的首选语言进行编程。
是的,因为 Ada 用于关键任务设备可能在软件错误的情况下造成重大灾难的地方(例如航空电子设备、空中交通管制,当然还有军事),它仍在这些行业中使用,我怀疑它们会改变。
今天仍有新项目在 Ada 中开发。要求 Ada 的要求在几年前就被废弃了,但对于某些应用程序,Ada 是唯一可靠的 ("trusted") 选项。
Ada the Language: Alive and in Flight - October 10, 2016 摘录:
The Changing Context for DOD Software Development For nearly two decades, the Ada programming language has been a cornerstone of efforts by the Department of Defense (DOD) to improve its software engineering practices. DOD created Ada in the 1970s to serve as a department-wide standard that would satisfy its special requirements for embedded and mission-critical software, and would also encourage good software engineering. Both the new language and the new software engineering ideas associated with it met with some criticism, and both have evolved as a result. Today, Ada is the most commonly used language for mission-critical defense software, which includes weapon systems and performance-critical command, control, communications, and intelligence (C3I) systems. DOD's inventory contains nearly 50 million lines of Ada code in these applications (Hook et al., 1995). Given the long operational life of such systems, DOD has made a significant investment in Ada technology. Ada is the second most commonly used language (after Cobol) for DOD automated information systems, which include payroll and logistics programs. The DOD inventory contains more than 8 million lines of Ada code in these applications (Hook et al., 1995).
2016 年 11 月,美国国家标准与技术研究院 (NIST) 发布了 NIST-IR-8151 报告 "Dramatically Reducing Software Vulnerabilities"。该报告可在 https://doi.org/10.6028/NIST.IR.8151 获取。 以下是该报告的节选:
Two presentations at the Software Measures and Metrics to Reduce Security Vulnerabilities (SwMM-RSV) workshop, Andrew Walenstein’s “Measuring Software Analyzability” and James Kupsch’s “Dealing with Code that is Opaque to Static Analysis,” point the direction to new software measures. Both stressed that code should be amenable to automatic analysis. Both presented approaches to define what it means that code is readily analyzed, why analyzability contributes to reduced vulnerabilities and how analyzability could be measured and increased.
There are subsets of programming languages that are designed to be analyzable, such as SPARK, or to be less error-prone, such as Less Hatton’s SaferC. Workshop participants generally favored using better languages, for example, functional languages, such as F# or ML. However, there was no particular suggestion of the language, or languages, of the future.
We note that with few exceptions, such as Ada 2012 [Barnes13], which has SPARK, new languages have poor tool support. Supporting the construction of tools is vital for the adoption and safe use of new languages.