Content deleted Content added
Updating text to provide more discussion of how ESC/Java works. |
|||
Line 1:
{{No footnotes|date=March 2010}}
'''ESC/Java''' (and more recently '''ESC/Java2'''), the "Extended Static Checker for Java," is a [[programming tool]] that attempts to find common [[run-time error]]s in [[Java (programming language)|Java]] programs by [[Static code analysis|static analysis]] of the program text<ref>C. Flanagan, K.R.M. Leino, M. Lillibridge, G. Nelson, J. B. Saxe and R. Stata. "Extended static checking for Java". In ''Proceedings of the Conference on Programming Language Design and Implementation'', pages 234--245, 2002. doi: http://doi.acm.org/10.1145/512529.512558</ref>. ESC/Java sacrifices [[soundness]] and [[completeness]] in order to reduce the number of false positives (errors reported to the programmer which, in fact, do not exist). The idea is that this makes the tool more likely to be used in practice, since the programmer is not inundated with large volumes of errors and/or warnings.
Recent versions of ESC/Java are based around the [[Java Modeling Language]] (JML). Users can control the amount and kinds of checking by annotating their programs with specially formatted comments or ''[[pragma]]s''. ESC/Java was originally developed at the [[DEC Systems Research Center|Compaq Systems Research Center]] (SRC). SRC launched the project in 1997, after work on their original extended static checker, ESC/Modula-3, ended in 1996. In 2002, SRC released the [[source code]] for ESC/Java and related tools.
|