Erlang Workshop最新文献

筛选
英文 中文
Evaluation of database management systems for Erlang Erlang数据库管理系统的评价
Erlang Workshop Pub Date : 2006-09-16 DOI: 10.1145/1159789.1159802
Emil Hellman
{"title":"Evaluation of database management systems for Erlang","authors":"Emil Hellman","doi":"10.1145/1159789.1159802","DOIUrl":"https://doi.org/10.1145/1159789.1159802","url":null,"abstract":"Erlang/OTP's DBMS Mnesia is lacking in several important areas to consider when implementing very large databases with massive scalability requirements. This article reveals the result from a study examining what Erlang developers consider important aspects of DBMSs and an analytical hierarchy process (AHP) evaluation on four mature open source DBMSs based on those criteria. AHP is suggested as good method to evaluate DBMSs for Erlang projects. The criteria used in this evaluation were derived from a survey sent to the Erlang community. It should therefore be noted that which DBMS to use in Erlang projects should also be determined by the project's and the software's own specific criteria.","PeriodicalId":140676,"journal":{"name":"Erlang Workshop","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"130560562","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}
引用次数: 6
Model checking erlang programs: the functional approach 模型检查erlang程序:函数方法
Erlang Workshop Pub Date : 2006-09-16 DOI: 10.1145/1159789.1159793
Lars-Åke Fredlund, Clara Benac Earle
{"title":"Model checking erlang programs: the functional approach","authors":"Lars-Åke Fredlund, Clara Benac Earle","doi":"10.1145/1159789.1159793","DOIUrl":"https://doi.org/10.1145/1159789.1159793","url":null,"abstract":"We present the new model checker McErlang for verifying Erlang programs. In comparison with the etomcrl tool set, McErlang differs mainly in that it is implemented in Erlang. The implementation language offers several advantages: checkable programs use \"almost\" normal Erlang, correctness properties are formulated in Erlang itself instead of a temporal logic, and it is easier to properly diagnose program bugs discovered by the model checker. In addition the model checker can easily be modified, thanks largely to the use of Erlang. The drawback of writing the model checker in Erlang is, potentially, severely reduced performance compared with model checking tools programmed in programming languages which permit destructive updates of data structures.","PeriodicalId":140676,"journal":{"name":"Erlang Workshop","volume":"134 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124169325","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}
引用次数: 12
Testing telecoms software with quviq QuickCheck 用quviq QuickCheck测试电信软件
Erlang Workshop Pub Date : 2006-09-16 DOI: 10.1145/1159789.1159792
T. Arts, John Hughes, J. Johansson, Ulf T. Wiger
{"title":"Testing telecoms software with quviq QuickCheck","authors":"T. Arts, John Hughes, J. Johansson, Ulf T. Wiger","doi":"10.1145/1159789.1159792","DOIUrl":"https://doi.org/10.1145/1159789.1159792","url":null,"abstract":"We present a case study in which a novel testing tool, Quviq QuickCheck, is used to test an industrial implementation of the Megaco protocol. We considered positive and negative testing and we used our developed specification to test an old version in order to estimate how useful QuickCheck could potentially be when used early in development.The results of the case study indicate that, by using Quviq QuickCheck, we would have been able to detect faults early in the development.We detected faults that had not been detected by other testing techniques. We found unclarities in the specifications and potential faults when the software is used in a different setting. The results are considered promising enough to Ericsson that they are investing in an even larger case study, this time from the beginning of the development of a new product.","PeriodicalId":140676,"journal":{"name":"Erlang Workshop","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"128762362","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}
引用次数: 195
Towards automatic verification of Erlang programs by π-calculus translation 用π微积分翻译实现Erlang程序的自动验证
Erlang Workshop Pub Date : 2006-09-16 DOI: 10.1145/1159789.1159798
C. Roy, T. Noll, B. Roy, J. Cordy
{"title":"Towards automatic verification of Erlang programs by π-calculus translation","authors":"C. Roy, T. Noll, B. Roy, J. Cordy","doi":"10.1145/1159789.1159798","DOIUrl":"https://doi.org/10.1145/1159789.1159798","url":null,"abstract":"ERLANG is a concurrent, dynamically typed, distributed, purely functional programming language with non-purely functional libraries that is mainly employed in telecommunication systems. This paper provides a contribution to the formal modeling and verificationn of programs written in Erlang. It presents a mapping of Erlang programs to the π-calculus, a process algebra whose name-passing feature allows representation of the mobile aspects of software written in Erlang in a natural way.","PeriodicalId":140676,"journal":{"name":"Erlang Workshop","volume":"43 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123551481","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
Concurrent caching 并发缓存
Erlang Workshop Pub Date : 2006-09-16 DOI: 10.1145/1159789.1159797
Jay Nelson
{"title":"Concurrent caching","authors":"Jay Nelson","doi":"10.1145/1159789.1159797","DOIUrl":"https://doi.org/10.1145/1159789.1159797","url":null,"abstract":"A concurrent cache design is presented which allows cached data to be spread across a cluster of computers. The implementation separates persistent storage from cache storage and abstracts the cache behaviour so that the user can experiment with cache size and replacement policy to optimize performance for a given system, even if the production data store is not available. Using processes to implement cached objects allows for runtime configurability and adaptive use policies as well as parallelization to optimize resource access efficiency.","PeriodicalId":140676,"journal":{"name":"Erlang Workshop","volume":"17 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"123909990","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
Comparing C++ and ERLANG for motorola telecoms software 比较c++和ERLANG在摩托罗拉电信软件中的应用
Erlang Workshop Pub Date : 2006-09-16 DOI: 10.1145/1159789.1159800
P. Trinder
{"title":"Comparing C++ and ERLANG for motorola telecoms software","authors":"P. Trinder","doi":"10.1145/1159789.1159800","DOIUrl":"https://doi.org/10.1145/1159789.1159800","url":null,"abstract":"There is considerable folklore suggesting that ERLANG aids the rapid production of robust distributed systems, but only a few rather general studies published. This talk reports the first systematic comparative evaluation of ERLANG in the context of substantial commercial products.Our research strategy is to re-engineer two C++/CORBA telecoms applications in ERLANG and make comparative measurements of both implementations. The first component is a medium-scale (15K line) Dispatch Call Controller (DCC), and the second a smaller (3K line) Data Mobility (DM) component that is closely integrated with five other components of a radio communications subsystem (RCS). To investigate interoperation costs we have constructed two DMs: a pure ERLANG implementation and an ER-LANG/C implementation that reuses some C DM libraries.We investigate the following six research questions, first considering the potential benefits of a high-level distributed language technology like ERLANG.","PeriodicalId":140676,"journal":{"name":"Erlang Workshop","volume":"16 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121399227","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}
引用次数: 1
Concurrency oriented programming in termite scheme 白蚁方案中面向并发的编程
Erlang Workshop Pub Date : 2006-09-16 DOI: 10.1145/1159789.1159795
G. Germain
{"title":"Concurrency oriented programming in termite scheme","authors":"G. Germain","doi":"10.1145/1159789.1159795","DOIUrl":"https://doi.org/10.1145/1159789.1159795","url":null,"abstract":"Termite Scheme is a variant of Scheme intended for distributed computing. It offers a simple and powerful concurrency model, inspired by the Erlang programming language, which is based on a message-passing model of concurrency. Our system is well suited for building custom protocols and abstractions for distributed computation. Its open network model allows for the building of non-centralized distributed applications. The possibility of failure is reflected in the model, and ways to handle failure are available in the language. We exploit the existence of first class continuations in order to allow the expression of high-level concepts such as process migration. We describe the Termite model and its implications, how it compares to Erlang, and describe sample applications built with Termite. We conclude with a discussion of the current implementation and its performance.","PeriodicalId":140676,"journal":{"name":"Erlang Workshop","volume":"42 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"115324206","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}
引用次数: 45
EUnit: a lightweight unit testing framework for Erlang EUnit: Erlang的轻量级单元测试框架
Erlang Workshop Pub Date : 2006-09-16 DOI: 10.1145/1159789.1159791
Richard Carlsson, Mickaël Rémond
{"title":"EUnit: a lightweight unit testing framework for Erlang","authors":"Richard Carlsson, Mickaël Rémond","doi":"10.1145/1159789.1159791","DOIUrl":"https://doi.org/10.1145/1159789.1159791","url":null,"abstract":"In recent years, agile development methods have become increasingly popular, and although few people seem willing to go all the way with Extreme Programming, it seems that there is a general consensus today that test-driven development with unit testing is a Good Thing. However, this requires that tests are easy to write, since programmers are generally lazy, and that running the tests is easy and quick and the test results are presented in a concise manner, to make the feedback loop as short as possible. Failing this, it is likely that testing will not be extensively used during development.The concept of a lightweight unit testing framework that fulfils these goals, tailored to a particular programming language, was popularized by the JUnit framework for Java, written by Kent Beck and Erich Gamma. This was based on an earlier framework for Smalltalk called SUnit, by Kent Beck. The ideas in JUnit are easily transferred to any other object-oriented language, and today variants have been written for many different programming languages.We will here present our adaptation of these ideas to Erlang. The EUnit framework provides the usual features of such frameworks: writing tests is very easy indeed, and so is running them. Like most other similar frameworks, we rely on program introspection and naming conventions to reduce the amount of coding necessary to write tests. However, there are also some unusual aspects. Since Erlang is functional, rather than object oriented, it is not possible to use inheritance to provide basic test functionality, nor to use object instantiation to handle things like setup/teardown of contexts for tests. Instead, we base our system on a \"language\" for describing sets of tests, using mainly lists, tuples, and lambda expressions. We also make rather heavy use of preprocessor macros to allow more compact and readable notation. Because test descriptions are data, they can be easily combined, abstracted over, or even be generated on the fly. Lambda expressions allow subtests to be instantiated with setup/teardown contexts.Furthermore, the parallel and distributed nature of the Erlang language on one hand provides a challenge, but on the other hand gives us enormous power and flexibility. For instance, it is trivial to express in our test description language that a set of tests should be executed by a separate process, or on a specific machine, or all in parallel, or even as a number of subsets of parallel tests, with each subset running on a separate machine. Apart from providing easy distributed job control, this allows us to write unit tests that test the behaviour of parallel and distributed programs, something which otherwise tends to require so much coding for each test as to be impractical.Although EUnit is still under development, we feel that it has great potential, and that it uses some novel ideas that could be used to implement similar frameworks in other functional languages. EUnit is free software under the GNU","PeriodicalId":140676,"journal":{"name":"Erlang Workshop","volume":"1 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"129429599","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}
引用次数: 24
From HTTP to HTML: Erlang/OTP experiences in web based service applications 从HTTP到HTML: Erlang/OTP在基于web的服务应用中的经验
Erlang Workshop Pub Date : 2006-09-16 DOI: 10.1145/1159789.1159801
Francesco Cesarini, L. Larsson, Michal Slaski
{"title":"From HTTP to HTML: Erlang/OTP experiences in web based service applications","authors":"Francesco Cesarini, L. Larsson, Michal Slaski","doi":"10.1145/1159789.1159801","DOIUrl":"https://doi.org/10.1145/1159789.1159801","url":null,"abstract":"This paper describes the lessons learnt when internally developing web applications in Erlang. On the basis of these experiences, a framework called the Web Platform has been implemented. The Web Platform follows a design pattern separating data processing and formatting, allowing the construction of flexible and maintainable software architectures. It also delivers mechanisms for building dynamic pages and components. On top of the platform and components, web interfaces to commercial Erlang systems have been built.","PeriodicalId":140676,"journal":{"name":"Erlang Workshop","volume":"65 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2006-09-16","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"124596201","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
TypEr: a type annotator of Erlang code typeer: Erlang代码的类型注释器
Erlang Workshop Pub Date : 2005-09-26 DOI: 10.1145/1088361.1088366
Tobias Lindahl, Konstantinos Sagonas
{"title":"TypEr: a type annotator of Erlang code","authors":"Tobias Lindahl, Konstantinos Sagonas","doi":"10.1145/1088361.1088366","DOIUrl":"https://doi.org/10.1145/1088361.1088366","url":null,"abstract":"We describe and document the techniques used in TOOL, a fully automatic type annotator for Erlang programs based on constraint-based type inference of success typings (a notion closely related to principal typings). The inferred typings are fine-grained and the type system currently includes subtyping and subtype polymorphism but not parametric polymorphism. In particular, we describe and illustrate through examples a type inference algorithm tailored to Erlang's characteristics which is modular, reasonably fast, and appears to scale well in practice.","PeriodicalId":140676,"journal":{"name":"Erlang Workshop","volume":"28 1","pages":"0"},"PeriodicalIF":0.0,"publicationDate":"2005-09-26","publicationTypes":"Journal Article","fieldsOfStudy":null,"isOpenAccess":false,"openAccessPdf":"","citationCount":null,"resultStr":null,"platform":"Semanticscholar","paperid":"121524354","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}
引用次数: 30
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学术文献互助群
群 号:604180095
Book学术官方微信