Proceedings of the 10th ACM SIGPLAN workshop on Erlang最新文献

筛选
英文 中文
Extracting QuickCheck specifications from EUnit test cases 从EUnit测试用例中提取QuickCheck规范
Proceedings of the 10th ACM SIGPLAN workshop on Erlang Pub Date : 2011-09-23 DOI: 10.1145/2034654.2034666
T. Arts, Pablo Lamela Seijas, S. Thompson
{"title":"Extracting QuickCheck specifications from EUnit test cases","authors":"T. Arts, Pablo Lamela Seijas, S. Thompson","doi":"10.1145/2034654.2034666","DOIUrl":"https://doi.org/10.1145/2034654.2034666","url":null,"abstract":"Writing EUnit tests is more common than writing QuickCheck specifications, although QuickCheck specifications potentially explore far more scenarios than manually written unit tests. In particular for implementations that have side-effects, writing a good set of EUnit tests is often difficult and labour intensive. In this paper we report on mechanisms to extract QuickCheck specifications from EUnit test suites. We use the QSM algorithm to infer state machines from sets of positive and negative traces derived from the test suite. These traces can be derived either statically or dynamically and we describe both approaches here. Finally we show how to move from the inferred state machine to a QuickCheck state machine. This QuickCheck state machine can then be used to generate tests, which include the EUnit tests, but also include many new and different combinations that can augment the test suite. In this way, one can achieve substantially better testing with little extra work.","PeriodicalId":331264,"journal":{"name":"Proceedings of the 10th ACM SIGPLAN workshop on Erlang","volume":"72 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130561714","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
SFMT pseudo random number generator for Erlang 用于Erlang的SFMT伪随机数生成器
Proceedings of the 10th ACM SIGPLAN workshop on Erlang Pub Date : 2011-09-23 DOI: 10.1145/2034654.2034669
K. Rikitake
{"title":"SFMT pseudo random number generator for Erlang","authors":"K. Rikitake","doi":"10.1145/2034654.2034669","DOIUrl":"https://doi.org/10.1145/2034654.2034669","url":null,"abstract":"The stock implementation of Erlang/OTP pseudo random number generator (PRNG), random module, is based on an algorithm developed in 1980s called AS183, and has known statistic deficiencies for large-scale applications. Using modern PRNG algorithms with longer generation periods reduces the deficiencies. This paper is a case study of sfmt-erlang module, an implementation of SIMD-oriented Fast Mersenne Twister (SFMT) PRNG with the native interface functions (NIFs) of Erlang. The test results show the execution speed of the implementation is approximately three times faster than the random module on the x86 and x86_64 architecture computers, and the execution own time for generating single random number sequences is proportional to the internal state table length.","PeriodicalId":331264,"journal":{"name":"Proceedings of the 10th ACM SIGPLAN workshop on Erlang","volume":"252 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"122069863","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
Accelerating race condition detection through procrastination 通过拖延加速竞态检测
Proceedings of the 10th ACM SIGPLAN workshop on Erlang Pub Date : 2011-09-23 DOI: 10.1145/2034654.2034659
T. Arts, John Hughes, U. Norell, Nicholas Smallbone, Hans Svensson
{"title":"Accelerating race condition detection through procrastination","authors":"T. Arts, John Hughes, U. Norell, Nicholas Smallbone, Hans Svensson","doi":"10.1145/2034654.2034659","DOIUrl":"https://doi.org/10.1145/2034654.2034659","url":null,"abstract":"Race conditions are notoriously frustrating to find, and good tools can help. The main difficulty is reliably provoking the race condition. In previous work we presented a randomising scheduler for Erlang that helps with this task. In a language without pervasive shared mutable state, such as Erlang, performing scheduling decisions at random uncovers race conditions surprisingly well. However, it is not always enough. We describe a technique, procrastination, that aims to provoke race conditions more often than by random scheduling alone. It works by running the program and looking for pairs of events that might interfere, such as two message sends to the same process. Having found such a pair of events, we re-run the program but try to provoke a race condition by reversing the order of the two events. We apply our technique to a piece of industrial Erlang code. Compared to random scheduling alone, procrastination allows us to find minimal failing test cases more reliably and more quickly.","PeriodicalId":331264,"journal":{"name":"Proceedings of the 10th ACM SIGPLAN workshop on Erlang","volume":"102 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"116926808","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
A PropEr integration of types and function specifications with property-based testing 类型和功能规范与基于属性的测试的适当集成
Proceedings of the 10th ACM SIGPLAN workshop on Erlang Pub Date : 2011-09-23 DOI: 10.1145/2034654.2034663
Manolis Papadakis, Konstantinos Sagonas
{"title":"A PropEr integration of types and function specifications with property-based testing","authors":"Manolis Papadakis, Konstantinos Sagonas","doi":"10.1145/2034654.2034663","DOIUrl":"https://doi.org/10.1145/2034654.2034663","url":null,"abstract":"We present a tight integration of the language of types and function specifications of Erlang with property-based testing. To achieve this integration we have developed from scratch PropEr, an open-source QuickCheck-inspired property-based testing tool. We present technical details of this integration, most notably how the conversion of recursive types into appropriate generators takes place and how function specifications can be turned automatically into simple properties in order to exercise the code of these functions. Finally, we present experiences and advice for the proper use of PropEr.","PeriodicalId":331264,"journal":{"name":"Proceedings of the 10th ACM SIGPLAN workshop on Erlang","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130337948","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}
引用次数: 97
Modeling growth and dynamics of neural networks via message passing in Erlang: neural models have a natural home in message passing functional programming languages 在Erlang中通过消息传递对神经网络的增长和动态建模:神经模型在消息传递函数式编程语言中有一个天然的家
Proceedings of the 10th ACM SIGPLAN workshop on Erlang Pub Date : 2011-09-23 DOI: 10.1145/2034654.2034674
Trevor Bain, Patrick Campbell, Jonas Karlsson
{"title":"Modeling growth and dynamics of neural networks via message passing in Erlang: neural models have a natural home in message passing functional programming languages","authors":"Trevor Bain, Patrick Campbell, Jonas Karlsson","doi":"10.1145/2034654.2034674","DOIUrl":"https://doi.org/10.1145/2034654.2034674","url":null,"abstract":"Erlang is well suited as a platform for modeling neural dynamics and development. We overview similarities between neural architecture and language paradigms in Erlang, specifically functional programming, message passing, distributed computing and concurrency. We present examples of using Erlang to model neural dynamics and development respectively. Finally, we synthesize these two examples into an artificial retina and then we conclude with an overview of ongoing work.","PeriodicalId":331264,"journal":{"name":"Proceedings of the 10th ACM SIGPLAN workshop on Erlang","volume":"90 S1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"120841960","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
Erlang ETS tables and software transactional memory: how transactions make ETS tables more like ordinary actors Erlang ETS表和软件事务性内存:事务如何使ETS表更像普通的参与者
Proceedings of the 10th ACM SIGPLAN workshop on Erlang Pub Date : 2011-09-23 DOI: 10.1145/2034654.2034658
Patrik Nyblom
{"title":"Erlang ETS tables and software transactional memory: how transactions make ETS tables more like ordinary actors","authors":"Patrik Nyblom","doi":"10.1145/2034654.2034658","DOIUrl":"https://doi.org/10.1145/2034654.2034658","url":null,"abstract":"This article describes a way to make the ETS tables of Erlang fit better into the actor programming model. Enhancing the interface of the ETS tables with a concept of transactions is suggested as a means both to achieve increased parallelism, better performance and less error-prone code, while still keeping no less true to the actor model.","PeriodicalId":331264,"journal":{"name":"Proceedings of the 10th ACM SIGPLAN workshop on Erlang","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123650382","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}
引用次数: 5
Session details: Testing with QuickCheck 会话细节:测试与快速检查
Proceedings of the 10th ACM SIGPLAN workshop on Erlang Pub Date : 2011-09-23 DOI: 10.1145/3249221
Konstantinos Sagonas
{"title":"Session details: Testing with QuickCheck","authors":"Konstantinos Sagonas","doi":"10.1145/3249221","DOIUrl":"https://doi.org/10.1145/3249221","url":null,"abstract":"","PeriodicalId":331264,"journal":{"name":"Proceedings of the 10th ACM SIGPLAN workshop on Erlang","volume":"82 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"132587963","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
Model-based testing of data types with side effects 对带有副作用的数据类型进行基于模型的测试
Proceedings of the 10th ACM SIGPLAN workshop on Erlang Pub Date : 2011-09-23 DOI: 10.1145/2034654.2034662
T. Arts, Laura M. Castro
{"title":"Model-based testing of data types with side effects","authors":"T. Arts, Laura M. Castro","doi":"10.1145/2034654.2034662","DOIUrl":"https://doi.org/10.1145/2034654.2034662","url":null,"abstract":"Data types are the core of many applications, and libraries offering implementations of data types should better be solid and well tested. Testing purely functional data types with QuickCheck provides a complete test method for data types, but establishing a complete test method for data types with side-effects is still an open issue. In this paper we show how we can use a stateful QuickCheck model to establish a complete test method for any data type. Considering side effects allows us to move from the purely functional world to the imperative world, as needed to face the testing of data types implementations in languages such as C. We therefore applied our method to some of the data types provided by the well-known GNOME Glib library.","PeriodicalId":331264,"journal":{"name":"Proceedings of the 10th ACM SIGPLAN workshop on Erlang","volume":"8 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"114374914","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
Session details: Implementation and practice 会议细节:实施和实践
Proceedings of the 10th ACM SIGPLAN workshop on Erlang Pub Date : 2011-09-23 DOI: 10.1145/3249222
S. Fritchie
{"title":"Session details: Implementation and practice","authors":"S. Fritchie","doi":"10.1145/3249222","DOIUrl":"https://doi.org/10.1145/3249222","url":null,"abstract":"","PeriodicalId":331264,"journal":{"name":"Proceedings of the 10th ACM SIGPLAN workshop on Erlang","volume":"33 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2011-09-23","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129713692","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学术官方微信