Proceedings of the 2009 ACM SIGPLAN workshop on ML最新文献

筛选
英文 中文
Session details: Implementation 会话细节:实现
Proceedings of the 2009 ACM SIGPLAN workshop on ML Pub Date : 2009-08-30 DOI: 10.1145/3261176
N. Ramsey
{"title":"Session details: Implementation","authors":"N. Ramsey","doi":"10.1145/3261176","DOIUrl":"https://doi.org/10.1145/3261176","url":null,"abstract":"","PeriodicalId":218033,"journal":{"name":"Proceedings of the 2009 ACM SIGPLAN workshop on ML","volume":"221 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122493713","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}
引用次数: 0
Direct implementation of shift and reset in the MinCaml compiler 在MinCaml编译器中直接实现shift和reset
Proceedings of the 2009 ACM SIGPLAN workshop on ML Pub Date : 2009-08-30 DOI: 10.1145/1596627.1596636
Moe Masuko, K. Asai
{"title":"Direct implementation of shift and reset in the MinCaml compiler","authors":"Moe Masuko, K. Asai","doi":"10.1145/1596627.1596636","DOIUrl":"https://doi.org/10.1145/1596627.1596636","url":null,"abstract":"Although delimited control operators are becoming one of the useful tools to manipulate flow of programs, their direct and compiled implementation in a low-level language has not been proposed so far. The only direct and low-level implementations available are Gasbichler and Sperber's implementation in the Scheme 48 virtual machine and Kiselyov's implementation in the OCaml bytecode. Even though these implementations do provide insight into how stack frames are composed, they are not directly portable to compiled implementation in assembly language. This paper presents a direct implementation of delimited control operators shift and reset in the MinCaml compiler. It shows all the details of how composable continuations can be implemented in the PowerPC microprocessor using a stack discipline. We also show an implementation that copies stack frames lazily. To our knowledge, this is the first implementation of shift/reset in assembly language. It makes clear at the assembly language level what we have informally described so far, such as \"copying and composing stack frames\" and \"inserting a reset mark when captured continuations are called\". We demonstrate various benchmarks to show the performance of our implementation and discuss its pros and cons.","PeriodicalId":218033,"journal":{"name":"Proceedings of the 2009 ACM SIGPLAN workshop on ML","volume":"76 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124486202","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
Who: a verifier for effectful higher-order programs 谁:有效的高阶程序的验证者
Proceedings of the 2009 ACM SIGPLAN workshop on ML Pub Date : 2009-08-30 DOI: 10.1145/1596627.1596634
Johannes Kanig, J. Filliâtre
{"title":"Who: a verifier for effectful higher-order programs","authors":"Johannes Kanig, J. Filliâtre","doi":"10.1145/1596627.1596634","DOIUrl":"https://doi.org/10.1145/1596627.1596634","url":null,"abstract":"We present Who, a tool for verifying effectful higher-order functions. It features Effect polymorphism, higher-order logic and the possibility to reason about state in the logic, which enable highly modular specifications of generic code. Several small examples and a larger case study demonstrate its usefulness. The Who tool is intended to be used as an intermediate language for verification tools targeting ML-like programming languages.","PeriodicalId":218033,"journal":{"name":"Proceedings of the 2009 ACM SIGPLAN workshop on ML","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126022567","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}
引用次数: 20
Session details: Type systems 会话详细信息:类型系统
Proceedings of the 2009 ACM SIGPLAN workshop on ML Pub Date : 2009-08-30 DOI: 10.1145/3261174
David B. MacQueen
{"title":"Session details: Type systems","authors":"David B. MacQueen","doi":"10.1145/3261174","DOIUrl":"https://doi.org/10.1145/3261174","url":null,"abstract":"","PeriodicalId":218033,"journal":{"name":"Proceedings of the 2009 ACM SIGPLAN workshop on ML","volume":"11 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128479799","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}
引用次数: 0
Fast and sound random generation for automated testing and benchmarking in objective Caml 快速和健全的随机生成自动化测试和基准在目标Caml
Proceedings of the 2009 ACM SIGPLAN workshop on ML Pub Date : 2009-08-30 DOI: 10.1145/1596627.1596637
Benjamin Canou, Alexis Darrasse
{"title":"Fast and sound random generation for automated testing and benchmarking in objective Caml","authors":"Benjamin Canou, Alexis Darrasse","doi":"10.1145/1596627.1596637","DOIUrl":"https://doi.org/10.1145/1596627.1596637","url":null,"abstract":"Numerous software testing methods involve random generation of data structures. However, random sampling methods currently in use by testing frameworks are not satisfactory: often manually written by the programmer or at best extracted in an ad-hoc way relying on no theoretical background. On the other end, random sampling methods with good theoretical properties exist but have a too high cost to be used in testing, in particular when large inputs are needed. In this paper we describe how we applied the recently developed Boltzmann model of random generation to algebraic data types. We obtain a fully automatic way to derive random generators from Objective Caml type definitions. These generators have linear complexity and, the generation method being uniform, can also be used as a sound sampling back-end for benchmarking tools. As a result, we provide testing and benchmarking frameworks with a sound and fast generation basis. We also provide a testing and benchmarking library, available for download, showing the viability of this experiment.","PeriodicalId":218033,"journal":{"name":"Proceedings of the 2009 ACM SIGPLAN workshop on ML","volume":"68 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"127179876","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}
引用次数: 20
Correctly translating concurrency primitives 正确翻译并发原语
Proceedings of the 2009 ACM SIGPLAN workshop on ML Pub Date : 2009-08-30 DOI: 10.1145/1596627.1596633
Jan Schwinghammer, David Sabel, M. Schmidt-Schauß, Joachim Niehren
{"title":"Correctly translating concurrency primitives","authors":"Jan Schwinghammer, David Sabel, M. Schmidt-Schauß, Joachim Niehren","doi":"10.1145/1596627.1596633","DOIUrl":"https://doi.org/10.1145/1596627.1596633","url":null,"abstract":"Motivated by the question of correctness of a specific implementation of concurrent buffers in the lambda calculus with futures underlying Alice ML, we prove that concurrent buffers and handled futures can correctly encode each other. Our translations map waiting on handled futures to queuing of concurrent buffers and vice versa. Correctness of translations means that they preserve and reflect the observations of may- and must-convergence. As a consequence of compositionality, they are also adequate with respect to a contextually defined notion of observational program semantics. We demonstrate that our approach to the correctness of implementations applies uniformly to the whole compilation process from high-level to low-level concurrent languages.","PeriodicalId":218033,"journal":{"name":"Proceedings of the 2009 ACM SIGPLAN workshop on ML","volume":"3 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"125040246","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}
引用次数: 9
Session details: Reasoning and verification 会话细节:推理和验证
Proceedings of the 2009 ACM SIGPLAN workshop on ML Pub Date : 2009-08-30 DOI: 10.1145/3261175
Andrew D. Gordon
{"title":"Session details: Reasoning and verification","authors":"Andrew D. Gordon","doi":"10.1145/3261175","DOIUrl":"https://doi.org/10.1145/3261175","url":null,"abstract":"","PeriodicalId":218033,"journal":{"name":"Proceedings of the 2009 ACM SIGPLAN workshop on ML","volume":"37 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126004177","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}
引用次数: 0
Greedy bidirectional polymorphism 贪心双向多态
Proceedings of the 2009 ACM SIGPLAN workshop on ML Pub Date : 2009-08-30 DOI: 10.1145/1596627.1596631
Jana Dunfield
{"title":"Greedy bidirectional polymorphism","authors":"Jana Dunfield","doi":"10.1145/1596627.1596631","DOIUrl":"https://doi.org/10.1145/1596627.1596631","url":null,"abstract":"Bidirectional typechecking has become popular in advanced type systems because it works in many situations where inference is undecidable. In this paper, I show how to cleanly handle parametric polymorphism in a bidirectional setting. The key contribution is a bidirectional type system for a subset of ML that supports first-class (higher-rank and even impredicative) polymorphism, and is complete for predicative polymorphism (including ML-style polymorphism and higher-rank polymorphism). The system's power comes from bidirectionality combined with a \"greedy\" method of finding polymorphic instances inspired by Cardelli's early work on System F:. This work demonstrates that bidirectionality is a good foundation for traditionally vexing features like first-class polymorphism.","PeriodicalId":218033,"journal":{"name":"Proceedings of the 2009 ACM SIGPLAN workshop on ML","volume":"72 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"126355642","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}
引用次数: 14
QML: explicit first-class polymorphism for ML QML: ML的显式一等多态性
Proceedings of the 2009 ACM SIGPLAN workshop on ML Pub Date : 2009-08-30 DOI: 10.1145/1596627.1596630
Claudio V. Russo, Dimitrios Vytiniotis
{"title":"QML: explicit first-class polymorphism for ML","authors":"Claudio V. Russo, Dimitrios Vytiniotis","doi":"10.1145/1596627.1596630","DOIUrl":"https://doi.org/10.1145/1596627.1596630","url":null,"abstract":"Recent years have seen a revival of interest in extending ML's predicative type inference system with impredicative quantification in the style of System F, for which type inference is undecidable. This paper suggests a modest extension of ML with System F types: the heart of the idea is to extend the language of types with unary universal and existential quantifiers. The introduction and elimination of a quantified type is never inferred but indicated explicitly by the programmer by supplying the quantified type itself. Quantified types co-exist with ordinary ML schemes, which are in turn implicitly introduced and eliminated at let-bindings and use sites, respectively. The resulting language, QML, does not impose any restriction on instantiating quantified variables with quantified types; neither let- nor λ-bound variables ever require a type annotation, even if the variable's inferred scheme or type involves quantified types. This proposal, albeit more verbose in terms of annotations than others, is simple to specify, implement, understand, and formalize.","PeriodicalId":218033,"journal":{"name":"Proceedings of the 2009 ACM SIGPLAN workshop on ML","volume":"31 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124961271","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
A cryptographic protocol compiler for multiparty sessions 用于多方会话的加密协议编译器
Proceedings of the 2009 ACM SIGPLAN workshop on ML Pub Date : 2009-08-30 DOI: 10.1145/1596627.1596628
C. Fournet
{"title":"A cryptographic protocol compiler for multiparty sessions","authors":"C. Fournet","doi":"10.1145/1596627.1596628","DOIUrl":"https://doi.org/10.1145/1596627.1596628","url":null,"abstract":"We present the design and implementation of a verifying compiler that, given high-level multiparty session descriptions, generates custom cryptographic protocols. Our sessions specify pre-arranged patterns of message exchanges and data accesses between distributed participants. They provide each participant with strong, abstract security guarantees for all their messages. Our compiler generates ML code for sending and receiving these messages, with cryptographic operations and checks, in order to enforce these guarantees against any adversary that may control both the network and some session participants. We verify that the generated code is secure by relying on a recent refinement type system for cryptography. Most of the proof is performed by mechanized typechecking and does not rely on the correctness of our compiler. We obtain the strongest session security guarantees to date in a model that captures the executable details of protocol code. We illustrate and evaluate our approach on a series of protocols inspired by web services.","PeriodicalId":218033,"journal":{"name":"Proceedings of the 2009 ACM SIGPLAN workshop on ML","volume":"14 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2009-08-30","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114751100","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}
引用次数: 0
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学术官方微信