Vincent F. Russo

Learn More
C++ uses inheritance as a substitute for subtype polymorphism. We give examples where this makes the type system too innexible. We then describe a conservative language extension that allows a programmer to deene an abstract type hierarchy independent of any implementation hierarchies, to retroactively abstract over an implementation, and to decouple(More)
1. I n t r o d u c t i o n This paper describes the design for an operating system family called Choices being built for the Embedded Operating System (EOS) project at the University of Illinois at Urbana-Champaign. Choices embodies the notion of customized operating systems that are tailored for particular hardware configurations or for particular(More)
This paper describes the object-oriented design and implementation of a family of stream-oriented le systems under UNIX and under an object-oriented operating system called Choices. A class hierarchy provides an object-oriented taxonomy of the algorithms and data structures used in the design of this family. The family includes the System V le system, the(More)
The <italic>Choices</italic> operating system architecture [3, 4, 15] uses class hierarchies and object-oriented programming to facilitate the construction of customized operating systems for shared memory and networked multiprocessors. The software is being used in the Tapestry Parallel Computing Laboratory at the University of Illinois to study the(More)
In Java, an interface specifies public abstract methods and associated public constants. Conformance of a class to an interface is by name. We propose to allow structural conformance to interfaces as well: Any class that provides an implementation for each method in an interface conforms structurally to the interface, and any instance of the class can be(More)