Summit on Advances in Programming Languages最新文献

筛选
英文 中文
New Directions for Network Verification 网络验证的新方向
Summit on Advances in Programming Languages Pub Date : 2015-05-01 DOI: 10.4230/LIPIcs.SNAPL.2015.209
Aurojit Panda, K. Argyraki, Shmuel Sagiv, Michael Schapira, S. Shenker
{"title":"New Directions for Network Verification","authors":"Aurojit Panda, K. Argyraki, Shmuel Sagiv, Michael Schapira, S. Shenker","doi":"10.4230/LIPIcs.SNAPL.2015.209","DOIUrl":"https://doi.org/10.4230/LIPIcs.SNAPL.2015.209","url":null,"abstract":"Network verification has recently gained popularity in the programming languages and verification community. Much of the recent work in this area has focused on verifying the behavior of simple networks, whose actions are dictated by static, immutable rules configured ahead of time. However, in reality, modern networks contain a variety of middleboxes, whose behavior is affected both by their configuration and by mutable state updated in response to packets received by them. In this position paper we critically review recent progress on network verification, propose some next steps towards a more complete form of network verification, dispel some myths about networks, provide a more formal description of our approach, and end with a discussion of the formal questions posed to this community by the network verification agenda.","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2015-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129409399","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 15
The Racket Manifesto 球拍宣言
Summit on Advances in Programming Languages Pub Date : 2015-05-01 DOI: 10.4230/LIPIcs.SNAPL.2015.113
M. Felleisen, R. Findler, M. Flatt, S. Krishnamurthi, Eli Barzilay, J. McCarthy, Sam Tobin-Hochstadt
{"title":"The Racket Manifesto","authors":"M. Felleisen, R. Findler, M. Flatt, S. Krishnamurthi, Eli Barzilay, J. McCarthy, Sam Tobin-Hochstadt","doi":"10.4230/LIPIcs.SNAPL.2015.113","DOIUrl":"https://doi.org/10.4230/LIPIcs.SNAPL.2015.113","url":null,"abstract":"The creation of a programming language calls for guiding principles that point the developers to goals. This article spells out the three basic principles behind the 20-year development of Racket. First, programming is about stating and solving problems, and this activity normally takes place in a context with its own language of discourse; good programmers ought to formulate this language as a programming language. Hence, Racket is a programming language for creating new programming languages. Second, by following this language-oriented approach to programming, systems become multi-lingual collections of interconnected components. Each language and component must be able to protect its specific invariants. In support, Racket offers protection mechanisms to implement a full language spectrum, from C-level bit manipulation to soundly typed extensions. Third, because Racket considers programming as problem solving in the correct language, Racket also turns extra-linguistic mechanisms into linguistic constructs, especially mechanisms for managing resources and projects. The paper explains these principles and how Racket lives up to them, presents the evaluation framework behind the design process, and concludes with a sketch of Racket's imperfections and opportunities for future improvements.","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2015-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126519000","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 68
Everything You Want to Know About Pointer-Based Checking 你想知道的关于指针检查的一切
Summit on Advances in Programming Languages Pub Date : 2015-05-01 DOI: 10.4230/LIPIcs.SNAPL.2015.190
Santosh Nagarakatte, Milo M. K. Martin, S. Zdancewic
{"title":"Everything You Want to Know About Pointer-Based Checking","authors":"Santosh Nagarakatte, Milo M. K. Martin, S. Zdancewic","doi":"10.4230/LIPIcs.SNAPL.2015.190","DOIUrl":"https://doi.org/10.4230/LIPIcs.SNAPL.2015.190","url":null,"abstract":"Lack of memory safety in C/C++ has resulted in numerous security vulnerabilities and serious bugs in large software systems. This paper highlights the challenges in enforcing memory safety for C/C++ programs and progress made as part of the SoftBoundCETS project. We have been exploring memory safety enforcement at various levels - in hardware, in the compiler, and as a hardware-compiler hybrid - in this project. Our research has identified that maintaining metadata with pointers in a disjoint metadata space and performing bounds and use-after-free checking can provide comprehensive memory safety. We describe the rationale behind the design decisions and its ramifications on various dimensions, our experience with the various variants that we explored in this project, and the lessons learned in the process. We also describe and analyze the forthcoming Intel Memory Protection Extensions (MPX) that provides hardware acceleration for disjoint metadata and pointer checking in mainstream hardware, which is expected to be available later this year.","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2015-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115870431","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 69
The Silently Shifting Semicolon 无声移动分号
Summit on Advances in Programming Languages Pub Date : 2015-05-01 DOI: 10.4230/LIPIcs.SNAPL.2015.177
Daniel Marino, T. Millstein, M. Musuvathi, S. Narayanasamy, Abhayendra Singh
{"title":"The Silently Shifting Semicolon","authors":"Daniel Marino, T. Millstein, M. Musuvathi, S. Narayanasamy, Abhayendra Singh","doi":"10.4230/LIPIcs.SNAPL.2015.177","DOIUrl":"https://doi.org/10.4230/LIPIcs.SNAPL.2015.177","url":null,"abstract":"Memory consistency models for modern concurrent languages have largely been designed from a system-centric point of view that protects, at all costs, optimizations that were originally designed for sequential programs. The result is a situation that, when viewed from a programmer's standpoint, borders on absurd. We illustrate this unfortunate situation with a brief fable and then examine the opportunities to right our path.","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2015-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126410340","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 8
Tracking the Flow of Ideas through the Programming Languages Literature 通过编程语言文献跟踪思想的流动
Summit on Advances in Programming Languages Pub Date : 2015-05-01 DOI: 10.4230/LIPIcs.SNAPL.2015.140
M. Greenberg, Kathleen Fisher, David Walker
{"title":"Tracking the Flow of Ideas through the Programming Languages Literature","authors":"M. Greenberg, Kathleen Fisher, David Walker","doi":"10.4230/LIPIcs.SNAPL.2015.140","DOIUrl":"https://doi.org/10.4230/LIPIcs.SNAPL.2015.140","url":null,"abstract":"How have conferences like ICFP, OOPSLA, PLDI, and POPL evolved over the last 20 years? Did generalizing the Call for Papers for OOPSLA in 2007 or changing the name of the umbrella conference to SPLASH in 2010 have any effect on the kinds of papers published there? How do POPL and PLDI papers compare, topic-wise? Is there related work that I am missing? Have the ideas in O'Hearn's classic paper on separation logic shifted the kinds of papers that appear in POPL? Does a proposed program committee cover the range of submissions expected for the conference? If we had better tools for analyzing the programming language literature, we might be able to answer these questions and others like them in a data-driven way. In this paper, we explore how topic modeling, a branch of machine learning, might help the programming language community better understand our literature.","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2015-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"133293407","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 3
A Few Lessons from the Mezzo Project Mezzo项目的一些经验教训
Summit on Advances in Programming Languages Pub Date : 2015-05-01 DOI: 10.4230/LIPIcs.SNAPL.2015.221
F. Pottier, Jonathan Protzenko
{"title":"A Few Lessons from the Mezzo Project","authors":"F. Pottier, Jonathan Protzenko","doi":"10.4230/LIPIcs.SNAPL.2015.221","DOIUrl":"https://doi.org/10.4230/LIPIcs.SNAPL.2015.221","url":null,"abstract":"With Mezzo, we set out to design a new, better programming language. In this modest document, we recount our adventure: what worked, and what did not; the decisions that appear in hindsight to have been good, and the design mistakes that cost us; the things that we are happy with in the end, and the frustrating aspects we wish we had handled better.","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2015-05-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122411844","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
Toward a Dependability Case Language and Workflow for a Radiation Therapy System 放射治疗系统案例语言与工作流程之探讨
Summit on Advances in Programming Languages Pub Date : 2015-04-28 DOI: 10.4230/LIPIcs.SNAPL.2015.103
Michael D. Ernst, D. Grossman, J. Jacky, Calvin Loncaric, Stuart Pernsteiner, Zachary Tatlock, E. Torlak, Xi Wang
{"title":"Toward a Dependability Case Language and Workflow for a Radiation Therapy System","authors":"Michael D. Ernst, D. Grossman, J. Jacky, Calvin Loncaric, Stuart Pernsteiner, Zachary Tatlock, E. Torlak, Xi Wang","doi":"10.4230/LIPIcs.SNAPL.2015.103","DOIUrl":"https://doi.org/10.4230/LIPIcs.SNAPL.2015.103","url":null,"abstract":"We present a near-future research agenda for bringing a suite of modern programming-languages verification tools - specifically interactive theorem proving, solver-aided languages, and formally defined domain-specific languages - to the development of a specific safety-critical system, a radiotherapy medical device. We sketch how we believe recent programming-languages research advances can merge with existing best practices for safety-critical systems to increase system assurance and developer productivity. We motivate hypotheses central to our agenda: That we should start with a single specific system and that we need to integrate a variety of complementary verification and synthesis tools into system development.","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2015-04-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129609130","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 4
Hardware-Software Co-Design: Not Just a Cliché 硬件-软件协同设计:不只是一个陈词滥调
Summit on Advances in Programming Languages Pub Date : 2015-04-28 DOI: 10.4230/LIPIcs.SNAPL.2015.262
Adrian Sampson, James Bornholt, L. Ceze
{"title":"Hardware-Software Co-Design: Not Just a Cliché","authors":"Adrian Sampson, James Bornholt, L. Ceze","doi":"10.4230/LIPIcs.SNAPL.2015.262","DOIUrl":"https://doi.org/10.4230/LIPIcs.SNAPL.2015.262","url":null,"abstract":"The age of the air-tight hardware abstraction is over. As the computing ecosystem moves beyond the predictable yearly advances of Moore's Law, appeals to familiarity and backwards compatibility will become less convincing: fundamental shifts in abstraction and design will look more enticing. It is time to embrace hardware-software co-design in earnest, to cooperate between programming languages and architecture to upend legacy constraints on computing. We describe our work on approximate computing, a new avenue spanning the system stack from applications and languages to microarchitectures. We reflect on the challenges and successes of approximation research and, with these lessons in mind, distill opportunities for future hardware-software co-design efforts.","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"2015-04-28","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130654002","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 19
Formal Verification vs. Quantum Uncertainty 形式验证与量子不确定性
Summit on Advances in Programming Languages Pub Date : 1900-01-01 DOI: 10.4230/LIPIcs.SNAPL.2019.12
Robert Rand, K. Hietala, M. Hicks
{"title":"Formal Verification vs. Quantum Uncertainty","authors":"Robert Rand, K. Hietala, M. Hicks","doi":"10.4230/LIPIcs.SNAPL.2019.12","DOIUrl":"https://doi.org/10.4230/LIPIcs.SNAPL.2019.12","url":null,"abstract":"14 Programming a quantum computer is difficult and writing a program that will execute successfully 15 on quantum devices that exist today (or are likely to exist in the near future) is a daunting task. Not 16 only is quantum computing inherently uncertain, the quantum computers that we have introduce 17 a variety of novel errors that are difficult to predict or work around. Techniques from formal 18 verification will allow us to quantify and mitigate these errors if we can bridge the gap between 19 high level languages and machine specifications. In this paper, we review existing approaches to 20 quantum program verification and propose a new approach focused not only on long term quantum 21 programming, but on the quantum programs we can run today. 22 2012 ACM Subject Classification Software and its engineering → Formal software verification; 23 Hardware → Quantum error correction and fault tolerance 24","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114732525","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 11
Domain-Specific Symbolic Compilation 特定于领域的符号编译
Summit on Advances in Programming Languages Pub Date : 1900-01-01 DOI: 10.4230/LIPIcs.SNAPL.2017.2
R. Bodík, Kartik Chandra, P. Phothilimthana, N. Yazdani
{"title":"Domain-Specific Symbolic Compilation","authors":"R. Bodík, Kartik Chandra, P. Phothilimthana, N. Yazdani","doi":"10.4230/LIPIcs.SNAPL.2017.2","DOIUrl":"https://doi.org/10.4230/LIPIcs.SNAPL.2017.2","url":null,"abstract":"A symbolic compiler translates a program to symbolic constraints, automatically reducing model checking and synthesis to constraint solving. We show that new applications of constraint solving require domain-specific encodings that yield the required orders of magnitude improvements in solver efficiency. Unfortunately, these encodings cannot be obtained with today's symbolic compilation. \u0000 \u0000We introduce symbolic languages that encapsulate domain-specific encodings under abstractions that behave as their non-symbolic counterparts: client code using the abstractions can be tested and debugged on concrete inputs. When client code is symbolically compiled, the resulting constraints use domain-specific encodings. \u0000 \u0000We demonstrate the idea on the first fully symbolic checker of type systems; a program partitioner; and a parallelizer of tree computations. In each of these case studies, symbolic languages improved on classical symbolic compilers by orders of magnitude.","PeriodicalId":231548,"journal":{"name":"Summit on Advances in Programming Languages","volume":null,"pages":null},"PeriodicalIF":0.0,"publicationDate":"1900-01-01","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126180701","PeriodicalName":null,"FirstCategoryId":null,"ListUrlMain":null,"RegionNum":0,"RegionCategory":"","ArticlePicture":[],"TitleCN":null,"AbstractTextCN":null,"PMCID":"","EPubDate":null,"PubModel":null,"JCR":null,"JCRName":null,"Score":null,"Total":0}
引用次数: 2
0
×
引用
GB/T 7714-2015
复制
MLA
复制
APA
复制
导出至
BibTeX EndNote RefMan NoteFirst NoteExpress
×
提示
您的信息不完整,为了账户安全,请先补充。
现在去补充
×
提示
您因"违规操作"
具体请查看互助需知
我知道了
×
提示
确定
请完成安全验证×
相关产品
×
本文献相关产品
联系我们:info@booksci.cn Book学术提供免费学术资源搜索服务,方便国内外学者检索中英文文献。致力于提供最便捷和优质的服务体验。 Copyright © 2023 布克学术 All rights reserved.
京ICP备2023020795号-1
ghs 京公网安备 11010802042870号
Book学术文献互助
Book学术文献互助群
群 号:481959085
Book学术官方微信