LIPIcs,第32卷

第一届程序设计语言进步峰会(SNAPL 2015)



缩略图PDF

事件

SNAPL 2015年5月3日至6日,美国加利福尼亚州阿西洛马

编辑

托马斯·鲍尔
拉斯蒂斯拉夫·博迪
克里希纳穆西神社
本杰明·勒纳
格雷格·莫里塞特

出版物详细信息

  • 发布时间:2015-04-30
  • 出版商:Schloss Dagstuhl–Leibniz Zentrum für Informatik
  • 国际标准化组织:978-3-939897-80-4
  • DBLP:db/conf/snapl/snapl2015

接入号码

文件

找不到与您的筛选器选择匹配的文档。
文件
完整卷
LIPIcs,第32卷,SNAPL’15,完整卷

作者:托马斯·鲍尔(Thomas Ball)、拉斯蒂斯拉夫·博迪克(Rastislav Bodik)、克里希纳穆尔西(Shriram Krishnamurthi)、本杰明·勒纳(Benjamin S.Lerner)和格雷格·莫里塞特(Greg Morrisett)


摘要
LIPIcs,第32卷,SNAPL’15,完整卷

引用为

第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{ball_et_al:LIPIcs.SNAPL.2015,title={{LIPIcs,第32卷,SNAPL'15,完整卷}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015},URN={URN:nbn:de:0030-drops-50461},doi={10.4230/LIPIcs.SNAPL.2015},annote={关键词:编程语言}}
文件
前部物质
标题、目录、前言、作者列表

作者:托马斯·鲍尔(Thomas Ball)、拉斯蒂斯拉夫·博迪(Rastislav Bodiák)、施里拉姆·克里希纳穆斯(Shriram Krishnamurthi)、本杰明·勒纳(Benjamin S.Lerner)和格雷格·莫里塞特(Greg Morriset)


摘要
标题、目录、前言、作者列表

引用为

第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第i-xiv页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{ball_et_al:LIPIcs.SNAPL.2015.i,author={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},title={标题,目录,序言,作者列表}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页面={i--xiv},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/documents/10.4230/LIPIcs.SNAPL.2015.i},URN={URN:nbn:de:0030-drops-50119},doi={10.4230/LIPIcs.SNAPL.2015.i},annote={关键词:标题、目录、前言、作者列表}}
文件
用于局部管理的耦合存储器和计算

作者:Umut A.Acar、Guy Blelloch、Matthew Fluet、Stefan K.Muller和Ram Raghunathan


摘要
我们明确表示需要自动管理(数据)局部性,而不是将其留给程序员,特别是在并行编程系统中。为此,我们提出了将计算(包括线程调度程序)和内存管理器紧密耦合的技术,以便可以在硬件中紧密定位数据和计算。计算和内存管理的紧密耦合与孤立考虑两者的流行做法形成了鲜明对比。例如,内存管理技术通常将计算抽象为未知的“变异器”,它被视为“黑盒”。作为该方法的一个示例,在本文中,我们考虑一类特定的并行计算,即嵌套并行计算。这样的计算动态地创建了并行任务的嵌套。我们提出了一种将内存组织为反映嵌套结构的堆树的方法。更具体地说,如果任务在处理器上单独调度,我们的方法会为任务创建堆。这允许我们将垃圾收集与计算结构以及在处理器上动态调度垃圾收集的方式结合起来。这种耦合可以通过将程序的局部性映射到硬件的局部性来利用程序中的局部性。例如,为了改进局部性,当堆内容可能在缓存中时,可以在堆任务完成后立即对堆进行垃圾收集。

引用为

Umut A.Acar、Guy Blelloch、Matthew Fluet、Stefan K.Muller和Ram Raghunathan。用于位置管理的耦合内存和计算。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第1-14页,达格斯图尔-莱布尼兹-泽特鲁姆信息学院(2015)


将BibTex复制到剪贴板

@会议记录{acar_et_al:LIPIcs.SNAPL.2015.1,author={Acar,Umut A.和Blelloch,Guy和Fluet,Matthew和Muller,Stefan K.和Raghunathan,Ram},title={{用于位置管理的耦合内存和计算}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={1--14},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/documents/10.4230/LIPIcs.SNAPL.2015.1},URN={URN:nbn:de:0030-drops-50121},doi={10.4230/LIPIcs.SNAPL.2015.1},annote={关键词:并行计算,局部性,内存管理,并行垃圾收集,函数编程,嵌套并行,线程调度}}
文件
多语言世界的验证编译器

作者:阿迈勒


摘要
尽管近年来在正式验证的编译器方面取得了显著进展,但大多数编译器都有严重的局限性:在假设它们只用于编译整个程序的情况下,它们被证明是正确的。这是一个不切实际的假设,因为今天的大多数软件系统都由用不同语言编写的组件(包括类型化的和非类型化的)组成,这些组件由不同的编译器编译到一个共同的目标,以及可能用目标语言手写的低级库。我们正在寻求一种新的方法,为当今的多语言软件世界构建经过验证的编译器。该项目有两个中心主题,这两个主题都源于将编译器正确性视为语言互操作性问题的观点。首先,为了指定组件编译的正确性,我们要求如果源组件编译为目标组件t,那么与任意目标代码t'链接的t应该与s与t'互操作的行为相同。后者需要源语言和目标语言之间的互操作性的正式语义。其次,为了实现由ML、Rust、Python和C等不同语言编译的组件之间的安全互操作性,我们计划设计一种基于LLVM的渐进式类型安全目标语言,该语言支持更精确类型、更不精确类型和类型安全组件之间的安全互操作性。我们的方法为探索合理的语言互操作性开辟了一条新的途径,同时也解决了编译器的正确性问题。

引用为

阿马尔·艾哈迈德。多语言世界的验证编译器。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第15-31页,达格斯图尔-莱布尼兹-泽特鲁姆信息学院(2015)


将BibTex复制到剪贴板

@诉讼中{ahmed:LIPIcs.SNAPL.2015.15,作者={Ahmed,Amal},title={{多语言世界的验证编译器}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={15--31},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.15},URN={URN:nbn:de:0030-drops-50131},doi={10.4230/LIPIcs.SNAPL.2015.15},annote={关键词:验证编译、组合编译器正确性、多语言语义、类型化低级语言、渐进式类型}}
文件
为硬件设计开发软件语言

作者:约书亚·奥尔巴赫(Joshua Auerbach)、大卫·培根(David F.Bacon)、佩里·程(Perry Cheng)、斯蒂芬·芬克(Stephen J.Fink)、罗德里克·拉巴(Rodric Rabbah)和苏尼尔·舒克拉(Sunil Shukla


摘要
IBM Research的液态金属项目旨在设计和实现一种称为Lime的新编程语言,以解决异构系统带来的一些挑战。Lime是一种兼容Java的编程语言,其功能旨在促进硬件的高级合成(FPGA)。本文从一开始就回顾了语言设计,并重点介绍了一些最早的设计决策。我们还描述了最近如何修改这些决策,以适应网络和加密中出现的重要要求。

引用为

Joshua Auerbach、David F.Bacon、Perry Cheng、Stephen J.Fink、Rodric Rabbah和Sunil Shukla。为硬件设计开发软件语言。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第32-40页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{auerbach_et_al:LIPIcs.SNAPL.2015.32,author={奥尔巴赫、约书亚和培根、大卫·F·和成、佩里和芬克、斯蒂芬·J·和拉巴、罗德里克和舒克拉、苏尼尔},title={{为硬件设计开发软件语言}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={32--40},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.32},URN={URN:nbn:de:0030-drops-50144},doi={10.4230/LIPIcs.SNAPL.2015.32},annote={关键词:异构系统,FPGA,高级综合,数据流,函数编程,流,Java}}
文件
用“大代码”编程:教训、技巧和应用

作者:帕沃尔·比利克、维塞林·雷切夫和马丁·维切夫


摘要
基于大规模代码基概率模型(又称“大代码”)的编程工具有望解决以前难以解决或实际上不可行的重要编程任务。然而,构建这样的工具需要解决编程语言、程序分析和机器学习交叉点的一些难题。在本文中,我们总结了过去几年中通过开发几个此类概率系统获得的一些经验和见解(其中一些系统经常被全球数千名开发人员使用)。我们希望这些观察能够为其他试图创建此类系统的人提供指导。我们还介绍了一种我们认为适合作为构建概率工具起点的预测方法,并讨论了实现这种方法的实用框架,称为Nice2Predict。我们公开发布了Nice2Predict框架,该框架可以立即用作开发新概率工具的基础。最后,我们介绍了一些编程应用程序,我们认为这些应用程序将从概率模型中受益,并应进一步研究。

引用为

帕沃尔·比利克、韦塞林·雷切夫和马丁·维切夫。用“大代码”编程:课程、技术和应用。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第41-50页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{bielik_et_al:LIPIcs.SNAPL.2015.41,author={Bielik、Pavol和Raychev、Veselin和Vechev、Martin},title={{用“大代码”编程:课程、技术和应用}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={41--50},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.41},URN={URN:nbn:de:0030-drops-50152},doi={10.4230/LIPIcs.SNAPL.2015.41},annote={关键词:概率工具,概率推理和学习,程序分析,开源软件}}
文件
通过综合缩小通用编译器和领域特定编译器之间的差距

作者:Alvin Cheung、Shoaib Kamil和Armando Solar-Lezama


摘要
本文描述了一种新的程序优化方法,它允许通用代码从特定于域的编译器的优化功能中获益。这种方法的关键是一种基于合成的技术,它可以提高通用代码的抽象级别,从而实现积极的特定于域的优化。我们一直在一个称为Herd的可扩展系统中实现这种方法。该系统是围绕一组参数化内核翻译器设计的。每个内核转换器都与特定于域的编译器相关联,每个内核转换器的作用是扫描输入代码,以搜索可由嵌入在每个内核转换器中的特定于域编译器优化的代码片段。通过利用通用合成技术,可以有一个通用内核转换器,编译器开发人员可以为每个特定于域的编译器专门化该转换器,从而可以轻松地将新的领域知识构建到整个系统中。我们展示了在两个不同领域构建优化编译器的新方法,并强调了为了实现最终愿景需要解决的研究挑战。

引用为

Alvin Cheung、Shoaib Kamil和Armando Solar-Lezama。通过综合缩小通用编译器和领域特定编译器之间的差距。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第51-62页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{cheung_et_al:LIPIcs.SNAPL.2015.51,author={Cheung、Alvin和Kamil、Shoaib和Solar-Lezama、Armando},title={{通过综合跨越通用编译器和领域特定编译器之间的鸿沟}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={51--62},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.51},URN={URN:nbn:de:0030-drops-50162},doi={10.4230/LIPIcs.SNAPL.2015.51},annote={关键词:编译器,领域特定语言,程序合成,交叉编译,验证}}
文件
Yedalog:大规模探索知识

作者:Brian Chin、Daniel von Dincklage、Vuk Ercegovac、Peter Hawkins、Mark S.Miller、Franz Och、Christopher Olston和Fernando Pereira


摘要
随着数据处理框架的巨大进步,人类程序员在分析大型数据存储库时常常成为瓶颈。我们介绍了Yedalog,这是一种声明性编程语言,它允许程序员在一种语言中无缝地混合数据并行管道和计算。相比之下,大多数现有的数据并行计算工具在通用语言中嵌入了数据并行管道的子语言,反之亦然。Yedalog扩展了Datalog,不仅包含了逻辑编程的计算特性,还包含了使用嵌套记录结构的数据的特性。Yedalog程序既可以在一台机器上运行,也可以在集群中以批处理和交互模式分布,允许程序员轻松混合不同的执行模式。

引用为

Brian Chin、Daniel von Dincklage、Vuk Ercegovac、Peter Hawkins、Mark S.Miller、Franz Och、Christopher Olston和Fernando Pereira。Yedalog:探索大规模知识。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第63-78页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{chin_et_al:LIPIcs.SNAPL.2015.63,作者={Chin、Brian和von Dincklage、Daniel和Ercegovac、Vuk和Hawkins、Peter和Miller、Mark S.和Och、Franz和Olston、Christopher和Pereira、Fernando},title={{Yedalog:探索大规模知识}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={63--78},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.63},URN={URN:nbn:de:0030-drops-50172},doi={10.4230/LIPIcs.SNAPL.2015.63},annote={Keywords:Datalog,MapReduce}}
文件
Terra的设计:利用高级和低级语言的最佳特性

作者:扎卡里·德维托和帕特·汉拉罕


摘要
应用程序通常是使用高级和低级语言的组合编写的,因为它允许仔细优化性能关键的部分,而其他部分可以更高效地编写。这种方法用于web开发、游戏编程和应用程序本身的构建系统。然而,大多数语言在设计时都没有考虑到互操作性,这导致了粘合代码和重复的功能增加了复杂性。我们提出了一个两种语言的系统,在这个系统中,两种语言都被设计为互操作。Lua用于我们的高级语言,因为它最初的设计考虑到了互操作性。我们创建了一种新的低级语言Terra,用于与Lua进行互操作。它嵌入在Lua中,并从中进行元编程,但抽象级别较低,适合编写高性能代码。我们讨论了一些重要的设计决策—划分的运行时、无胶互操作和元编程特性—它们使Lua和Terra比其部分的总和更强大。

引用为

扎卡里·德维托和帕特·汉拉罕。Terra的设计:利用高级和低级语言的最佳特性。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第79-89页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{devito_et_al:LIPIcs.SNAPL.2015.79,author={德维托、扎卡里和汉拉罕、帕特},title={{Terra的设计:利用高级和低级语言的最佳特性}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={79--89},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.79},URN={URN:nbn:de:0030-drops-50186},doi={10.4230/LIPIcs.SNAPL.2015.79},annote={关键词:语言互操作性,元编程,高性能,Lua}}
文件
容错分布式系统对语言支持的需求

作者:塞扎拉·德拉戈伊(Cezara Dragoi)、托马斯·汉津格(Thomas A.Henzinger)和达米安·祖弗里(Damien Zufferey)


摘要
容错分布式算法在许多关键/高可用性应用程序。由于异步,这些算法很难正确实现通信和故障的发生,如网络消息丢失或计算机崩溃。尽管如此,要构建的语言和验证支持却少得惊人基于容错算法的分布式系统。在这个论文中,我们提出了设计师必须面对的一些挑战克服了实现容错分布式系统的困难。然后我们回顾提出的不同模型分布式算法,并简述这种模型如何构成基础用于特定于域的编程语言。采用高级编程模型可以简化程序员的生活,并使代码易于自动验证,同时仍在编译高效的可执行代码。我们总结了当前正在进行的语言设计和实现项目的状态基于这个想法。

引用为

塞扎拉·德拉戈伊(Cezara Dragoi)、托马斯·汉津格(Thomas A.Henzinger)和达米安·祖弗里(Damien Zufferey)。容错分布式系统对语言支持的需求。第一届编程语言进步峰会(SNAPL 2015)。《莱布尼茨国际信息学论文集》,第32卷,第90-102页,Schloss Dagstuhl–Leibniz Zentrum für Informatik(2015)


将BibTex复制到剪贴板

@在诉讼中{dragoi_et_al:LIPIcs.SNAPL.2015.90,作者={德拉戈伊、塞扎拉和亨廷格、托马斯A.和祖弗里、达米安},title={{容错分布式系统对语言支持的需求}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={90--102},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.90},URN={URN:nbn:de:0030-drops-50192},doi={10.4230/LIPIcs.SNAPL.2015.90},annote={关键词:编程语言,容错分布式算法,自动验证}}
文件
放射治疗系统的可靠性案例语言和工作流

作者:Michael D.Ernst、Dan Grossman、Jon Jacky、Calvin Loncaric、Stuart Pernsteiner、Zachary Tatlock、Emina Torlak和Xi Wang


摘要
我们提出了一个近期的研究议程,将一套现代编程语言验证工具(特别是交互式定理证明、辅助求解语言和正式定义的领域特定语言)引入特定安全关键系统放射治疗医疗设备的开发中。我们简述了我们如何相信最近的编程语言研究进展可以与安全关键系统的现有最佳实践相结合,以提高系统保证和开发人员生产力。我们鼓励对我们议程至关重要的假设:我们应该从单个特定系统开始,我们需要将各种互补的验证和综合工具集成到系统开发中。

引用为

Michael D.Ernst、Dan Grossman、Jon Jacky、Calvin Loncaric、Stuart Pernsteiner、Zachary Tatlock、Emina Torlak和Xi Wang。放射治疗系统的可靠性案例语言和工作流程。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第103-112页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{ernst_et_al:LIPIcs.SNAPL.2015.103,作者={Ernst,Michael D.和Grossman,Dan和Jacky,Jon和Loncaric,Calvin和Pernsteiner,Stuart和Tatlock,Zachary和Torlak,Emina和Wang,Xi},title={{辐射治疗系统的可靠性案例语言和工作流程}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={103--112},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.03},URN={URN:nbn:de:0030-drops-50208},doi={10.4230/LIPIcs.SNAPL.2015.103},annote={关键词:合成、证明助理、验证、可靠性案例、领域特定语言、放射治疗}}
文件
支架宣言

作者:马蒂亚斯·费尔莱森(Matthias Felleisen)、罗伯特·布鲁斯·芬德勒(Robert Bruce Findler)、马修·弗拉特(Matthew Flatt


摘要
编程语言的创建需要指导原则,指导开发人员实现目标。本文阐述了Racket 20年发展背后的三个基本原则。首先,编程是关于陈述和解决问题的,而这种活动通常是在使用自己的话语语言的环境中进行的;好的程序员应该把这种语言写成编程语言。因此,Racket是一种用于创建新编程语言的编程语言。其次,通过遵循这种面向语言的编程方法,系统成为了互连组件的多语言集合。每种语言和组件都必须能够保护其特定的不变量。作为支持,Racket提供了保护机制来实现完整的语言范围,从C级位操作到可靠类型的扩展。第三,因为Racket认为编程是用正确的语言解决问题,所以Racket还将非语言机制转变为语言结构,特别是管理资源和项目的机制。本文解释了这些原则以及Racket如何实现这些原则,提出了设计过程背后的评估框架,并总结了Racket的缺陷和未来改进的机会。

引用为

Matthias Felleisen、Robert Bruce Findler、Matthew Flatt、Shriram Krishnamurthi、Eli Barzilay、Jay McCarthy和Sam Tobin Hochstadt。拉基特宣言。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第113-128页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{felleisen_et_al:LIPIcs.SNAPL.2015.113,author={Felleisen、Matthias和Findler、Robert Bruce和Flatt、Matthew和Krishnamurthi、Shriram和Barzilay、Eli和McCarthy、Jay和Tobin-Hochstadt、Sam},title={{The Racket Manifesto}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={113--128},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.113},URN={URN:nbn:de:0030-drops-50211},doi={10.4230/LIPIcs.SNAPL.2015.113},annote={关键词:设计指南,语言生成,全谱语言}}
文件
理论AB工具箱

作者:马可·加博阿迪和贾斯汀·徐


摘要
随机算法是理论计算机科学文献的主要内容。通过仔细使用随机性,算法可以获得确定性算法无法实现的特性。今天,理论计算机科学家在纸上证明了这些性质;我们对这些证明进行了形式化的验证。主要的挑战有两个:利用概率论中的各种事实证明算法可能相当复杂;并且证明是高度定制的——两种算法具有相同性质的两个证明可以完全不同。为了克服这些挑战,我们建议从纸质证明中获得灵感,将常见的工具——抽象、推理原理,甚至符号——构建到正式的验证工具箱中。为了对我们的方法有所了解,我们考虑了纸证明中的三种常见模式:并界、集中界和鞅参数。

引用为

马可·加博阿迪(Marco Gaboardi)和贾斯汀·徐(Justin Hsu)。理论AB工具箱。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第129-139页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{gaboardi_et_al:LIPIcs.SNAPL.2015.129,author={Gaboardi,Marco和Hsu,Justin},title={理论AB工具箱}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={129--139},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.29},URN={URN:nbn:de:0030-drops-50225},doi={10.4230/LIPIcs.SNAPL.2015.129},annote={关键词:验证,随机算法}}
文件
通过编程语言文献追踪思想流

作者:迈克尔·格林伯格、凯萨琳·费舍尔和大卫·沃克


摘要
过去20年来,ICFP、OOPSLA、PLDI和POPL等会议是如何发展的?2007年推广OOPSLA论文征集,或2010年将伞式会议改名为SPLASH,对那里发表的论文种类有影响吗?POPL和PLDI的论文在主题上如何比较?有没有我遗漏的相关工作?奥赫恩关于分离逻辑的经典论文中的观点是否改变了POPL中出现的论文类型?拟议的项目委员会是否涵盖会议预期提交的文件范围?如果我们有更好的工具来分析编程语言文献,我们也许能够以数据驱动的方式回答这些问题和其他类似的问题。在本文中,我们探讨了机器学习的一个分支主题建模如何帮助编程语言社区更好地理解我们的文献。

引用为

迈克尔·格林伯格(Michael Greenberg)、凯瑟琳·费舍尔(Kathleen Fisher)和大卫·沃克(David Walker)。通过编程语言文献追踪思想流。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第140-155页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{greenberg_et_al:LIPIcs.SNAPL.2015.140,author={Greenberg,Michael and Fisher,Kathleen and Walker,David},title={{通过编程语言文献追踪思想流}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={140--155},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.140},URN={URN:nbn:de:0030-drops-50232},doi={10.4230/LIPIcs.SNAPL.2015.140},annote={关键词:编程语言文献,主题模型,反讽}}
文件
InterPoll:众包网络民意调查

作者:Benjamin Livshits和Todd Mytkowicz


摘要
众包越来越多地被用来为在线民意调查和调查提供答案。然而,现有系统在注意吸引群众工作者、建立投票站和支付机制的同时,几乎无法帮助调查者或民意调查者获得统计上显著的结果,即使没有明显的选择偏见。本文提出了InterPoll,一个用于众源投票编程的平台。民意测验将民意测验表示为嵌入式LINQ查询,运行时正确地解释了这些民意测验中的不确定性,只对满足统计保证所需的人数进行民意测验。为了优化轮询成本,InterPoll执行查询优化、偏差校正和功率分析。InterPoll的目标是提供一个可以可靠地用于市场营销、社会和政治科学问题研究的系统。本文重点介绍了一些现有的挑战,以及InterPoll是如何设计来解决其中大部分挑战的。在本文中,我们总结了我们已经完成的一些工作,并对未来的工作进行了概述。

引用为

本杰明·利夫希茨(Benjamin Livshits)和托德·米特科维奇(Todd Mytkowicz)。InterPoll:众包网络民意调查。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第156-176页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@在诉讼程序中{livshits_et_al:LIPIcs.SNAPL.2015.156,author={Livshits,Benjamin和Mytkowicz,Todd},title={{InterPoll:Crowd-Sourced Internet Polls}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={156--176},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.56},URN={URN:nbn:de:0030-drops-50242},doi={10.4230/LIPIcs.SNAPL.2015.156},annote={关键词:群组寻源、轮询、LINQ}}
文件
无声移动的分号

作者:Daniel Marino、Todd Millstein、Madanal Musuvathi、Satish Narayanasamy和Abhayendra Singh


摘要
现代并发语言的内存一致性模型主要是从以系统为中心的角度设计的,它不惜一切代价保护最初为顺序程序设计的优化。结果是,从程序员的角度来看,这种情况近乎荒谬。我们用一个简短的寓言来说明这一不幸的情况,然后审视纠正我们道路的机会。

引用为

丹尼尔·马里诺(Daniel Marino)、托德·米尔斯坦(Todd Millstein)、穆苏瓦蒂夫人(Madanal Musuvathi)、萨蒂什·纳拉亚纳萨米(Satish Narayanasamy)和阿巴耶德拉·辛格。无声移动的分号。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第177-189页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{marino_et_al:LIPIcs.SNAPL.2015.177,author={Marino、Daniel和Millstein、Todd和Musuvathi、Madanlal和Narayanasamy、Satish和Singh、Abhayendra},title={无声移位的分号}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={177--189},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.177},URN={URN:nbn:de:0030-drops-50259},doi={10.4230/LIPIcs.SNAPL.2015.177},annote={关键词:内存一致性模型;顺序一致性;安全编程语言;数据竞争}}
文件
关于基于指针的检查您想知道的一切

作者:Santosh Nagarakatte、Milo M.K.Martin和Steve Zdancewic


摘要
C/C++中缺乏内存安全性导致了大型软件系统中存在大量安全漏洞和严重错误。本文重点介绍了C/C++程序在加强内存安全方面的挑战以及作为SoftBoundCETS项目的一部分所取得的进展。在这个项目中,我们一直在探索不同级别的内存安全实施,包括硬件、编译器和硬件-编译器混合。我们的研究发现,在不相交的元数据空间中使用指针维护元数据,并执行边界和无使用后检查可以提供全面的内存安全。我们描述了设计决策背后的基本原理及其在各个维度上的影响,我们在本项目中探索的各种变体方面的经验,以及在此过程中吸取的教训。我们还描述和分析了即将推出的“英特尔内存保护扩展”(MPX),它为主流硬件中的不相交元数据和指针检查提供硬件加速,预计将于今年晚些时候推出。

引用为

Santosh Nagarakatte、Milo M.K.Martin和Steve Zdancewic。关于基于指针的检查,您想了解的一切。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第190-208页,达格斯图尔-莱布尼兹-泽特鲁姆信息学院(2015)


将BibTex复制到剪贴板

@会议记录{nagarakatte_et_al:LIPIcs.SNAPL.2015.190,作者={Nagarakatte,Santosh和Martin,Milo M.K.和Zdancewic,Steve},title={{你想知道的关于基于指针的检查的一切}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={190--208},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.190},URN={URN:nbn:de:0030-drops-50268},doi={10.4230/LIPIcs.SNAPL.2015.190},annote={关键词:内存安全,缓冲区溢出,悬空指针,基于指针的检查,SoftBoundCETS}}
文件
网络验证的新方向

作者:Aurojit Panda、Katerina Argyraki、Mooly Sagiv、Michael Schapira和Scott Shenker


摘要
网络验证最近在编程语言和验证社区中得到了普及。这一领域最近的大部分工作都集中在验证简单网络的行为,这些网络的行为是由预先配置的静态、不可变规则决定的。然而,在现实中,现代网络包含各种各样的中间盒,其行为既受其配置的影响,也受其接收到的数据包所更新的可变状态的影响。在本立场文件中,我们批判性地回顾了网络验证的最新进展,提出了实现更完整形式的网络验证的一些下一步措施,消除了关于网络的一些误解,对我们的方法进行了更正式的描述,最后,讨论网络验证议程向这个社区提出的正式问题。

引用为

Aurojit Panda、Katerina Argyraki、Mooly Sagiv、Michael Schapira和Scott Shenker。网络验证的新方向。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第209-220页,达格斯图尔-莱布尼兹-泽特鲁姆信息学院(2015)


将BibTex复制到剪贴板

@会议记录{panda_et_al:LIPIcs.SNAPL.2015.2009,作者={Panda,Aurojit和Argyraki,Katerina和Sagiv,Mooly和Schapira,Michael和Shenker,Scott},title={{网络验证的新方向}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={209--220},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.2009},URN={URN:nbn:de:0030-drops-50278},doi={10.4230/LIPIcs.SNAPL.2015.209},annote={关键词:中间件、网络验证、可变数据平面}}
文件
Mezzo项目的几点经验教训

作者:弗朗索瓦·波蒂埃和乔纳森·普罗琴科


摘要
与Mezzo一起,我们着手设计一种新的、更好的编程语言。在这份谦逊的文件中,我们讲述了我们的历险经历:什么有效,什么无效;事后看来是好的决定,以及让我们付出代价的设计错误;我们最终感到满意的事情,以及我们希望能处理得更好的令人沮丧的事情。

引用为

弗朗索瓦·波蒂埃和乔纳森·普罗琴科。Mezzo项目的几点经验教训。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第221-237页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{pottier_et_al:LIPIcs.SNAPL.2015.221,author={Pottier,Francois和Protzenko,Jonathan},title={夹层项目的几点教训}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={221--237},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.221},URN={URN:nbn:de:0030-drops-50281},doi={10.4230/LIPIcs.SNAPL.2015.221},annote={关键词:静态类型系统,副作用,别名,所有权}}
文件
去Meta!性能关键系统中的生成程序设计和DSL案例

作者:蒂亚克·隆普夫(Tiark Rompf)、凯文·布朗(Kevin J.Brown)、Hyouk Joong Lee、阿文德·苏吉特(Arvind K.Sujeeth)、马诺哈尔·琼纳拉赫达(Manohar Jonnalagedda)、娜达·阿明(Nada Amin)、乔治·奥芬贝克(Georg Ofenbeck)、阿伦·斯托亚诺夫(Alen Stojanov)、亚尼斯·克洛托斯(Yannis Klon


摘要
大多数性能关键型软件都是使用非常低级的技术开发的。我们认为这种情况需要改变,生成性编程是在许多这样的情况下使用高级语言和编程技术的有效途径。

引用为

蒂亚克·隆普夫(Tiark Rompf)、凯文·布朗(Kevin J.Brown)、Hyouk Joong Lee、阿文德·苏吉特(Arvind K.Sujeeth)、马诺哈尔·琼纳拉吉达(Manohar Jonnalagedda)、娜达·阿明(Nada Amin)、乔治·奥芬贝克(Georg Ofenbeck)、阿伦·斯托亚尼斯·克洛托斯(Alen Stojanov)、亚尼斯·科洛托斯、穆罕默德。去Meta!性能关键系统中的生成性编程和DSL案例。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第238-261页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{rompf_et_al:LIPIcs.SNAPL.2015.238,author={Rompf、Tiark和Brown、Kevin J.和Lee、HyoukJoong和Sujeeth、Arvind K.和Jonnalagedda、Manohar和Amin、Nada和Ofenbeck、Georg和Stojanov、Alen和Klonatos、Yannis和Dashti、Mohammad和Koch、Christoph和P\“{u} 白银,Markus和Olukotun,Kunle},title={{Go Meta!性能关键系统中的生成性编程和DSL案例}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={238--261},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.238},URN={URN:nbn:de:0030-drops-50295},doi={10.4230/LIPIcs.SNAPL.2015.238},annote={关键词:性能,生成性编程,暂存,DSL}}
文件
软硬件协同设计:不仅仅是Cliché

作者:阿德里安·桑普森、詹姆斯·博恩霍尔特和路易斯·塞兹


摘要
空中硬件抽象的时代已经结束。随着计算生态系统超越了摩尔定律每年可预测的进步,对熟悉性和向后兼容性的诉求将变得不那么令人信服:抽象和设计的根本转变看起来更具吸引力。现在是认真接受硬件和软件协同设计的时候了,应该在编程语言和体系结构之间进行合作,以扭转对计算的遗留限制。我们描述了我们在近似计算方面的工作,这是一种跨越从应用程序和语言到微体系结构的系统堆栈的新途径。我们反思了近似研究的挑战和成功,并牢记这些教训,为未来的软硬件协同设计工作提取机会。

引用为

阿德里安·桑普森、詹姆斯·博恩霍尔特和路易斯·塞兹。软硬件协同设计:不仅仅是Cliché。第一届编程语言进步峰会(SNAPL 2015)。《莱布尼茨国际信息学论文集》,第32卷,第262-273页,Schloss Dagstuhl–Leibniz Zentrum für Informatik(2015)


将BibTex复制到剪贴板

@会议记录{sampson_et_al:LIPIcs.SNAPL.2015.262,author={桑普森、阿德里安和博恩霍尔特、詹姆斯和塞兹、路易斯},title={{硬件-软件协同设计:不仅仅是一个Clich\'{e}}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页码={262--273},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.262},URN={URN:nbn:de:0030-drops-50301},doi={10.4230/LIPIcs.SNAPL.2015.262},annote={关键词:近似、协同设计、架构、验证}}
文件
逐步键入的改进标准

作者:Jeremy G.Siek、Michael M.Vitousek、Matteo Cimini和John Tang Boyland


摘要
Siek和Taha[2006]创造了术语渐变类型,以描述在一种语言中集成静态和动态类型的理论,该理论1)使程序员能够控制哪些代码区域是静态类型还是动态类型,2)使代码在两种类型学科之间逐步进化。自2006年以来,术语渐变类型变得相当流行,但其含义已被淡化,包括与静态和动态类型集成相关的任何内容。这种淡化在一定程度上是原始论文的错误,它提供了一个不完整的形式描述,即逐步打字意味着什么。在本文中,我们在沙子上画了一条清晰的线,其中包含一个新的形式属性,称为渐变保证,它关系到仅与类型注释不同的程序的行为。我们认为,渐变保证为渐变类型语言的设计者提供了重要的指导。我们调查了渐进式打字文献,并根据渐进式保证对设计进行了评论。我们还报告了一个机械化的证明,即渐进式Lambda演算的渐进保证成立。

引用为

Jeremy G.Siek、Michael M.Vitousek、Matteo Cimini和John Tang Boyland。逐步打字的精细标准。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第274-293页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{siek_et_al:LIPIcs.SNAPL.2015.274,author={Siek、Jeremy G.和Vitousek、Michael M.和Cimini、Matteo和Boyland、John Tang},title={{逐步键入的细化标准}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={274--293},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.274},URN={URN:nbn:de:0030-drops-50312},doi={10.4230/LIPIcs.SNAPL.2015.274},annote={关键词:渐变类型,类型系统,语义,动态语言}}
文件
一个、一个、多个——有什么区别吗?

作者:弗里德里希·斯特曼


摘要
我们观察到,与自然语言和建模语言相比,在编程语言中处理无、一个或多个对象所需的表达式差异尤其明显。我们发现了不同数字基于类型的统一所固有的一些问题,并主张在引入多重性作为编程语言的一个新语法类别的基础上提出一种解决方案。

引用为

弗里德里希·斯特曼。一个,一个,多个-有什么区别吗?。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第294-308页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@《美国诉讼汇编》{steimann:LIPIcs.SNAPL.2015.294,作者={斯特曼,弗里德里希},title={{None,One,Many-有什么区别吗?}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={294--308},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.294},URN={URN:nbn:de:0030-drops-50329},doi={10.4230/LIPIcs.SNAPL.2015.294},annote={关键字:对象、集合、关系、指针、多重性、null}}
文件
对指责的补充

作者:菲利普·沃德勒


摘要
契约、渐进类型和混合类型都允许不精确类型和更精确类型的代码进行交互。罪责演算包含了这些,并保证了罪责安全:类型错误的罪责总是由不精确的类型代码承担。本文是对责备演算文献的补充:阐述了动机,评论了作品的接受情况,批评了一些没有正确对待责备的工作,并期待着应用。假设不了解合同、渐进式键入、混合键入或过失演算。

引用为

菲利普·沃德勒。对指责的补充。第一届编程语言进步峰会(SNAPL 2015)。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第309-320页,达格斯图尔-莱布尼兹-中央信息学院(2015)


将BibTex复制到剪贴板

@会议记录{wadler:LIPIcs.SNAPL.2015.309,author={Wadler,Philip},title={{责任的补充}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={309--320},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.309},URN={URN:nbn:de:0030-drops-50333},doi={10.4230/LIPIcs.SNAPL.2015.309},annote={关键词:契约、渐变类型、混合类型、责备演算}}
文件
排水沼泽:微型虚拟机是语言发展的坚实基础

作者:王昆山、林毅、Stephen M.Blackburn、Michael Norrish和Antony L.Hosking


摘要
当今的许多编程语言都已崩溃。性能差、缺少功能和难以推理的语义可能会在软件维护和低效执行方面造成高昂成本。随着编程语言的激增和硬件变得更加复杂,问题只会变得更糟。这种断裂的一个重要原因是语言设计的大部分是实现驱动的。实现中的困难和对概念的理解不足将糟糕的设计引入了语言本身。并发性、体系结构细节和垃圾收集是三个基本问题,这三个问题在很大程度上导致了托管语言实现的复杂性。我们提出了微型虚拟机,这是一种精简的抽象,专门设计用于缓解托管语言的实现者面临的最基本的实现挑战,这些挑战目前阻碍了良好的设计。微虚拟机针对内存(垃圾收集)、体系结构(编译器后端)和并发性的抽象。我们对微虚拟机进行了激励,并介绍了一个具体实例的设计和初步经验,我们称之为Mu,该实例是在两年时间内构建的。我们的目标是消除性能和语义健全的托管语言设计和实现的一个重要障碍。

引用为

王昆山(Kunshan Wang)、伊琳(Yi Lin)、斯蒂芬·M·布莱克本(Stephen M.Blackburn)、迈克尔·诺里什(Michael Norrish)和安东尼·霍斯金(Antony L.Hosking)。排水沼泽:微型虚拟机是语言发展的坚实基础。在第一届编程语言进步峰会(SNAPL 2015)上。莱布尼茨国际信息学论文集(LIPIcs),第32卷,第321-336页,达格斯图尔-莱布尼兹-泽特鲁姆信息学研究所(2015)


将BibTex复制到剪贴板

@会议记录{wang_et_al:LIPIcs.SNAPL.2015.321,author={王、昆山和林、易和布莱克本、史蒂芬·M·和诺里什、迈克尔和霍斯金、安东尼·L·},title={{排空沼泽:微型虚拟机作为语言开发的坚实基础}},booktitle={第一届编程语言进步峰会(SNAPL 2015)},页数={321--336},series={Leibniz国际信息学论文集(LIPIcs)},国际标准图书编号={978-3-939897-80-4},ISSN={1868-8969},年份={2015年},体积={32},editor={Ball、Thomas和Bodiík、Rastislav和Krishnamurthi、Shriram和Lerner、Benjamin S.和Morriset、Greg},publisher={Schloss Dagstuhl--Leibniz Zentrum f{\“u}r Informatik},地址={Dagstuhl,德国},URL={https://drops.dagstuhl.de/entities/document/10.4230/LIPIcs.SNAPL.2015.321},URN={URN:nbn:de:0030-drops-50341},doi={10.4230/LIPIcs.SNAPL.2015.321},annote={关键词:虚拟机,并发,即时编译,垃圾收集}}

过滤器


问题/备注/反馈
X(X)

Dagstuhl出版社反馈


感谢您的反馈!

已提交反馈

无法发送消息

请稍后再试或发送电子邮件