EEJournal

专题文章
现在就订阅

合适的工作的工具

名字是奇怪,和编程语言的名字甚至陌生人。考虑到成千上万的语言存在,这是不可避免的,有些奇怪的。英语是一个好名字,原来是non-runner,和“最后一个”是click-and-point代码生成器,生成基本(缩写词语言的的最后一名)。古怪的Python -我有一个弱点,例如命名Monty Python的飞行马戏团——但也喜欢优雅的语言命名的先锋。奥卡姆命名十四分之一世纪的哲学家,虽然我们仍然等待语言称为恩典或料斗,Ada的敬意,伯爵夫人浪子,仍然是令人愉悦的。巧合的是英国2009年Ada会议在Ada Lovelace Day(3月24日th)- - -一天庆祝妇女在技术,旨在鼓励更多的女性进入技术的角色。这看起来似乎是一个好机会在Ada的一些最新发展。

发展吗?艾达一个老式的失败吗?没有它或多或少地死在美国国防部时,委托它首先,决定放弃强制使用?嗯,没有。Ada仍在使用安全关键任务系统,特别是对于大型系统。公平地说,人们有理由对Ada有点可疑。第一次尝试世界各地的国防部和其他国防组织通过使用Ada恫吓,而成功在某种程度上,它的语言使用的数量也在大幅度减少国防项目,为时尚早。开发工具不到位:特别是,编译器没有准备好。由于艾达的优势之一是检查功能构建到编译器,这是一个主要的缺点。也有说服程序员的问题,这是值得学习的语言。

从早期的溃败,Ada稳步发展。强类型,模块化机制(包),运行时检查,并行处理(任务)、异常处理、泛型、和支持面向对象编程,包括动态调度。而Ada开发专门为高安全性的应用程序时,仍有地区模棱两可的问题证明Ada编译项目是安全可靠的,所以两种替代的方法是,建立在Ada的正式定义:Ravenscar概要和火花的语言。

Ravenscar是英国约克郡的一个小村庄,并设置为第八届国际实时Ada车间(IRTAW) 1997年4月。这个车间讨论了实现实时程序的问题,尤其是一些并发实时,可靠和有效的,一起验证的相关问题。车间看到路线实现更好的项目概要,Ada语言的正式定义的子集,可以由编译器。应用Ravenscar概要会过滤掉很多的Ada的特性,简化了运行时系统的语义。一个运行时实现使用概要文件创建的小型、高效。也可以验证它的认证的正式认证系统完整性水平最高。

火花是支持的开发和实践,公司总部位于浴,英格兰,专门从事高完整性系统。而引发Ada的网站谈判,这句话被其他公司使用,实践通常谈到火花不是Ada的子集,而是作为一个“正式定义基于Ada编程语言。“这是艾达”没有歧义。“陪火花,实践也建立了火花审查员工具,“检查火花每一步的连贯性。“用这些工具,设计师定义了“合同”——定义项目应该做什么。引发考官的想法是经常使用,从骨架设计到完成部分的实现,确保传递给编译器的代码没有错误和符合合同。实践是指做软件的方法,而不是测试的缺点。

尽管火花已经存在了超过20年,有着令人印象深刻的记录交付系统,实践而言,它并没有实现其商业潜力。在《美国残疾人法》发布会上,实践宣布了一项商业与AdaCore搭配。AdaCore,法美公司,最出名的是它支持的开源蚊技术。蚊通常被认为是,用于速记,Ada的开源编译器。但是技术不仅包括编译器,但扩展为Ada IDE调试器,库和绑定和其他工具。AdaCore还支持一个商业版本的小昆虫,GNATPro。现在AdaCore分发火花Pro,一个包的火花,火花考官和其他火花工具加上蚊编程Studio IDE。

实践也创造了火花专业度Blackbelt版,这将增加火花Pro火花证明检查器和RavenSPARK Ravenscar概要文件并行项目的火花。(这是获得这样乱伦的——一个家庭树绘图仪会放弃这一点。)AdaCore也将接管所有支持火花,而实践将继续开发语言和工具。

鉴于Ada是国内在大型系统中,这是不足为奇为UML工具找到产品公告。英国Objektum解决方案是一个小公司,开发了一个工具,LegacyBridge,吸吮遗留Ada到UML。为什么你要这么做?国防、航空航天、交通运输和其他地区Ada已成功部署有很长的产品生命周期。核电站持续几十年,飞机飞了很长一段时间,等等。但在他们的一生中他们可能需要升级和修改。如果捕获的设计在造型语言,改变是容易实现及其后果更容易预测。所以能够回顾从工作代码构建模型有明显的好处。Objektum更进一步:UML之前,欧洲航空电子设备和空间项目使用遮光罩(层次的面向对象设计)方法,设计了由欧洲航天局。LegacyBridge还将罩表示,把它们转换成UML。

