Filters








134 Hits in 4.1 sec

Detection of Asynchronous Message Passing Errors Using Static Analysis [chapter]

Maria Christakis, Konstantinos Sagonas
2011 Lecture Notes in Computer Science  
Concurrent programming is hard and prone to subtle errors.  ...  We have integrated our analysis in dialyzer, a widely used tool for detecting software defects in Erlang programs, and demonstrate its effectiveness on libraries and applications of considerable size.  ...  Besides being the basis for most compiler optimizations, in recent years static analysis has been extensively used to detect software errors in programs, both sequential and concurrent.  ... 
doi:10.1007/978-3-642-18378-2_3 fatcat:g6ob5s5bxrd5jlirhhvf7mx2mm

Static Detection of Race Conditions in Erlang [chapter]

Maria Christakis, Konstantinos Sagonas
2010 Lecture Notes in Computer Science  
We address the problem of detecting some commonly occurring kinds of race conditions in Erlang programs using static analysis.  ...  We have integrated our analysis in dialyzer, a commonly used tool for detecting software defects in Erlang programs which is part of Erlang/OTP, and evaluate its effectiveness and performance on a suite  ...  in Erlang programs using static analysis.  ... 
doi:10.1007/978-3-642-11503-5_11 fatcat:e7oeqceo5redfbcrinuq5cmjde

Detecting Software Defects in Telecom Applications Through Lightweight Static Analysis: A War Story [chapter]

