Entry Weimer:2008:ESP from toplas.bib

Last update: Tue May 1 02:05:46 MDT 2012                Valid HTML 3.2!

Index sections

Top | Symbols | Math | A | B | C | D | E | F | G | H | I | J | K | L | M | N | O | P | Q | R | S | T | U | V | W | X | Y | Z

BibTeX entry

@Article{Weimer:2008:ESP,
  author =       "Westley Weimer and George C. Necula",
  title =        "Exceptional situations and program reliability",
  journal =      j-TOPLAS,
  volume =       "30",
  number =       "2",
  pages =        "8:1--8:51",
  month =        mar,
  year =         "2008",
  CODEN =        "ATPSDT",
  DOI =          "http://doi.acm.org/10.1145/1330017.1330019",
  ISSN =         "0164-0925 (print), 1558-4593 (electronic)",
  ISSN-L =       "0164-0925",
  bibdate =      "Wed Jun 11 19:22:42 MDT 2008",
  bibsource =    "http://www.acm.org/pubs/contents/journals/toplas/;
                 http://www.math.utah.edu/pub/tex/bib/toplas.bib",
  abstract =     "It is difficult to write programs that behave
                 correctly in the presence of run-time errors. Proper
                 behavior in the face of exceptional situations is
                 important to the reliability of long-running programs.
                 Existing programming language features often provide
                 poor support for executing clean-up code and for
                 restoring invariants.\par

                 We present a data-flow analysis for finding a certain
                 class of exception-handling defects: those related to a
                 failure to release resources or to clean up properly
                 along all paths. Many real-world programs violate such
                 resource usage rules because of incorrect exception
                 handling. Our flow-sensitive analysis keeps track of
                 outstanding obligations along program paths and does a
                 precise modeling of control flow in the presence of
                 exceptions. Using it, we have found over 1,300
                 exception handling defects in over 5 million lines of
                 Java code.\par

                 Based on those defects we propose a programming
                 language feature, the compensation stack, that keeps
                 track of obligations at run time and ensures that they
                 are discharged. We present a type system for
                 compensation stacks that tracks collections of
                 obligations. Finally, we present case studies to
                 demonstrate that this feature is natural, efficient,
                 and can improve reliability.",
  acknowledgement = ack-nhfb,
  articleno =    "8",
  fjournal =     "ACM Transactions on Programming Languages and
                 Systems",
}

Related entries