Responsible programming

Commun. ACM Pub Date : 2014-07-01 DOI:10.1145/2631185
V. Cerf
{"title":"Responsible programming","authors":"V. Cerf","doi":"10.1145/2631185","DOIUrl":null,"url":null,"abstract":"W ELCOME TO \" CERF'S UP! \" I am grateful for Editor-in-Chief Moshe Vardi's invitation to continue writing for Communications ; this column succeeds the \" From the President \" column I penned during my service to ACM in that role. Let me congratulate Alex Wolf, the newly elected ACM president. I know he will give exemplary service to our organization. Congratulations also go to Vicki Hanson and Erik Altman in their new roles as vice president and secretary/ treasurer respectively. I know this team will provide first-rate leadership. I also thank Alain Chenais, who ends his term as Past President and I begin mine. He has been a staunch, reliable, and active leader in ACM matters and I expect this will continue. There are many others elected to new positions or moving on as their terms in office end. I thank them all without enumeration, and commend them to your attention. Lastly, allow me to note the enormous contributions of the ACM staff and, especially , the leadership of John White, CEO, and Pat Ryan, COO of ACM. They have accumulated a truly enviable record of steadfast leadership spanning the terms of many elected ACM officers. Now to the substance of this column: responsible programming. What do I mean by that? In a nutshell, I think it means people who write software should have a clear sense of responsibility for its reliable operation and resistance to compromise and error. We do not seem to know how to write software that has no bugs…at least, not yet. But that, in a sense, is the very subject I want to explore. My very good friend, Steve Crocker, drew me into a conversation about this topic a short while ago. As a graduate student , he had pursued a dissertation on provable correctness of programs. While this is not a new topic, the objective continues to elude us. We have developed related tactics for trying to minimize errors. Model checking is one good example of a systematic effort to improve reliability for which ACM gave the Turing Award in 2007 to Edmund Clarke, Allen Emerson, and Joseph Sifakis. What is apparent, and emphasized by Crocker, is the tools available to programmers for validating assertions about program operation are complex, with user interfaces only a mother could love (my characterization). Formal proofs are difficult, especially for anything but the simplest sort of program. …","PeriodicalId":10645,"journal":{"name":"Commun. ACM","volume":"1 1","pages":"7"},"PeriodicalIF":0.0000,"publicationDate":"2014-07-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":"4","resultStr":null,"platform":"Semanticscholar","paperid":null,"PeriodicalName":"Commun. ACM","FirstCategoryId":"1085","ListUrlMain":"https://doi.org/10.1145/2631185","RegionNum":0,"RegionCategory":null,"ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":null,"EPubDate":"","PubModel":"","JCR":"","JCRName":"","Score":null,"Total":0}
引用次数: 4

Abstract

W ELCOME TO " CERF'S UP! " I am grateful for Editor-in-Chief Moshe Vardi's invitation to continue writing for Communications ; this column succeeds the " From the President " column I penned during my service to ACM in that role. Let me congratulate Alex Wolf, the newly elected ACM president. I know he will give exemplary service to our organization. Congratulations also go to Vicki Hanson and Erik Altman in their new roles as vice president and secretary/ treasurer respectively. I know this team will provide first-rate leadership. I also thank Alain Chenais, who ends his term as Past President and I begin mine. He has been a staunch, reliable, and active leader in ACM matters and I expect this will continue. There are many others elected to new positions or moving on as their terms in office end. I thank them all without enumeration, and commend them to your attention. Lastly, allow me to note the enormous contributions of the ACM staff and, especially , the leadership of John White, CEO, and Pat Ryan, COO of ACM. They have accumulated a truly enviable record of steadfast leadership spanning the terms of many elected ACM officers. Now to the substance of this column: responsible programming. What do I mean by that? In a nutshell, I think it means people who write software should have a clear sense of responsibility for its reliable operation and resistance to compromise and error. We do not seem to know how to write software that has no bugs…at least, not yet. But that, in a sense, is the very subject I want to explore. My very good friend, Steve Crocker, drew me into a conversation about this topic a short while ago. As a graduate student , he had pursued a dissertation on provable correctness of programs. While this is not a new topic, the objective continues to elude us. We have developed related tactics for trying to minimize errors. Model checking is one good example of a systematic effort to improve reliability for which ACM gave the Turing Award in 2007 to Edmund Clarke, Allen Emerson, and Joseph Sifakis. What is apparent, and emphasized by Crocker, is the tools available to programmers for validating assertions about program operation are complex, with user interfaces only a mother could love (my characterization). Formal proofs are difficult, especially for anything but the simplest sort of program. …
负责编程
欢迎来到“cerf 's up !”感谢Moshe Vardi总编辑邀请我继续为《通讯》撰稿;本专栏接替了我在ACM任职期间撰写的“来自总统”专栏。让我祝贺亚历克斯·沃尔夫,新当选的ACM主席。我知道他将为我们的组织作出模范服务。同时祝贺Vicki Hanson和Erik Altman分别担任副总裁和秘书/财务主管。我知道这个团队会提供一流的领导力。我还要感谢阿兰·切尼,他将结束他的前任总统任期,而我将开始我的任期。他一直是ACM事务中坚定、可靠和积极的领导者,我希望他能继续这样做。还有许多人当选新职位,或在任期结束后离职。我对他们一一表示感谢,并提请您注意。最后,请允许我指出ACM员工的巨大贡献,特别是ACM首席执行官John White和首席运营官Pat Ryan的领导。他们在许多当选的ACM官员任期内积累了令人羡慕的坚定领导记录。现在进入本专栏的实质内容:负责任的编程。这是什么意思呢?简而言之,我认为这意味着编写软件的人应该对其可靠运行和抵抗妥协和错误有明确的责任感。我们似乎不知道如何编写没有bug的软件……至少现在还不知道。但从某种意义上说,这正是我想要探索的主题。不久前,我的好朋友史蒂夫·克罗克(Steve Crocker)把我拉进了一个关于这个话题的谈话中。在读研究生时,他写了一篇关于程序可证明正确性的论文。虽然这不是一个新话题,但我们仍然无法实现目标。为了尽量减少错误,我们已经制定了相关的策略。模型检查是一个很好的例子,系统地努力提高可靠性,为此ACM在2007年将图灵奖授予了Edmund Clarke, Allen Emerson和Joseph Sifakis。显而易见的是,Crocker强调,程序员用来验证程序操作断言的工具是复杂的,其用户界面只有母亲才会喜欢(我的描述)。形式证明是困难的,尤其是对于最简单的程序。...
本文章由计算机程序翻译,如有差异,请以英文原文为准。
求助全文
约1分钟内获得全文 求助全文
来源期刊
自引率
0.00%
发文量
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
copy
已复制链接
快去分享给好友吧!
我知道了
右上角分享
点击右上角分享
0
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信