@inproceedings(high-level-data, author = "Cyrille Artho and Klaus Havelund and Armin Biere", year = "2003", title = "High-Level Data Races", booktitle = "NDDL/VVEIS", pages = "82--93", doi = "10.1002/stvr.281", ) @inproceedings(spec-programming-system, author = "Mike Barnett and K. Rustan M. Leino and Wolfram Schulte", year = "2005", title = "The spec\# programming system: an overview", booktitle = "Proceedings of the 2004 international conference on Construction and Analysis of Safe, Secure, and Interoperable Smart Devices", series = "CASSIS'04", publisher = "Springer-Verlag", address = "Berlin, Heidelberg", pages = "49--69", doi = "10.1007/978-3-540-30569-9-3", ) @misc(survey-methods-preventing, author = "Nels E. Beckman", year = "2006", title = "A Survey of Methods for Preventing Race Conditions", ) @inproceedings(verifying-correct-usage, author = "Nels E. Beckman and Kevin Bierhoff and Jonathan Aldrich", year = "2008", title = "Verifying correct usage of atomic blocks and typestate", editor = "Gail E. Harris", booktitle = "OOPSLA", publisher = "ACM", pages = "227--244", doi = "10.1145/1449764.1449783", ) @article(sound-complete-models, author = "Matthias Blume and David McAllester", year = "2006", title = "Sound and complete models of contracts", journal = "J. Funct. Program.", volume = "16", number = "4-5", pages = "375--414", doi = "10.1017/S0956796806005971", ) @inproceedings(compositional-theory-stm, author = "Johannes Borgstrom and Karthikeyan Bhargavan and Andrew D. Gordon", year = "2009", title = "A compositional theory for STM Haskell", booktitle = "Proceedings of the 2nd ACM SIGPLAN symposium on Haskell", series = "Haskell '09", publisher = "ACM", address = "New York, NY, USA", pages = "69--80", doi = "10.1145/1596638.1596648", ) @article(ownership-types-safe, author = "Chandrasekhar Boyapati and Robert Lee and Martin Rinard", year = "2002", title = "Ownership types for safe programming: preventing data races and deadlocks", journal = "SIGPLAN Not.", volume = "37", number = "11", pages = "211--230", doi = "10.1145/583854.582440", ) @incollection(typestates-for-objects, author = "Robert DeLine and Manuel F\begingroup \let \relax \relax \endgroup [Pleaseinsert\PrerenderUnicode{ä}intopreamble]hndrich", year = "2004", title = "Typestates for Objects", editor = "Martin Odersky", booktitle = "ECOOP 2004 \begingroup \let \relax \relax \endgroup [Pleaseinsert\PrerenderUnicode{–}intopreamble] Object-Oriented Programming", series = "Lecture Notes in Computer Science", volume = "3086", publisher = "Springer Berlin Heidelberg", pages = "465--490", doi = "10.1007/978-3-540-24851-4-21", ) @misc(rdemeyer:framework-verifying-application, author = "Romain Demeyer and Wim Vanhoof", year = "2012", title = "A Framework for Verifying the Application-Level Race-Freeness of Concurrent Programs", url = "http://users.dsic.upv.es/workshops/wlpe2012/accepted_papers.html", ) @article(goldilocks-race-transaction, author = "Tayfun Elmas and Shaz Qadeer and Serdar Tasiran", year = "2007", title = "Goldilocks: a race and transaction-aware java runtime", journal = "SIGPLAN Not.", volume = "42", number = "6", pages = "245--255", doi = "10.1145/1273442.1250762", ) @article(racerx-effective-static, author = "Dawson Engler and Ken Ashcraft", year = "2003", title = "RacerX: effective, static detection of race conditions and deadlocks", journal = "SIGOPS Oper. Syst. Rev.", volume = "37", pages = "237--252", doi = "10.1145/1165389.945468", ) @article(type-based-race, author = "Cormac Flanagan and Stephen N. Freund", year = "2000", title = "Type-based race detection for Java", journal = "SIGPLAN Not.", volume = "35", pages = "219--232", doi = "10.1145/358438.349328", ) @article(type-effect-system, author = "Cormac Flanagan and Shaz Qadeer", year = "2003", title = "A type and effect system for atomicity", journal = "SIGPLAN Not.", volume = "38", pages = "338--349", doi = "10.1145/780822.781169", ) @inproceedings(automated-termination-analysis, author = "J\begingroup \let \relax \relax \endgroup [Pleaseinsert\PrerenderUnicode{ü}intopreamble]rgen Giesl and Stephan Swiderski and Peter Schneider-Kamp and Ren\begingroup \let \relax \relax \endgroup [Pleaseinsert\PrerenderUnicode{é}intopreamble] Thiemann", year = "2006", title = "Automated Termination Analysis for Haskell: From Term Rewriting to Programming Languages", editor = "Frank Pfenning", booktitle = "Term Rewriting and Applications", series = "Lecture Notes in Computer Science", volume = "4098", publisher = "Springer Berlin Heidelberg", pages = "297--312", doi = "10.1007/11805618\_23", ) @inproceedings(composable-memory-transactions, author = "Tim Harris and Simon Marlow and Simon Peyton-Jones and Maurice Herlihy", year = "2005", title = "Composable memory transactions", booktitle = "PPoPP '05: Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming", publisher = "ACM", address = "New York, NY, USA", pages = "48--60", doi = "10.1145/1065944.1065952", ) @misc(transactional-memory-data, author = "Tim Harris and Simon {{Peyton Jones}}", year = "2006", title = "Transactional memory with data invariants", ) @article(race-checking-context, author = "Thomas A. Henzinger and Ranjit Jhala and Rupak Majumdar", year = "2004", title = "Race checking by context inference", journal = "SIGPLAN Not.", volume = "39", pages = "1--13", doi = "10.1145/996893.996844", ) @article(report-programming-language, author = "Paul Hudak and Simon Peyton Jones and Philip Wadler and Brian Boutel and Jon Fairbairn and Joseph Fasel and Mar\'{\i }a M. Guzm\'{a}n and Kevin Hammond and John Hughes and Thomas Johnsson and Dick Kieburtz and Rishiyur Nikhil and Will Partain and John Peterson", year = "1992", title = "Report on the programming language Haskell: a non-strict, purely functional language version 1.2", journal = "SIGPLAN Not.", volume = "27", number = "5", pages = "1--164", doi = "10.1145/130697.130699", ) @inbook(introduction-program-specialisation, author = "John Hughes", year = "1996", title = "{An Introduction to Program Specialisation by Type Inference}", publisher = "Glasgow University", note = "Published electronically", ) @article(programming-model-concurrent, author = "Bart Jacobs and Frank Piessens and Jan Smans and K. Rustan M. Leino and Wolfram Schulte", year = "2008", title = "A programming model for concurrent object-oriented programs", journal = "ACM Trans. Program. Lang. Syst.", volume = "31", number = "1", pages = "1:1--1:48", doi = "10.1145/1452044.1452045", ) @book(partial-evaluation-automatic, author = "Neil D. Jones and Carsten K. Gomard and Peter Sestoft", year = "1993", title = "Partial evaluation and automatic program generation", publisher = "Prentice-Hall, Inc.", address = "Upper Saddle River, NJ, USA", ) @misc(compiling-haskell-program, author = "Simon L. Peyton Jones", year = "1996", title = "Compiling Haskell by program transformation: a report from the trenches", ) @misc(beautiful-concurrency, author = "Simon Peyton Jones", year = "2007", title = "Beautiful Concurrency", note = "Ch. 24", ) @incollection(binary-reachability-analysis, author = "Rusl\begingroup \let \relax \relax \endgroup [Pleaseinsert\PrerenderUnicode{á}intopreamble]n Ledesma-Garza and Andrey Rybalchenko", year = "2012", title = "Binary Reachability Analysis of Higher Order Functional Programs", editor = "Antoine Min\begingroup \let \relax \relax \endgroup [Pleaseinsert\PrerenderUnicode{é}intopreamble] and David Schmidt", booktitle = "Static Analysis", series = "Lecture Notes in Computer Science", volume = "7460", publisher = "Springer Berlin Heidelberg", pages = "388--404", doi = "10.1007/978-3-642-33125-1-26", ) @article(muvi-automatically-inferring, author = "Shan Lu and Soyeon Park and Chongfeng Hu and Xiao Ma and Weihang Jiang and Zhenmin Li and Raluca A. Popa and Yuanyuan Zhou", year = "2007", title = "MUVI: automatically inferring multi-variable access correlations and detecting related semantic and concurrency bugs", journal = "SIGOPS Oper. Syst. Rev.", volume = "41", pages = "103--116", doi = "10.1145/1323293.1294272", ) @inproceedings(learning-mistakes-comprehensive, author = "Shan Lu and Soyeon Park and Eunsoo Seo and Yuanyuan Zhou", year = "2008", title = "Learning from mistakes: a comprehensive study on real world concurrency bug characteristics", editor = "Susan J. Eggers and James R. Larus", booktitle = "ASPLOS", publisher = "ACM", pages = "329--339", doi = "10.1145/1346281.1346323", ) @article(avio-detecting-atomicity, author = "Shan Lu and Joseph Tucek and Feng Qin and Yuanyuan Zhou", year = "2006", title = "AVIO: detecting atomicity violations via access interleaving invariants", journal = "SIGPLAN Not.", volume = "41", number = "11", pages = "37--48", doi = "10.1145/1168918.1168864", ) @inproceedings(finding-concurrency-bugs, author = "Brandon Lucia and Luis Ceze", year = "2009", title = "Finding concurrency bugs with context-aware communication graphs", booktitle = "Proceedings of the 42nd Annual IEEE/ACM International Symposium on Microarchitecture", series = "MICRO 42", publisher = "ACM", address = "New York, NY, USA", pages = "553--563", doi = "10.1145/1669112.1669181", ) @article(colorsafe-architectural-support, author = "Brandon Lucia and Luis Ceze and Karin Strauss", year = "2010", title = "ColorSafe: architectural support for debugging and dynamically avoiding multi-variable atomicity violations", journal = "SIGARCH Comput. Archit. News", volume = "38", number = "3", pages = "222--233", doi = "10.1145/1816038.1815988", ) @article(atom-aid-detecting, author = "Brandon Lucia and Joseph Devietti and Karin Strauss and Luis Ceze", year = "2008", title = "Atom-Aid: Detecting and Surviving Atomicity Violations", journal = "SIGARCH Comput. Archit. News", volume = "36", number = "3", pages = "277--288", doi = "10.1145/1394608.1382145", ) @inproceedings(literace-effective-sampling, author = "Daniel Marino and Madanlal Musuvathi and Satish Narayanasamy", year = "2009", title = "LiteRace: effective sampling for lightweight data-race detection", booktitle = "In PLDI", doi = "10.1145/1542476.1542491", ) @book(eiffel-language, author = "Bertrand Meyer", year = "1992", title = "Eiffel: the language", publisher = "Prentice-Hall, Inc.", address = "Upper Saddle River, NJ, USA", ) @article(effective-static-race, author = "Mayur Naik and Alex Aiken and John Whaley", year = "2006", title = "Effective static race detection for Java", journal = "SIGPLAN Not.", volume = "41", number = "6", pages = "308--319", doi = "10.1145/1133255.1134018", ) @article(optimal-tracing-replay, author = "Robert H. B. Netzer", year = "1993", title = "Optimal tracing and replay for debugging shared-memory parallel programs", journal = "SIGPLAN Not.", volume = "28", number = "12", pages = "1--11", doi = "10.1145/174267.174268", ) @book(principles-program-analysis, author = "Flemming Nielson and Hanne Riis Nielson and Chris Hanking", year = "2005", title = "Principles of Program Analysis", publisher = "Springer", ) @article(hybrid-dynamic-data, author = "Robert O'Callahan and Jong-Deok Choi", year = "2003", title = "Hybrid dynamic data race detection", journal = "SIGPLAN Not.", volume = "38", number = "10", pages = "167--178", doi = "10.1145/966049.781528", ) @inproceedings(randomized-active-atomicity, author = "Chang-Seo Park and Koushik Sen", year = "2008", title = "Randomized active atomicity violation detection in concurrent programs", booktitle = "Proceedings of the 16th ACM SIGSOFT International Symposium on Foundations of software engineering", series = "SIGSOFT '08/FSE-16", publisher = "ACM", address = "New York, NY, USA", pages = "135--145", doi = "10.1145/1453101.1453121", ) @inproceedings(practical-verification-high-level, author = "Vasco Pessanha and Ricardo J. Dias and Jo\ {a}o M. Louren\c {c}o and Eitan Farchi and Diogo Sousa", year = "2011", title = "Practical verification of high-level dataraces in transactional memory programs", booktitle = "Proceedings of the Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging", series = "PADTAD '11", publisher = "ACM", address = "New York, NY, USA", pages = "26--34", doi = "10.1145/2002962.2002968", ) @article(locksmith-context-sensitive, author = "Polyvios Pratikakis and Jeffrey S. Foster and Michael Hicks", year = "2006", title = "LOCKSMITH: context-sensitive correlation analysis for race detection", journal = "SIGPLAN Not.", volume = "41", number = "6", pages = "320--331", doi = "10.1145/1133255.1134019", ) @article(kiss-keep-simple, author = "Shaz Qadeer and Dinghao Wu", year = "2004", title = "KISS: keep it simple and sequential", journal = "SIGPLAN Not.", volume = "39", number = "6", pages = "14--24", doi = "10.1145/996893.996845", ) @inproceedings(automated-type-based, author = "Amit Sasturkar and Rahul Agarwal and Liqiang Wang and Scott D. Stoller", year = "2005", title = "Automated type-based analysis of data races and atomicity", booktitle = "Proceedings of the tenth ACM SIGPLAN symposium on Principles and practice of parallel programming", series = "PPoPP '05", publisher = "ACM", address = "New York, NY, USA", pages = "83--94", doi = "10.1145/1065944.1065956", ) @article(eraser-dynamic-data, author = "Stefan Savage and Michael Burrows and Greg Nelson and Patrick Sobalvarro and Thomas Anderson", year = "1997", title = "Eraser: a dynamic data race detector for multithreaded programs", journal = "ACM Trans. Comput. Syst.", volume = "15", number = "4", pages = "391--411", doi = "10.1145/265924.265927", ) @article(software-transactional-memory, author = "Nir Shavit and Dan Touitou", year = "1995", title = "Software transactional memory", pages = "204--213", doi = "10.1145/224964.224987", ) @misc(warlock-static-data, author = "Nicholas Sterling", year = "1993", title = "WARLOCK - A Static Data Race Analysis Tool", ) @inproceedings(detection-transactional-memory, author = "Bruno Teixeira and Jo\ {a}o Louren\c {c}o and Eitan Farchi and Ricardo Dias and Diogo Sousa", year = "2010", title = "Detection of Transactional Memory anomalies using static analysis", booktitle = "Proceedings of the 8th Workshop on Parallel and Distributed Systems: Testing, Analysis, and Debugging", series = "PADTAD '10", publisher = "ACM", address = "New York, NY, USA", pages = "26--36", doi = "10.1145/1866210.1866213", ) @inproceedings(halo-haskell-logic, author = "Dimitrios Vytiniotis and Simon Peyton Jones and Koen Claessen and Dan Ros{\'e}n", year = "2013", title = "HALO: haskell to logic through denotational semantics", booktitle = "Proceedings of the 40th annual ACM SIGPLAN-SIGACT symposium on Principles of programming languages", series = "POPL '13", publisher = "ACM", address = "New York, NY, USA", pages = "431--442", doi = "10.1145/2429069.2429121", ) @article(static-contract-checking, author = "Dana N. Xu and Simon Peyton Jones and Koen Claessen", year = "2009", title = "Static contract checking for Haskell", journal = "SIGPLAN Not.", volume = "44", number = "1", pages = "41--52", doi = "10.1145/1594834.1480889", ) @techreport(static-contract-checking-thesis, author = "Na Xu", year = "2008", title = "{Static contract checking for Haskell}", type = "Technical Report", number = "UCAM-CL-TR-737", institution = "University of Cambridge, Computer Laboratory", url = "http://www.cl.cam.ac.uk/techreports/UCAM-CL-TR-737.pdf", ) @article(racetrack-efficient-detection, author = "Yuan Yu and Tom Rodeheffer and Wei Chen", year = "2005", title = "RaceTrack: efficient detection of data race conditions via adaptive tracking", journal = "SIGOPS Oper. Syst. Rev.", volume = "39", pages = "221--234", doi = "10.1145/1095809.1095832", )