Publication | Closed Access
Adding type parameterization to the Java language
160
Citations
10
References
1997
Year
Unknown Venue
Java ExtensionsEngineeringJava LanguageType ParameterProgram AnalysisPolymorphism (Computer Science)Generic ProgrammingDependently Typed ProgrammingFormal MethodsComputer EngineeringSoftware EngineeringSoftware AnalysisComputer ScienceType SystemExtensible LanguageFormal VerificationParameter TypeSoftware Design
Although the Java programming language has achieved widespread acceptance, one feature that seems sorely missed is the ability to use type parameters (as in Ada generics, C++ templates, and ML polymorphic functions or data types) to allow a general concept to be instantiated to one or more specific types. In this paper, we propose parameterized classes and interfaces in which the type parameter may be constrained to either implement a given interface or extend a given class. 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 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.
| Year | Citations | |
|---|---|---|
Page 1
Page 1