ComputingComputer ScienceFormal MethodsProgramming LanguagesSystems ProgrammingAbstract Syntax TreesConcurrency AnalysisConcurrency ControlConcurrent ProgrammingType CheckingType SystemsAbstract SemanticsConcurrency PrimitivesConcurrency SemanticsConcurrent SemanticsLock-based CoordinationOwnership ConceptSynchronization Semantics
This paper presents Welterweight Java (WJ), a new minimal core Java calculus intended to be a suitable starting point for investigations in the semantics of Java-like programs. To this end, WJ adds a few extra pounds to Featherweight Java. WJ is imperative and stateful, which is a frequent extension of Featherweight Java. To account for the importance of concurrency, WJ models Java's thread-based concurrency and lock-based synchronisation. The design of WJ is distilled from recent work on concurrent Java-like systems. We believe that the calculus is a good starting point for extensions. We illustrate the potential of the calculus by showing two extensions. The first is a version of WJ extended with deep ownership. This serves two purposes--it is a minimal formalisation of ownership, interesting in its own right, and shows how easily WJ can be extended. The second is a simple non-null types system.
15
Ownership, encapsulation and the disjointness of type and effect
Dave Clarke, Sophia Drossopoulou · 2002 · 259 citations · Full text
Universes: Lightweight Ownership for JML.
Werner Dietl, Péter Müller · The Journal of Object Technology · 2005 · 175 citations · Full text
Object ownership and containment
David G. Clarke · 2003 · 137 citations