Tobias Lindahl, Konstantinos Sagonas
2004 Lecture Notes in Computer Science  
To this effect, this paper describes the architecture and implementation of a software tool that uses lightweight static analysis to detect discrepancies (i.e., software defects such as exception-raising  ...  Our tool, starting from virtual machine bytecode, discovers, tracks, and propagates type information which is often implicit in Erlang programs, and reports warnings when a variety of type errors and other  ...  and for their kind permission to report those results in this paper.  ... 
doi:10.1007/978-3-540-30477-7_7 fatcat:4in5ymfrsjdjrpzbw3yfbgdete

A large-scale study of programming languages and code quality in GitHub

Baishakhi Ray, Daryl Posnett, Premkumar Devanbu, Vladimir Filkov
2017 Communications of the ACM  
, static and strongly typed languages.  ...  This reasonably large sample size allows us to use a mixed-methods approach, combining multiple regression modeling with visualization and text analytics, to study the effect of language features such  ...  CCF-1247280 and CCF-1446683 and from AFOSR award FA955-11-1-0246.  ... 
doi:10.1145/3126905 fatcat:tgmgwkhq2nhktnsnvtcja4qlwe

A large scale study of programming languages and code quality in github

Baishakhi Ray, Daryl Posnett, Vladimir Filkov, Premkumar Devanbu
2014 Proceedings of the 22nd ACM SIGSOFT International Symposium on Foundations of Software Engineering - FSE 2014  
, static and strongly typed languages.  ...  This reasonably large sample size allows us to use a mixed-methods approach, combining multiple regression modeling with visualization and text analytics, to study the effect of language features such  ...  CCF-1247280 and CCF-1446683 and from AFOSR award FA955-11-1-0246.  ... 
doi:10.1145/2635868.2635922 dblp:conf/sigsoft/RayPFD14 fatcat:m2mmyfco6vev5cexcjtb7lxlqi

Detecting and Visualising Process Relationships in Erlang

Melinda Tóth, István Bozó
2014 Procedia Computer Science  
Static software analyser tools can help in program comprehension by detecting relations among program parts.  ...  In case of dynamic languages only a (good) approximation of the real dependencies can be calculated. In this paper we present algorithms to build a process relation graph for Erlang programs.  ...  Detecting and Visualising Process Relationships in Erlang Tóth and Bozó Summary We presented a model to represent the communication between Erlang processes.  ... 
doi:10.1016/j.procs.2014.05.138 fatcat:xbc4pls4gzgjjl6fwdr4x5zwqe

TypEr

Tobias Lindahl, Konstantinos Sagonas
2005 Proceedings of the 2005 ACM SIGPLAN workshop on Erlang - ERLANG '05  
We describe and document the techniques used in TYPER, a fully automatic type annotator for ERLANG programs based on constraint-based type inference of success typings (a notion closely related to principal  ...  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.  ...  Acknowledgments This research has been supported in part by VINNOVA through the ASTEC (Advanced Software Technology) competence center as part of a project in cooperation with Ericsson and T-Mobile.  ... 
doi:10.1145/1088361.1088366 dblp:conf/erlang/LindahlS05 fatcat:kfyxgyf2ejhfpa2mi3dsqv2yee

Practical type inference based on success typings

Tobias Lindahl, Konstantinos Sagonas
2006 Proceedings of the 8th ACM SIGPLAN symposium on Principles and practice of declarative programming - PPDP '06  
In languages where the compiler performs no static type checks, many programs never go wrong, but the intended use of functions and component interfaces is often undocumented or appears only in the form  ...  Unlike most static type systems, success typings incorporate subtyping and never disallow a use of a function that will not result in a type clash during runtime.  ...  Acknowledgments During 2005, this research has been supported in part by VIN-NOVA through the ASTEC (Advanced Software Technology) competence center as part of a project in cooperation with Ericsson.  ... 
doi:10.1145/1140335.1140356 dblp:conf/ppdp/LindahlS06 fatcat:mt66wos4p5asxcqba2juehd4ru

On the Impact of Programming Languages on Code Quality [article]

Emery D. Berger, Celeste Hollenbeck, Petr Maj, Olga Vitek, Jan Vitek
2019 arXiv   pre-print
This paper is a reproduction of work by Ray et al. which claimed to have uncovered a statistically significant association between eleven programming languages and software defects in projects hosted on  ...  We uncover a number of flaws that undermine the conclusions of the original study as only four languages are found to have a statistically significant association with defects, and even for those the effect  ...  We thank Baishakhi Ray and Vladimir Filkov for sharing the data and code of their FSE paper.  ... 
arXiv:1901.10220v2 fatcat:zi4obm7m4bfwti5cddbsp2engu

Concolic testing for functional languages

Aggelos Giantsios, Nikolaos Papaspyrou, Konstantinos Sagonas
2017 Science of Computer Programming  
In this paper, we demonstrate its application to a functional programming language core, a subset of the core language of Erlang, that supports pattern matching, structured recursive data types such as  ...  Concolic testing has so far been applied, mainly at the level of bytecode or assembly code, to programs written in imperative languages that manipulate primitive data types such as integers and arrays.  ...  Besides documentation, such type information can be used by tools, such as Dialyzer [12] , performing static analyses to detect definite type errors.  ... 
doi:10.1016/j.scico.2017.04.008 fatcat:vihaov5apfgw5o3yhpftatlxva

Concolic testing for functional languages

Aggelos Giantsios, Nikolaos Papaspyrou, Konstantinos Sagonas
2015 Proceedings of the 17th International Symposium on Principles and Practice of Declarative Programming - PPDP '15  
In this paper, we demonstrate its application to a functional programming language core, a subset of the core language of Erlang, that supports pattern matching, structured recursive data types such as  ...  Concolic testing has so far been applied, mainly at the level of bytecode or assembly code, to programs written in imperative languages that manipulate primitive data types such as integers and arrays.  ...  Besides documentation, such type information can be used by tools, such as Dialyzer [12] , performing static analyses to detect definite type errors.  ... 
doi:10.1145/2790449.2790519 dblp:conf/ppdp/GiantsiosPS15 fatcat:sa5na5nrl5gbfev6n3yqhzldaa

Simplifying Contract-Violating Traces

Christian Colombo, Adrian Francalanza, Ian Grima
2012 Electronic Proceedings in Theoretical Computer Science  
Contract conformance is hard to determine statically, prior to the deployment of large pieces of software.  ...  A major drawback with this technique is that, often, contract violations take time to surface, resulting in long traces that are hard to analyse.  ...  Concurrency and distribution, inherent to Erlang programs, may yield different thread interleavings each time a system is executed, potentially resulting in non-deterministic behaviour.  ... 
doi:10.4204/eptcs.94.2 fatcat:imjqndptdbbkzcwkwjzlpfzmvq

How programming languages will co-evolve with software engineering: a bright decade ahead

Emerson Murphy-Hill, Dan Grossman
2014 Proceedings of the on Future of Software Engineering - FOSE 2014  
We discuss seven emerging trends in the design, adoption, and use of programming languages that have clear and valuable overlap with software engineering.  ...  Programming languages are an indispensable foundation of software engineering, so it is essential that innovations in software engineering anticipate and influence innovations in programming languages  ...  Does static typing reduce the need for testing and the number of defects in deployed products?  ... 
doi:10.1145/2593882.2593898 dblp:conf/icse/Murphy-HillG14 fatcat:n5mauqi5lzal7nupwz75ot3cam

Early fault detection with model-based testing

Jonas Boberg
2008 Proceedings of the 7th ACM SIGPLAN workshop on ERLANG - ERLANG '08  
We apply model-based testing to a subsystem of a message gateway product in order to improve early fault detection.  ...  In this study we explore model-based testing on the system-level, starting from early development.  ...  Acknowledgements This work was sponsored by Erlang Training and Consulting Ltd and Quviq AB.  ... 
doi:10.1145/1411273.1411276 dblp:conf/erlang/Boberg08 fatcat:d7xmq7bdvngpvo447xcpposqiu

Safe Commits for Transactional Featherweight Java [chapter]

Thi Mai Thuong Tran, Martin Steffen
2010 Lecture Notes in Computer Science  
So it is useful to investigate different analysis methods to achieve safe concurrent programs.  ...  This thesis develops and formally investigates different static analysis methods for various concurrency-related problems in concurrent object-oriented programming languages to guarantee the absence of  ...  Nonetheless, since it is a symbolic analysis, static type checkers can detect type errors in all possible executions of the program as the state space to be checked at compile-time is finite in the size  ... 
doi:10.1007/978-3-642-16265-7_21 fatcat:juc6xoj4pbdqrokxzcr2zqr7ei
« Previous Showing results 1 — 15 out of 134 results