Several recent studies have introduced lightweight versions of java: reduced languages in which complex features like threads and reflection are dropped to enable rigorous arguments about key properties such as type s...
详细信息
Several recent studies have introduced lightweight versions of java: reduced languages in which complex features like threads and reflection are dropped to enable rigorous arguments about key properties such as type safety. We carry this process a step further, omitting almost all features of the full language (including interfaces and even assignment) to obtain a small calculus, Featherweight java, for which rigorous proofs are not only possible but easy. Featherweight java bears a similar relation to full java as the lambda-calculus does to languages such as ML and Haskell. It offers a similar computational 'feel', providing classes, methods, fields, inheritance, and dynamic typecasts, with a semantics closely following java's. A proof of type safety for Featherweight java thus illustrates many of the interesting features of a safety proof for the full language, while remaining pleasingly compact. The syntax, type rules, and operational semantics of Featherweight java fit on one page, making it easier to understand the consequences of extensions and variations. As an illustration of its utility in this regard, we extend Featherweight java with generic classes in the style of GJ (Bracha, Odersky, Stoutamire, and Wadler) and sketch a proof of type safety. The extended system formalizes for the first time some of the key features of GJ.
This paper describes the developer-documenter relationship in java™ API software development. The lack of trust between developer and documenter is highlighted in the issue of updating doc comments in java source code...
详细信息
The coupling of java3D and applet technologies has the potential to revolutionize web-based simulation visualization. Applets can enable the dynamic and distributed instantiation and elimination of viewers that until ...
详细信息
ISBN:
(纸本)9780780357808
The coupling of java3D and applet technologies has the potential to revolutionize web-based simulation visualization. Applets can enable the dynamic and distributed instantiation and elimination of viewers that until now was not possible. A visualizer based on these technologies is under development at the Air Force Research Laboratory's Information Directorate. Unlike existing visualizers that must be running at the simulation's start time, this tool allows users to come and go as they please - effectively allowing one to peer into the state of a simulation at a place, perspective, and time that is of specific interest to them. Intense 3D graphics have been difficult to program and distribute among heterogeneous environments until the inception of java3D. Sun Microsystems' java3D provides users the best acceleration their platform can support while the WWW provides the transmission and communication infrastructure. This paper discusses a government owned, browser-based simulation visualizer capable of displaying simulated entities to any number of distributed sites.
Customizing component functionality to application needs generally involves inheritance, known to suffer from the fragile base class problem: changes in a base class may cause preexisting inheritor classes to malfunct...
详细信息
This paper is focused on the performance analysis, comparison and optimization of the most important distributed object models for java: RMl (Remote Method Invocation) and RMI-IIOP (Remote Method Invocation over Inter...
详细信息
Program analysis is the process of collecting control and data-flow information from a program. Current automated program analysis tools employ front-ends that process a program at the source code level. Unfortunately...
详细信息
This paper describes the DELFT-java processor and the mechanisms required to dynamically translate JVM instructions into DELFT-java instructions. Using a form of hardware register allocation, we transform stack bottle...
详细信息
A pilot project between two institutions of computer science, one in Finland and the other in Tanzania, reveals potentials and risks of a collaborative learning framework. Two groups, one from the Department of Comput...
详细信息
This paper describes an implementation of a colliding particle simulation in java using Parsimony. The simulation predicts the movements and interactions of particles in a bounded, 3-dimensional enclosure. Particle ev...
详细信息
This paper describes an implementation of a colliding particle simulation in java using Parsimony. The simulation predicts the movements and interactions of particles in a bounded, 3-dimensional enclosure. Particle events are displayed graphically using a visualization tool based on java3D. The use of Parsimony allows the simulation to be easily distributed across the Internet. The simulation may be executed using a choice of conservative and optimistic discrete-event simulation techniques. This paper focuses on the steps involved in developing a complex, graphical simulation in java using Parsimony.
Modern software implementation may be carried out using a building block approach instead of the strictly top-down and/or a bottom-up methodology that is often practiced in the software industry. The javaprogramming ...
详细信息
暂无评论