Filters








16,301 Hits in 2.6 sec

Parameterized types for Java

Joseph A. Bank, Andrew C. Myers, Barbara Liskov
1997 Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages - POPL '97  
Java offers the real possibility that most programs can be written in a type-safe language. However, for Java to be broadly useful, it needs additional expressive power.  ...  We have extended the Java bytecode interpreter to provide good performance for parameterized code in both execution speed and code size, without slowing down non-parameterized code.  ...  Acknowledgements We would like to thank Kavita Bala, Bill Joy, Matt Kennel, and the reviewers for their helpful comments.  ... 
doi:10.1145/263699.263714 dblp:conf/popl/BankLM97 fatcat:i2bcfvl7tnefph7ujtbqhlipbe

Type Inference for Parameterized Race-Free Java [chapter]

Rahul Agarwal, Scott D. Stoller
2004 Lecture Notes in Computer Science  
We study the type system introduced by Boyapati and Rinard in their paper "A Parameterized Type System for Race-Free Java Programs" and try to infer the type annotations ("lock types") needed by their  ...  Boyapati and Rinard automatically generate some of these annotations using default types and static inference of lock types for local variables, but in practice, the programmer still needs to annotate  ...  We thank Chandra Boyapati for many helpful comments about PRFJ.  ... 
doi:10.1007/978-3-540-24622-0_14 fatcat:khcetsk36bejvkscuu4o6h2kgq

A parameterized type system for race-free Java programs

Chandrasekhar Boyapati, Martin Rinard
2001 Proceedings of the 16th ACM SIGPLAN conference on Object oriented programming, systems, languages, and applications - OOPSLA '01  
This paper presents a new static type system for multithreaded programs; any well-typed program in our system is free of data races.  ...  Our type system is significantly more expressive than previous such type systems.  ...  Acknowledgments We are grateful to Robert Lee for his work on implementing a prototype type checker for our system.  ... 
doi:10.1145/504282.504287 dblp:conf/oopsla/BoyapatiR01 fatcat:c2zmy6aaozhb3nmj5ko7c2kpqq

A parameterized type system for race-free Java programs

Chandrasekhar Boyapati, Martin Rinard
2001 SIGPLAN notices  
This paper presents a new static type system for multithreaded programs; any well-typed program in our system is free of data races.  ...  Our type system is significantly more expressive than previous such type systems.  ...  Acknowledgments We are grateful to Robert Lee for his work on implementing a prototype type checker for our system.  ... 
doi:10.1145/504311.504287 fatcat:jrnkr7plirg4bmheue2vggaylm

Range parameterized types

Bruno De Fraine
2009 Proceedings of the 11th International Workshop on Formal Techniques for Java-like Programs - FTfJP '09  
Existing approaches for use-site variance relate parameterized classes to bounded existential types and employ a conversion of the type parameters to fresh type variables in order to type an operation.  ...  Parameterized classes receive two type values for each type parameter, and the operations may be determined by simply substituting these values in covariant resp. contravariant positions.  ...  Note that, using Java wildcards, the programmer cannot express an equivalent for a range parameterized type c<S-U > where S = Null and U = Object and S = U , although such a type is considered internally  ... 
doi:10.1145/1557898.1557900 dblp:conf/ecoop/Fraine09 fatcat:jgsnw6w3pvg5fofronv4wmj7cm

Adding type parameterization to the Java language

Ole Agesen, Stephen N. Freund, John C. Mitchell
1997 Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications - OOPSLA '97  
We show that these Java extensions may be implemented by expanding parameterized classes at class load time, without any extension or modification to existing Java bytecode, verifier or bytecode interpreter  ...  This design allows the body of a parameterized class to refer to methods on objects of the parameter type, without introducing any new type relations into the language.  ...  We also thank Gilad Bracha, David Detlefs, and Kathleen Fisher for their many useful discussions and comments.  ... 
doi:10.1145/263698.263720 dblp:conf/oopsla/AgesenFM97 fatcat:lrf67u7povcnfdb7hjhylis23u

Poor Man's Genericity for Java [chapter]

Boris Bokowski, Markus Dahm
1999 JIT'98 Java-Informations-Tage 1998  
A number of proposals have been made as to how Java can be changed to support parameterized types.  ...  Recently, a number of proposals for adding parametric polymorphism (generic classes) to Java 5] have been published, namely Pizza 7], GJ 2], Virtual Types 8], Genja 4], a proposal from the MIT 6], and  ...  types for Java.  ... 
doi:10.1007/978-3-642-59984-2_6 dblp:conf/jit/BokowskiD98 fatcat:x44pzous25e7xagrkoef5uajqe

Poor Man's Genericity for Java [chapter]

Boris Bokowski, Markus Dahm
1998 Lecture Notes in Computer Science  
A number of proposals have been made as to how Java can be changed to support parameterized types.  ...  Recently, a number of proposals for adding parametric polymorphism (generic classes) to Java 5] have been published, namely Pizza 7], GJ 2], Virtual Types 8], Genja 4], a proposal from the MIT 6], and  ...  types for Java.  ... 
doi:10.1007/3-540-49255-0_182 fatcat:dmwv6efoa5bmrhlt2dfcr73yn4

