MetaCartSign in to MyCiteSeer

Include Citations | Advanced Search | Help

Include Citations | Advanced Search | Help

  SUMMARY

Download:
Download as a PDF | Download as a PS
by Rajendra K. Raj, Ewan Tempero, Henry M. Levy, Andrew P. Black, Norman C. Hutchinson
http://www.informatik.uni-frankfurt.de/~fp/AlI/Emerald/ps/Approach.ps.gz
Add To MetaCart

Abstract:

Emerald is a general-purpose language with aspects of traditional object-oriented languages, such as Smalltalk, and abstract data type languages, such as Modula-2 and Ada. It is stronglytyped with a non-traditional object model and type system that emphasize abstract types, allow separation of typing and implementation, and provide the flexibility of polymorphism and subtyping with compile-time checking. This paper describes the Emerald language and its programming methodology. We give examples that demonstrate Emerald's features, and compare and contrast the Emerald approach to programming with the approaches used in other similar languages. keywords: Programming languages, Programming methodology, Object-oriented programming, Abstract data types, Inheritance, Object-based concurrency

Citations

1268 The C++ Programming Language – Stroustrup - 1997
1127 SmallTalk 80: The Language and its Implementation – Goldberg, Robson - 1983
801 A theory of type polymorphism in programming – Milner - 1978
762 On understanding types, data abstraction, and polymorphism – Cardelli, Wegner - 1985
483 Fine-grained mobility in the Emerald system – Jul, Levy, et al. - 1988
483 Self: the power of simplicity, in – Ungar, Smith - 1987
384 Monitors: an operating system structuring concept – Hoare - 1974
236 Cooperating Sequential Processes – DIJKSTRA - 1968
180 Distribution and Abstract Types in Emerald – Black, Hutchinson, et al. - 1987
179 On Understanding Types – Cardelli, Wegner - 1985
163 Typefull programming – Cardelli - 1989
146 Object structure in the emerald system – Black, Hutchinson, et al. - 1986
125 Niklaus: Programming in Modula-2 – Wirth - 1982
111 An introduction to trellis/owl – Schaffert, Coope, et al. - 1986
105 A proposal for making eiffel type-safe – Cook - 1989
92 Data abstraction and hierarchy – Liskov - 1988
81 The Programming Language Concurrent Pascal – Hansen, P - 1975
63 Extending Modula-2 to build large, integrated systems – ROVNER - 1986
58 Inheritance and the development of encapsulated software components – Snyder - 1987
57 Classes Versus Prototypes in Object-Oriented Languages – Borning - 1986
54 Concurrent Programming Using Actors – Agha, Hewitt
53 Type theories and object-oriented programming – Danforth, Tomlinson - 1988
49 The beta programming language – Kristensen, Madsen, et al. - 1987
39 Emerald: An Object-Based Language for Distributed Programming – Hutchinson - 1987
36 Object Mobility in a Distributed Object-Oriented System – Jul - 1988
29 A compositional model for software reuse – Raj, Levy - 1989
24 Data types are values – Donahue, Demers - 1985
15 DeltaTalk: An Empirically and Aesthetically Motivated Simplification of the Smalltalk-80™ Language. Unpublished manuscript – Borning, O’Shea - 1986
13 The Emerald Programming Language – Hutchinson, Raj, et al. - 1987
10 Block structure and object-oriented languages – Madsen - 1987
9 Concurrent Euclid, the Unix System, and Tunis – Holt - 1983
7 Static typing for Eiffel – Meyer - 1990
6 Modules, objects and distributed programming: Issues in RPC and remote object invocation. Software Practice and Experience – Levy, Tempero - 1991
6 On the criteria to be used in decomposition systems into modules – Parnas - 1972
3 Is block structure necessary? Software Practice and Experience 11 – Hanson - 1981
3 Two Examples of Block Structure – Tennent - 1982
1 Static typing for Eiffel, part 2 (rationale for the Eiffel rules)’, Article on Usenet Newsgroup comp.language.eiffel (message-id: 177@eiffel.UUCP – Meyer - 1989
1 Data abstraction and hierarchy’, 00PSLA ’87, Addendum to the Proceedings – Liskov - 1987
1 Composition and reuse in object-oriented languages – Raj - 1990
1 Concurrent Programming – Object-Oriented - 1987
1 Is block structure necessary?’, Software—Practice and Experience – Hanson - 1981
1 Classes Versus Prototypes – Borning - 1986