Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleNovember 2020
Obsidian: Typestate and Assets for Safer Blockchain Programming
- Michael Coblenz,
- Reed Oei,
- Tyler Etzel,
- Paulette Koronkevich,
- Miles Baker,
- Yannick Bloem,
- Brad A. Myers,
- Joshua Sunshine,
- Jonathan Aldrich
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 42, Issue 3Article No.: 14, Pages 1–82https://doi.org/10.1145/3417516Blockchain platforms are coming into use for processing critical transactions among participants who have not established mutual trust. Many blockchains are programmable, supporting smart contracts, which maintain persistent state and support ...
- short-paperNovember 2020
Psamathe: a DSL for safe blockchain assets
SPLASH Companion 2020: Companion Proceedings of the 2020 ACM SIGPLAN International Conference on Systems, Programming, Languages, and Applications: Software for HumanityPages 16–18https://doi.org/10.1145/3426430.3428131Blockchains host smart contracts for voting, tokens, and other purposes. Vulnerabilities in contracts are common, often leading to the loss of money. Psamathe is a new language we are designing around a new flow abstraction, reducing asset bugs and ...
- research-articleJuly 2020
Dependent-test-aware regression testing techniques
ISSTA 2020: Proceedings of the 29th ACM SIGSOFT International Symposium on Software Testing and AnalysisPages 298–311https://doi.org/10.1145/3395363.3397364Developers typically rely on regression testing techniques to ensure that their changes do not break existing functionality. Unfortunately, these techniques suffer from flaky tests, which can both pass and fail when run multiple times on the same ...
- research-articleAugust 2019
iFixFlakies: a framework for automatically fixing order-dependent flaky tests
ESEC/FSE 2019: Proceedings of the 2019 27th ACM Joint Meeting on European Software Engineering Conference and Symposium on the Foundations of Software EngineeringPages 545–555https://doi.org/10.1145/3338906.3338925Regression testing provides important pass or fail signals that developers use to make decisions after code changes. However, flaky tests, which pass or fail even when the code has not changed, can mislead developers. A common kind of flaky tests are ...