Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- review-articleAugust 2021
Ensuring the Correctness of Regular Expressions: A Review
International Journal of Automation and Computing (SPIJAC), Volume 18, Issue 4Pages 521–535https://doi.org/10.1007/s11633-021-1301-4AbstractRegular expressions are widely used within and even outside of computer science due to their expressiveness and flexibility. However, regular expressions have a quite compact and rather tolerant syntax that makes them hard to understand, hard to ...
Learning from, understanding, and supporting DevOps artifacts for docker
ICSE '20: Proceedings of the ACM/IEEE 42nd International Conference on Software EngineeringPages 38–49https://doi.org/10.1145/3377811.3380406With the growing use of DevOps tools and frameworks, there is an increased need for tools and techniques that support more than code. The current state-of-the-art in static developer assistance for tools like Docker is limited to shallow syntactic ...
- articleDecember 2016
Adtpp: lightweight efficient safe polymorphic algebraic data types for C
Software—Practice & Experience (SPRE), Volume 46, Issue 12Pages 1685–1703https://doi.org/10.1002/spe.2407Adtpp is an open-source tool that adds support for algebraic data types ADTs to the C programming language. ADTs allow more precise description of program types and more robust handling of data structures than are directly supported by C. ADT ...
- short-paperOctober 2016
Short Paper: Superhacks: Exploring and Preventing Vulnerabilities in Browser Binding Code
PLAS '16: Proceedings of the 2016 ACM Workshop on Programming Languages and Analysis for SecurityPages 103–109https://doi.org/10.1145/2993600.2993602In this paper, we analyze security vulnerabilities in the binding layer of browser code, and propose a research agenda to prevent these weaknesses with (1) static bug checkers and (2) new embedded domain specific languages (EDSLs). Browser ...
- research-articleMay 2015
Software Change Contracts
ACM Transactions on Software Engineering and Methodology (TOSEM), Volume 24, Issue 3Article No.: 18, Pages 1–43https://doi.org/10.1145/2729973Software errors often originate from incorrect changes, including incorrect program fixes, incorrect feature updates, and so on. Capturing the intended program behavior explicitly via contracts is thus an attractive proposition. In our recent work, we ...
-
- articleMay 2014
Constantine: configurable static analysis tool in Eclipse
Software—Practice & Experience (SPRE), Volume 44, Issue 5Pages 537–563https://doi.org/10.1002/spe.2173Static code analysers help in exposing internal code quality problems. For higher effectiveness, they must be pressed into use early during the development of code. They must support the formulation of new coding constraints with relative ease to better ...
- ArticleNovember 2011
Improvement of a Visualization Technique for the Passage Rate of Unit Testing and Static Checking and Its Evaluation
IWSM-MENSURA '11: Proceedings of the 2011 Joint Conference of the 21st International Workshop on Software Measurement and the 6th International Conference on Software Process and Product MeasurementPages 279–284https://doi.org/10.1109/IWSM-MENSURA.2011.27Software visualization has attracted lots of attention. The techniques fall into two categories: visualization of software component relationships and visualization of software metrics.We have already proposed a hybrid method based on both of the two ...
- ArticleJune 2011
A combined technique for automatic detection of backward binary compatibility problems
PSI'11: Proceedings of the 8th international conference on Perspectives of System InformaticsPages 313–321https://doi.org/10.1007/978-3-642-29709-0_27This paper discusses the problem of ensuring backward compatibility between new and old versions of software components (e.g., libraries). Linux environment is considered as the main example. Breakage of the compatibility in a new version of a software ...
- ArticleMay 2011
A Visualization Technique for the Passage Rates of Unit Testing and Static Checking with Caller-Callee Relationships
ISPAW '11: Proceedings of the 2011 IEEE Ninth International Symposium on Parallel and Distributed Processing with Applications WorkshopsPages 336–341https://doi.org/10.1109/ISPAW.2011.54Software visualization has attracted lots of attention. The techniques fall into two categories: visualization of software component relationships and visualization of software metrics. We propose a new hybrid method based on both of the two categories. ...
- research-articleFebruary 2010
Hybrid type checking
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 32, Issue 2Article No.: 6, Pages 1–34https://doi.org/10.1145/1667048.1667051Traditional static type systems are effective for verifying basic interface specifications. Dynamically checked contracts support more precise specifications, but these are not checked until runtime, resulting in incomplete detection of defects. Hybrid ...
- research-articleMay 2008
Calysto: scalable and precise extended static checking
ICSE '08: Proceedings of the 30th international conference on Software engineeringPages 211–220https://doi.org/10.1145/1368088.1368118Automatically detecting bugs in programs has been a long-held goal in software engineering. Many techniques exist, trading-off varying levels of automation, thoroughness of coverage of program behavior, precision of analysis, and scalability to large ...
- ArticleSeptember 2007
Development of model based tools to support the design of railway control applications
SAFECOMP'07: Proceedings of the 26th international conference on Computer Safety, Reliability, and SecurityPages 430–435The development standard for railway control software requires several design and verification methods. To support these methods we elaborated a coherent set of tools based on UML state diagrams. To avoid the problems of the ambiguous UML semantics, we ...
- ArticleOctober 2006
ICODE: enabling the static checking of programs and their documentation
SIGDOC '06: Proceedings of the 24th annual ACM international conference on Design of communicationPages 121–128https://doi.org/10.1145/1166324.1166352We describe ICODE an intermediate language for a static checking system, which we claim is capable of representing documents and code from many different source languages. We describe a method for supporting our claims and sketch a proof that an ...
- ArticleApril 2006
Language support for fast and reliable message-based communication in singularity OS
EuroSys '06: Proceedings of the 1st ACM SIGOPS/EuroSys European Conference on Computer Systems 2006Pages 177–190https://doi.org/10.1145/1217935.1217953Message-based communication offers the potential benefits of providing stronger specification and cleaner separation between components. Compared with shared-memory interactions, message passing has the potential disadvantages of more expensive data ...
Also Published in:
ACM SIGOPS Operating Systems Review: Volume 40 Issue 4 - articleMarch 2006
STLlint: lifting static checking from languages to libraries
Traditional static checking centers around finding bugs in programs by isolating cases where the language has been used incorrectly. These language-based checkers do not understand the semantics of software libraries, and therefore cannot be used to ...
- ArticleJanuary 2006
Hybrid type checking
POPL '06: Conference record of the 33rd ACM SIGPLAN-SIGACT symposium on Principles of programming languagesPages 245–256https://doi.org/10.1145/1111037.1111059Traditional static type systems are very effective for verifying basic interface specifications, but are somewhat limited in the kinds specifications they support. Dynamically-checked contracts can enforce more precise specifications, but these are not ...
Also Published in:
ACM SIGPLAN Notices: Volume 41 Issue 1 - ArticleSeptember 2005
Checking marked-up documentation for adherance to site-specific standards
SIGDOC '05: Proceedings of the 23rd annual international conference on Design of communication: documenting & designing for pervasive informationPages 76–79https://doi.org/10.1145/1085313.1085332Marked-up text (e.g. HTML and XML) is the format of choice for the delivery of end-user information in pervasive environments. Consistent style and structure of a set of pages can greatly aid their usability and this paper presents a tool called ...
- ArticleJanuary 2005
A pattern enforcing compiler (PEC) for Java: using the compiler
APCCM '05: Proceedings of the 2nd Asia-Pacific conference on Conceptual modelling - Volume 43Pages 69–78A PEC is a Pattern Enforcing Compiler, which is like a conventional compiler only extended to include the extra checks needed to enforce design patterns. PECs are currently a research project and the PEC written is targeted at the Java programming ...
- ArticleOctober 2004
Exstatic: a generic static checker applied to documentation systems
SIGDOC '04: Proceedings of the 22nd annual international conference on Design of communication: The engineering of quality documentationPages 52–57https://doi.org/10.1145/1026533.1026548Exstatic is a generic static checker developed by the author to address many of the practical problems in program development. Static checking provides a valuable means for automating time consuming checks not only concerned with program correctness (...
- articleOctober 2004
Finding stale-value errors in concurrent programs: Research Articles
Concurrent programs can suffer from many types of errors, not just the well-studied problems of deadlocks and simple race conditions on variables. This paper addresses a kind of race condition that arises from reading a variable whose value is possibly ...