The Reaction of Open-Source Projects to New Language Features: An Empirical Study of C# Generics

Donghoon Kim, Emerson Murphy-Hill, Chris Parnin, Christian Bird, Ronald Garcia
2013 Journal of Object Technology  
An Empirical Study of Language Features · 3 between C# and Java.  ...  Our results suggest that generics help remove casts, reduce duplication, and improve performance in real programs. • Comparison of generics' use in C# and Java: we analyze open source Java and C# projects  ...  For instance, if MyStack<T> were written in Java, a programmer could use it in a raw way like so: MyStack s;. In Java, a generic type can be used as either a parameterized type or as a raw type.  ... 
doi:10.5381/jot.2013.12.4.a1 fatcat:omjcm5xcjve5vcqjzwj46r4364

Java generics adoption

Chris Parnin, Christian Bird, Emerson Murphy-Hill
2011 Proceeding of the 8th working conference on Mining software repositories - MSR '11  
For example, our results suggest that generics do not significantly reduce the number of type casts and that generics are usually adopted by a single champion in a project, rather than all committers.  ...  Support for generic programming was added to the Java language in 2004, representing perhaps the most significant change to one of the most widely used programming languages today.  ...  Specifically, we identified raw types in the code as candidates for parameterization.  ... 
doi:10.1145/1985441.1985446 dblp:conf/msr/ParninBM11 fatcat:z7fyesnkfzbbdgslov5nxgsa4m

Refactoring for Parameterizing Java Classes

Adam Kiezun, Michael D. Ernst, Frank Tip, Robert M. Fuhrer
2007 Proceedings / International Conference of Software Engineering  
The algorithm handles the full Java language and preserves backward compatibility, thus making it safe for existing clients.  ...  First, our tool parameterized code that was lacking type parameters.  ...  Acknowledgments Gilad Bracha suggested the "parameterize like superclass" tool feature. Martin Aeschlimann and Terence Parr examined the parameterizations created by our tool.  ... 
doi:10.1109/icse.2007.70 dblp:conf/icse/KiezunETF07 fatcat:zgj3dyks5zgmpce6f6r57t6ciy

Adoption and use of Java generics

Chris Parnin, Christian Bird, Emerson Murphy-Hill
2012 Empirical Software Engineering  
For example, our results suggest that generics sometimes reduce the number of type casts and that generics are usually adopted by a single champion in a project, rather than all committers.  ...  Support for generic programming was added to the Java language in 2004, representing perhaps the most significant change to one of the most widely used programming languages today.  ...  Common Parameterized Types We classified parameterized types as either user-defined or from the standard Java Collections (java.util) based on name signatures.  ... 
doi:10.1007/s10664-012-9236-6 fatcat:kzndjohgyngoxb7s7wsivf2tni

Generics-related refactorings in eclipse

Adam Kieżun, Robert Fuhrer, Frank Tip, Markus Keller
2005 Companion to the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications - OOPSLA '05  
The task is divided in two parts: introduction of formal type parameters (parameterization) and inference of actual type parameters (instantiation).  ...  We present refactorings that automate the process of migrating pre-generics Java programs to use generics.  ...  Introduce Type Parameter: addresses the parameterization problem. It facilitates conveniently converting non-generic Java classes to generics, in a manner that is safe for existing clients.  ... 
doi:10.1145/1094855.1094918 dblp:conf/oopsla/KiezunFTK05 fatcat:l5qdoyfwxbddpojjhl7vvs3ip4

Bridging the Gap between Algebraic Specification and Object-Oriented Generic Programming [chapter]

Isabel Nunes, Antónia Lopes, Vasco T. Vasconcelos
2009 Lecture Notes in Computer Science  
In this paper we propose a notion of refinement mapping that allows to define correspondences between parameterized specifications and generic Java classes.  ...  Based on such mappings, we put forward a conformance notion useful for the extension of CONGU, a tool-based approach we have been developing to support runtime conformance checking of Java programs against  ...  For every parameterized specification, the instantiation of the parameter type of the corresponding generic class has to be limited to types that have a method for every operation and predicate in the  ... 
doi:10.1007/978-3-642-04694-0_9 fatcat:gteoio7wereanbrgn7uc7w3evq

Java for Scientific Computation: Prospects and Problems [chapter]

Henk J. Sips, Kees van Reeuwijk
2001 Lecture Notes in Computer Science  
In this paper, we will discuss a number of prospects and problems in Java for scientific computation.  ...  Fortran is still a very dominant language for scientific computations.  ...  However, this makes these proposals less suited to support specialized arrays, since for this case parameterization with primitive types (e.g. for element types of the specialized arrays) and with numeric  ... 
doi:10.1007/3-540-45346-6_24 fatcat:uzpq4fcpn5azvjlpuhw4thzdwq
« Previous Showing results 1 — 15 out of 16,301 results