Results 1 - 10
of
15
Some Challenging Typing Issues in Object-Oriented Languages (Extended Abstract)
, 2003
"... Kim B. Bruce 1,2 Department of Computer Science Williams College Williamstown, MA 01267, U.S.A. ..."
Abstract
-
Cited by 18 (1 self)
- Add to MetaCart
Kim B. Bruce 1,2 Department of Computer Science Williams College Williamstown, MA 01267, U.S.A.
Sharing in Typed Module Assembly Language
- In Preliminary Proceedings of the Third Workshop on Types in Compilation (TIC 2000). Carnegie Mellon
, 2000
"... There is a growing need to provide low-overhead softwarebased protection mechanisms to protect against malicious or untrusted code. Type-based approaches such as proof-carrying code and typed assembly language provide this protection by relying on untrusted compilers to certify the safety proper ..."
Abstract
-
Cited by 17 (3 self)
- Add to MetaCart
There is a growing need to provide low-overhead softwarebased protection mechanisms to protect against malicious or untrusted code. Type-based approaches such as proof-carrying code and typed assembly language provide this protection by relying on untrusted compilers to certify the safety properties of machine language programs. Typed Module Assembly Language (TMAL) is an extension of typed assembly language with support for the type-safe manipulation of dynamically linked libraries. A particularly important aspect of TMAL is its support for shared libraries.
Urbi et Orbi: Unusual Design and Implementation Choices for Distributed Virtual Environments
- In the Proceedings of the 6th International Conference on Virtual Systems and MultiMedia (VSMM'2000
, 2000
"... This paper describes Urbi et Orbi, a distributed virtual environment (DVE) project that is being conducted in the Research and Development Laboratory at Epita. Our ultimate goal is to provide support for large scale multi-user virtual worlds on end-user machines. The incremental development of this ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
This paper describes Urbi et Orbi, a distributed virtual environment (DVE) project that is being conducted in the Research and Development Laboratory at Epita. Our ultimate goal is to provide support for large scale multi-user virtual worlds on end-user machines. The incremental development of this project led us to take unusual design and implementation decisions that we propose to relate in this paper. Firstly, a general overview of the project is given, along with the initial requirements we wanted to meet. Then, we go on with a description of the system’s architecture. Lastly, we describe and justify the unusual choices we have made in the project’s internals. 1
An asynchronous architecture to manage communication, display, and user interaction in distributed virtual environments
- Proceedings of the Sixth Eurographics Workshop on Virtual Environments
, 2000
"... Abstract. In Distributed Virtual Environments, each machine equally handles the communications over the network, provides the user with a view of the world, and processes her requests. A major issue is to ensure that the network communication does not hinder the interactivity between the machine and ..."
Abstract
-
Cited by 4 (0 self)
- Add to MetaCart
Abstract. In Distributed Virtual Environments, each machine equally handles the communications over the network, provides the user with a view of the world, and processes her requests. A major issue is to ensure that the network communication does not hinder the interactivity between the machine and the user. In this paper, we present a program designed to achieve this goal, based on tools rarely used in this area. 1
Type Inference for Variant Object Types
- Inform. & Comput
, 2000
"... Interpretation" held in Padova, Italy, May 1999. Special thanks to Jens Palsberg for 29 his insightful comments and suggestions. Also, to the members of the Church Group at Boston University, and to Assaf J. Kfoury for feedback reading earlier drafts. Comments of the anonymous referees were very he ..."
Abstract
-
Cited by 3 (1 self)
- Add to MetaCart
Interpretation" held in Padova, Italy, May 1999. Special thanks to Jens Palsberg for 29 his insightful comments and suggestions. Also, to the members of the Church Group at Boston University, and to Assaf J. Kfoury for feedback reading earlier drafts. Comments of the anonymous referees were very helpful to improve the presentation. The first author was partially supported by the Italian M.U.R.S.T. Project Constructive Methods in Topology, Algebra and Program Analysis.
Path resolution for recursive modules
, 2006
"... The ML module system enables flexible development of large software systems by its support of nested structures, functors and signatures. In spite of this flexibility, however, recursion between modules is prohibited, since dependencies between modules must accord with the order of definitions. As a ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
The ML module system enables flexible development of large software systems by its support of nested structures, functors and signatures. In spite of this flexibility, however, recursion between modules is prohibited, since dependencies between modules must accord with the order of definitions. As a result of this constraint, programmers may have to consolidate conceptually separate components into a single module, intruding on modular programming. Recently much work has been devoted to extending the module system with recursion, and developing a type system for recursive modules is one of the main subjects of study. Since recursion is an essential mechanism, one is to face several non-trivial issues to be considered for designing a practical type system. Our goal is to make recursive modules an ordinary construct of the module language for ML programmers. We want to use them easily in everyday programming, possibly combining with other constructs of the core and the module languages. With this goal, we are to develop a type system for recursive modules, which is practical and useful from the programmer’s perspective. In this paper, we present a decidable type system which can reconstruct the necessary type information during type checking of recursive modules. In particular, we develop algorithms for resolving forward references in recursive modules, by confining ourselves to first-order functors. The type system is provably sound for a call-by-value operational semantics. 1 1
Performance analysis of the pipe problem, a multi-physics simulation based on web services
- Cornell University
, 1485
"... 1 This research is partially supported by NSF grants EIA-9726388, EIA-9972853, and ACIR- ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
1 This research is partially supported by NSF grants EIA-9726388, EIA-9972853, and ACIR-
Declaring classes in pattern calculus
, 2010
"... Pattern calculus is able to represent a fixed system of classes by treating methods as pattern-matching functions, along with a powerful account of both quantified types and of subtypes. This paper adds class, and subclass declarations to support an evolving class hierarchy. Even though method meani ..."
Abstract
-
Cited by 1 (1 self)
- Add to MetaCart
Pattern calculus is able to represent a fixed system of classes by treating methods as pattern-matching functions, along with a powerful account of both quantified types and of subtypes. This paper adds class, and subclass declarations to support an evolving class hierarchy. Even though method meanings change as new classes are introduced, the properties of existing programs do not change. This provides a common foundation for functional and object-oriented languages in which new functions can be defined on existing data types and also new subclasses can inherit existing methods. 1.
Object-Oriented Extensions of HOL
"... Introduction Higher order logic (HOL)[4] is a popular logic for verification. It is based on the simply typed, polymorphic lambda-calculus. Types are generated from type constructors and type variables. In Isabelle, one-parameter type classes have been added to HOL. These can be used to restrict ov ..."
Abstract
- Add to MetaCart
Introduction Higher order logic (HOL)[4] is a popular logic for verification. It is based on the simply typed, polymorphic lambda-calculus. Types are generated from type constructors and type variables. In Isabelle, one-parameter type classes have been added to HOL. These can be used to restrict overloading. Formalisms based on objects and records are everywhere - ranging from specification formalisms such as UML and Z to the markup language XML and objectoriented programming languages such as Java. Unfortunately, the modelling of these formalisms in HOL is complicated by the fact that objects and records are not easily expressed as HOL types. Recently, a number of methods have been suggested for the integration of records and objects into functional programming languages such as Haskell and ML. The purpose of this project is to investigate in how far these methods can be transferred to HOL. The rationale is that HOL and functional programming languages are both based on the

