A semantics of multiple inheritance.
Proc. of the international symposium on Semantics of data types
ACM Transactions on Programming Languages and Systems (TOPLAS)
On understanding types, data abstraction, and polymorphism
ACM Computing Surveys (CSUR) - The MIT Press scientific computation series
Distrbution and Abstract Types in Emerald
IEEE Transactions on Software Engineering - Special issue on distributed systems
The design and evaluation of a high performance SMALLTALK system
The design and evaluation of a high performance SMALLTALK system
Object structure in the Emerald system
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
OOPLSA '86 Conference proceedings on Object-oriented programming systems, languages and applications
The design and implementation of distributed Smalltalk
OOPSLA '87 Conference proceedings on Object-oriented programming systems, languages and applications
Fine-grained mobility in the Emerald system
ACM Transactions on Computer Systems (TOCS)
Distributed programming in Argus
Communications of the ACM
A programmer's view of the Intel 432 system
A programmer's view of the Intel 432 system
Structural subtyping and the notion of power type
POPL '88 Proceedings of the 15th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
POPL '89 Proceedings of the 16th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Object mobility in a distributed object-oriented system
Object mobility in a distributed object-oriented system
F-bounded polymorphism for object-oriented programming
FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Emerald: a general-purpose programming language
Software—Practice & Experience
Hermes: a language for distributed computing
Hermes: a language for distributed computing
ACM SIGPLAN Notices
HOPL-II The second ACM SIGPLAN conference on History of programming languages
Safe type checking in a statically-typed object-oriented programming language
POPL '93 Proceedings of the 20th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
SOSP '93 Proceedings of the fourteenth ACM symposium on Operating systems principles
Object and native code thread mobility among heterogeneous computers (includes sources)
SOSP '95 Proceedings of the fifteenth ACM symposium on Operating systems principles
Extreme programming explained: embrace change
Extreme programming explained: embrace change
Supporting distributed applications: experience with Eden
Proceedings of the tenth ACM symposium on Operating systems principles
Implementing remote procedure calls
ACM Transactions on Computer Systems (TOCS)
Communications of the ACM
Ethernet: distributed packet switching for local computer networks
Communications of the ACM
Monitors: an operating system structuring concept
Communications of the ACM
On the criteria to be used in decomposing systems into modules
Communications of the ACM
HYDRA: the kernel of a multiprocessor operating system
Communications of the ACM
Report on the algorithmic language ALGOL 60
Communications of the ACM
POPL '86 Proceedings of the 13th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
Computer Networks
Capability-Based Computer Systems
Capability-Based Computer Systems
The architecture of concurrent programs
The architecture of concurrent programs
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
Denotational Semantics: The Scott-Strachey Approach to Programming Language Theory
Jini Specification
Implementing Location Independent Invocation
IEEE Transactions on Parallel and Distributed Systems
Comprehensive and Robust Garbage Collection in a Distributed System
IWMM '92 Proceedings of the International Workshop on Memory Management
Optimizing Dynamically-Typed Object-Oriented Languages With Polymorphic Inline Caches
ECOOP '91 Proceedings of the European Conference on Object-Oriented Programming
ECOOP '93 Proceedings of the 7th European Conference on Object-Oriented Programming
Constraints and Object Identity
ECOOP '94 Proceedings of the 8th European Conference on Object-Oriented Programming
On the transfer of control between contexts
Programming Symposium, Proceedings Colloque sur la Programmation
The architecture of the Eden system
SOSP '81 Proceedings of the eighth ACM symposium on Operating systems principles
Synchronization and recovery of actions
PODC '83 Proceedings of the second annual ACM symposium on Principles of distributed computing
An Ada code generator for VAX 11/780 with Unix
SIGPLAN '80 Proceedings of the ACM-SIGPLAN symposium on The ADA programming language
Garbage collection in an object-oriented system
Garbage collection in an object-oriented system
A short introduction to Concurrent Euclid
ACM SIGPLAN Notices
A Note on Distributed Computing
A Note on Distributed Computing
ACM SIGOPS Operating Systems Review
History of programming languages---II
Simula Begin
Report on the algorithmic language ALGOL 68
Report on the algorithmic language ALGOL 68
J-Orchestra: Enhancing Java programs with distribution capabilities
ACM Transactions on Software Engineering and Methodology (TOSEM)
Remote Batch Invocation for Compositional Object Services
Genoa Proceedings of the 23rd European Conference on ECOOP 2009 --- Object-Oriented Programming
Panel: designing the next educational programming language
Proceedings of the ACM international conference companion on Object oriented programming systems languages and applications companion
TRACK: keeping track of highly mobile objects: a lanugage-level proposal position paper
Proceedings of the 8th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems
Object-oriented programming: Some history, and challenges for the next fifty years
Information and Computation
Hi-index | 0.00 |
Emerald is an object-based programming language and system designed and implemented in the Department of Computer Science at the University of Washington in the early and mid-1980s. The goal of Emerald was to simplify the construction of distributed applications. This goal was reflected at every level of the system: its object structure, the programming language design, the compiler implementation, and the run-time support. This paper describes the origins of the Emerald group, the forces that formed the language, the influences that Emerald has had on subsequent distributed systems and programming languages, and some of Emerald's more interesting technical innovations.