新项目可以受益于一个方法由肯尼迪卡特,另一家英国公司。它使用可执行的UML, UML的一个子集,比完整的UML语义“清洁”,和一个火花发生器,从UML到火花的代码。这项工作是由肯尼迪卡特和英国的核武器建立(AWE)。

敬畏也演示了如何得到火花Ada对嵌入式应用程序运行在一个8位处理器。使用一个数据记录器应用程序运行在一个Atmel AVR单片机,他们能够证明这是可能的发展引发Ada代码,使用火花审查员和AdaCore编译器,速度比在c创建相同的应用程序开发的团队使用经验较少的员工,能够识别硬件问题更容易,因为他们有一个非常高水平的信心,代码的质量。

考虑到情感,编程语言的选择,有很少的传福音会议期间,也许是因为会众和牧师都是在相同的教堂。全体开放是最接近的了,吉姆·萨顿洛克希德·马丁公司,没有尽可能多的福音宣讲《美国残疾人法》显示,Ada的正确方法是通过精益系统工程。也许是不公平的说得到的印象是,精益技术的结果是一个数学的方法测量常识,但似乎就是这样。

罪的后果在打开幻灯片阐明:“只有36%的软件项目开始于2006年…[是]成功,”“选择错误的语言将会确保产品不会船,”和“大多数编程开始前项目失败。“建设从这一系列步骤,试图提供客观的指导在选择编程语言相匹配的项目目标,使用所有的利益相关者的主观意见,其中可能包括首席执行官、客户,向客户和顾问。这些产生了令人印象深刻的表,排名的属性,实现一个成功的项目是必要的。考虑到观众,这是不足为奇的语言选择的例子是Ada工作。片刻的严重性,大型项目技术显然重要的教训,但它是不清楚世界上许多小商店开发嵌入式系统可以说服预算持有人基金这样的分析。也很难看到一个公司有限的专业知识(甚至完全缺乏专业知识)在语言X能接受语言的结论是正确的项目,或者X因素语言决策矩阵。

但这一切返回到简单的基础,没有所谓的完美的语言。PL / 1是IBM的尝试创建一个构建在正式语言科学和商业应用的基础。这是一个失败。编程语言是工具,而我们大多数人滥用工具在我们真正的工具箱,我们仍然知道正确的解决方案存在的问题。对于许多实时、安全至上的系统中,艾达,或其下的一个,可能是正确的解决方案。

留下一个回复

有特色的博客
2023年6月2日
多样性、公正和包容(一些)不仅仅是单词但节奏体现了通过我们的文化价值观。在DEI@Cadence博客系列,你会发现一个社区,员工分享他们的观点和经验。通过提供个人的……
2023年6月2日
我刚听到的东西真的给了我一定的思考时间,死亡的事实,每个人都经历两种形式(如果让我选择,我宁愿没有经验甚至)....
2023年6月2日
探索大数据分析的重要性在半导体制造过程中,从整个芯片设计者把见解硅生命周期。这个职位要求芯片复杂性和制造业需求要求数据分析第一次出现在新贺南洪……

有特色的视频

左移位与权力模拟使用真实的工作负载

Synopsys对此

增加软件的内容和更大的芯片要求pre-silicon权力对于现实生活中的工作负载。Synopsys对此资料、分析和模拟签收权力步骤来识别和分析硅的有趣的刺激秒运行时进行了讨论。

了解更多关于Synopsys对此“节能soc的解决方案

了纸

EC解决技术简单

节奏设计系统

的节奏®摄氏™EC解决支持电子系统设计师最具挑战性的热管理/电子冷却问题迅速和准确。利用强大的计算引擎和网格技术,设计者可以模型和分析流体流动和传热的即使是最复杂的电子系统,确保电子冷却系统是可靠的。

点击阅读更多

以注入式教学法亚博里的电子竞技

兆瓦充电器在电动商用车的基础设施
为了推进商业化电动汽车的大规模实施,我们需要考虑效率、可用性、可靠性和寿命的照耀,这些应用程序所需的充电器。注入式教学法在这节课中,马丁·舒尔茨博亚博里的电子竞技士从Littelfuse加入阿米莉亚道尔顿讨论电动商用车的基础设施需求,电隔离扮演的角色,为什么晶体闸流管的未来可能是一个很好的选择电动商用车。
2023年1月17日,
18322的浏览量
Baidu