• Documents
  • Authors
  • Tables
  • Other Seers ▼
    RefSeer AckSeer CollabSeer SeerSeer
  • Log in
  • Sign up
  • MetaCart

CiteSeerX logo

Advanced Search Include Citations
Advanced Search Include Citations | Disambiguate

SafeJava: A Unified Type System for Safe Programming (2004)

Cached

  • Download as a PDF

Download Links

  • [pmg.csail.mit.edu]
  • [www.pmg.lcs.mit.edu]
  • [www.eecs.umich.edu]
  • [pmg.lcs.mit.edu]
  • [pmg.csail.mit.edu]
  • [pmg.lcs.mit.edu]
  • [www.pmg.lcs.mit.edu]

  • Save to List
  • Add to Collection
  • Correct Errors
  • Monitor Changes
by Chandrasekhar Boyapati
Citations:54 - 2 self
  • Summary
  • Active Bibliography
  • Co-citation
  • Clustered Documents
  • Version History

BibTeX

@TECHREPORT{Boyapati04safejava:a,
    author = {Chandrasekhar Boyapati},
    title = {SafeJava: A Unified Type System for Safe Programming},
    institution = {},
    year = {2004}
}

Years of Citing Articles

Bookmark

citeulike Connotea Bibsonomy Del.icio.us Digg Reddit

OpenURL

 

Abstract

Making software reliable is one of the most important technological challenges facing our society today. This thesis presents a new type system that addresses this problem by statically preventing several important classes of programming errors. If a program type checks, we guarantee at compile time that the program does not contain any of those errors. We designed our type system in the context of a Java-like object-oriented language; we call the resulting system SafeJava. The SafeJava type system offers significant software engineering benefits. Specifically, it provides a statically enforceable way of specifying object encapsulation and enables local reasoning about program correctness; it combines effects clauses with encapsulation to enable modular checking of methods in the presence of subtyping; it statically prevents data races and deadlocks in multithreaded programs, which are known to be some of the most difficult programming errors to detect, reproduce, and

Citations

7321 Introduction to Algorithms - Cormen, Leiserson, et al. - 2001
4647 Design Patterns: Elements of Reusable Object-Oriented Software - Gamma, Helm, et al. - 1994
1541 The Java Language Specification - Gosling, Joy, et al. - 1996
1054 The Z notation : A reference manual - Spivey - 1992
1023 The Java Virtual Machine Specification - Lindholm, Yellin - 1996
958 The SPLASH-2 programs: Characterization and methodological considerations - Woo, Ohara, et al. - 1995
541 Linear Logic - Girard - 1987
490 A syntactic approach to type soundness - Wright, Felleisen - 1994
478 Eraser: A Dynamic Data Race Detector for Multi-Threaded Programs - Savage, Burrows, et al. - 1997
353 Preliminary design of JML: A behavioral interface specification language for Java - Leavens, Baker, et al. - 2006
347 Enforcing high-level protocols in low-level software - DeLine, Fähndrich - 2001
312 Making the future safe for the past: adding genericity to the java programming language - Bracha, Odersky, et al. - 1998
293 editors: Larch: Languages and Tools for Formal Speci cation - Guttag, Horning - 1993
281 Solving shape-analysis problems in languages with destructive updating - Sagiv, Reps, et al. - 1998
279 Ownership types for flexible alias protection - Clarke, Potter, et al. - 1998
273 Extended static checking - Detlefs, Leino, et al. - 1998
269 Region-based memory management - Tofte, Talpin - 1997
262 Ownership types for safe programming: Preventing data races and deadlocks - Boyapati, Lee, et al. - 2002
247 The Java Memory Model - Manson, Pugh, et al. - 2005
245 Semantics and Implementation of Schema evolution in Object–Oriented Databases - Banerjee - 1987
245 Bugs as Deviant Behavior: A General Approach to Inferring Errors in Systems Code - Engler, Chen, et al. - 2001
241 Escape analysis for java - Choi, Gupta, et al. - 1999
239 M.: Classes and mixins - Flatt, Krishnamurthi, et al. - 1998
237 D.: Korat: Automated testing based on Java predicates - Boyapati, Khurshid, et al. - 2002
221 Type-based race detection for java - Flanagan, Freund - 2000
214 The Real-Time Specification for Java - Bollella, Brosgol, et al. - 2000
211 Polymorphic effect systems - Lucassen, Gifford - 1988
211 Compositional pointer and escape analysis for java programs - Whaley, Rinard - 1999
186 Typed memory management in a calculus of capabilities - Crary, Walker, et al. - 1999
182 Islands: Aliasing protection in object-oriented languages - Hogg - 1991
182 Abstraction and Specification in Program Development - Liskov, Guttag - 1986
179 Alias annotations for program understanding - Aldrich, Kostadinov, et al. - 2002
170 A parameterized type system for race-free Java programs - Boyapati, Rinard - 2001
164 Region-based memory management in Cyclone - Grossman, Morrisett, et al. - 2002
159 Parameterized types for Java - Myers, Bank, et al. - 1997
154 Dynamic software updating - Hicks, Moore, et al. - 2001
143 JB, Stata R. Extended static checking for java - Flanagan, KRM, et al. - 2002
140 Adoption and focus: Practical linear types for imperative programming - Fähndrich, DeLine - 2002
129 The specification statement - Morgan - 1988
125 Ownership types for object encapsulation - Boyapati, Liskov, et al. - 2003
125 Pointer Analysis for Multithreaded Programs - Rugina, Rinard - 1999
122 Abstraction mechanisms in CLU - Liskov, Snyder, et al. - 1977
122 Linear types can change the world - Wadler - 1990
120 A real-time garbage collector with low overhead and consistent utilization - Bacon, Cheng, et al. - 2003
119 Graph Types - Klarlund, Schwartzback - 1993
118 Effective synchronization removal for Java - Ruf - 2000
116 Balloon types: Controlling sharing of state in data types - Almeida - 1997
115 Memory Management with Explicit Regions - Gay, Aiken - 1998
111 The management of changing types in an object-oriented database - Skarra, Zdonik - 1986
108 Ownership, encapsulation and the disjointness of type and effect - Clarke, Drossopoulou - 2002
The National Science Foundation
  • About CiteSeerX
  • Submit Documents
  • Privacy Policy
  • Help
  • Data
  • Source
  • Contact Us

Developed at and hosted by The College of Information Sciences and Technology

© 2007-2010 The Pennsylvania State University