| Charles M. Geschke, James H. Morris, Jr., and Edwin H. Satterthwaite. Early experience with Mesa. ACM SIGPLAN Notices, 12(3):138--152, March 1977. |
....Idealized Algol Algol was introduced in 1960 [NeBB 60] as an algebraic programming language. This was a remarkable development and it greatly in uenced the design of later programming languages, such as ISWIM [Lan66] Algol 68 75] Gedanken [Rey70] Pascal [Wir71] Euclid [LGH 75] MESA [GMS77] and ADA [IHR 79] In 1981, John Reynolds pointed out some signi cant features of Algol that he felt make up its essence [Rey81] Many of the successor languages failed to recognize the importance of these features, and are not, in Reynolds usage, Algol like languages. Here, we introduce a ....
C. Geschke, J. Morris, and E. Satterthwaite. Early experience with mesa. Comm. ACM, 20(8):540-553, August 1977.
....with multiple inheritance. Mitt86 Stef83] Mach: Capability based Unix for object oriented programming. Carnegie Mellon. Jone86] Mesa: Programming language with monitors to which multiple inheritance (a la traits ) were added. Used in the implementation of the Xerox Star workstation. [Curr82 Gesc77 Mitc79 Lamp80] ModPascal: An object oriented Pascal. From the University of Kaiserslautern, Germany. Olth86] Oaklisp: Another object oriented lisp with message passing and inheritance. From CarnegieMellon. Lang86] OOCL: An Object Oriented Command Language. Snod83] Objective C: Descendent of OOPC, an ....
C.M. Geschke, J.H. Morris, Jr. and E.H. Satterthwaite, "Early Experience with Mesa", CACM, vol. 20, no. 8, pp. 540-553, Aug 1977.
....features. The proposed approach does not eliminate the need for the compiler to read interface files, although it does reduce overhead by removing comments. The overhead of reading interface files can be reduced further by compiling them. This method was used in the Mesa project at Xerox PARC [4], in implementations of Modula 2 and Ada, and in recent integrated development environments for C . Borland C , for example, uses precompiled header files because the compiler can spend up to half its time parsing header files [2, page 221] Unfortunately, preprocessors have a well known ....
C.M. Geschke, J.H. Morris, Jr., and E.H. Satterwhwaite. Early experience with Mesa. Comm. ACM, 20(8):540--553, August 1977.
....system and communications are standardized at a level below any of the software in the operating system. In fact, it is the representation of files on the disk and of packets on the network that are standardized. This has permitted programs written in radically different languages (BCPL [4] Mesa [8], Lisp [7] and Smalltalk [10] the former came first, and is the host language of the software described in this paper) and executed using radically different instruction sets (implemented in writeable microcode) to share the same file system and remote facilities. In doing so, they do not give up ....
Geschke, C. M., J. H. Morris Jr., and E. H. Satterthwaite, "Early experience with Mesa," Comm. ACM 20, 8 (Aug 1977).
....procedures could be called from outside of the cluster. Many programming languages designed in the 1970s provided explicit support for modular programming, being influenced by Simula s classes or by the ideas of information hiding and abstract data types. Examples include Alphard [Sha81] Mesa [GMS77] and Modula [Wir77] Only the module facility developed for the Modula family of languages will be described in some detail here as it seems to be typical for many of the module systems currently used for functional languages. Wirth [Wir79] described his modules as a simplified language construct ....
....true function returning functions, the state information needed by these entries ( is also stored in the vector. Mesa was one of the first languages that had both modules and first class procedures and, fortunately, the authors presented their early experience with the language in [GMS77] After describing Mesa s module facility and the standard binding mechanisms (capable of simulating both Modula and Simula style modules) they made the following observations: Because Mesa has procedure variables, it is possible for a user to create any binding regime he wishes simply by ....
Charles M. Geschke, James H. Morris Jr., and Edwin H. Satterthwaite. Early Experience with Mesa. Communications of the ACM, 20(8):540--553, August 1977.
....(called MACE) specifically to handle exceptions associated with debugging and tracing. 2.3 Programming Language Support for Exceptions Exception handling is also an issue in the design of a programming language and its runtime environment. Languages like ADA [Ich77] PL I [Mac77] and Mesa [MMS79,GMS77] provide primitives for exception handling within the language. There has been, however, a strong debate on how useful these mechanisms are [Bla82] since they have an adverse impact on the simplicity and elegance of the language. Regardless of the outcome of this debate, it is our belief is that ....
C. M. Geschke, J. H. Morris, and E. H. Satterthwaite. Early experiences with Mesa. Coomunications of the ACM Vol. 20, pages 540--553, 1977.
....system provides no abstractions beyond those minimally provided by the hardware [EK95] Several systems [CHL91, RDH 80, Mos94, SS94] like SPIN, have leveraged type safety to build an extensible system. Pilot, for example, was a single address space system which ran programs written in Mesa [GMS77] a high level systems programming language which is an ancestor of Modula 3 [Nel91] In general, systems such as Pilot have depended on the language for all protection in the system, not just for the protection of operating system extensions. In contrast, SPIN s reliance on type safety applies ....
C.M. Geschke, J.H. Morris, and E.H. Satterthwaite. Early Experiences with Mesa. cacm, 20(8):540--553, August 1977.
....type of applications we are interested in here. The shared data object model is related to several other models for parallel or distributed programming, such as the distributed object based model of Emerald [Jul et al. 1988] and the monitor model of Concurrent Pascal and Mesa [Brinch Hansen 1975; Geschke et al. 1977]. The primary distinguishing property of our model is the total lack of centralized control of shared data. Operations on monitors, for example, are usually implemented using semaphores and are executed one at a time. Our model, on the other hand, only guarantees serializability, but does not ....
Geschke, C. M., Morris Jr., J. H., and Satterthwaite, E. H., Early Experience with Mesa, Commun. ACM, Vol. 20, No. 8, pp. 540-553, Aug. 1977.
....type checking, it is nearly out of the question to change any public interface because there is no way of tracking down its clients and checking for elementary incompatibilities, such as disagreements on the number of arguments or confusion between pointers and integers. With a language like Mesa [15] that has complete type checking and language support for interfaces, it is much easier to change an interface without causing the system to collapse. But even if type checking can usually detect that an assumption no longer holds, a programmer must still correct the assumption. When a system ....
Geschke, C.M, et al. Early experience with Mesa. Comm. ACM 20, 8, Aug. 1977, pp 540-553.
....interface like signatures and static checking. However, this checking is tightly coupled with the type systems for these languages, so this approach is not easily adapted for use in a latently typed language like Scheme. Several languages in the Algol family, such as Ada [15] CLU [7] Mesa [4], and Modula 3 [2] were designed to support large scale programming. They feature a static module structure with explicit, checked interfaces. Most do not provide more than one level of module scoping, with Ada and Mesa being notable exceptions. Mesa was the primary inspiration for our own ....
....more than one level of module scoping, with Ada and Mesa being notable exceptions. Mesa was the primary inspiration for our own design. 3 Design goals When we began work on the module system, we had several goals in mind, some of which were inspired by our experience with the Mesa module system [4]. Separation: The module system should allow a strong separation between independent pieces of code. All dependencies between modules should be explicitly declared in the program text, making reference to textually disjoint specifications of the interfaces between subsystems. Simplicity: The ....
Charles M. Geschke, James H. Morris, Jr., and Edwin H. Satterthwaite. Early experience with Mesa. ACM SIGPLAN Notices, 12(3):138--152, March 1977.
....Additionally, most functional languages make continuation recognition hard because they disallow equality comparisons of functional objects. Lampson [Lampson et al. 74] described a generalized control transfer interface based on continuations for an early version of the Mesa programming language [Geschke et al. 77] A much restricted form of Lampson s interface later appeared in the cross address space RPC implementation for Topaz [Schroeder Burrows 90] an operating system designed for the Firefly, DEC SRC s experimental multiprocessor workstation [Thacker et al. 88] This interface, implemented in ....
Geschke, C., Morris, J., and Satterthwaite, E. Early Experiences with Mesa. Communications of the ACM, 20(8):540--553, August 1977.
....Kay s vision was a simple reinvention of the object oriented genesis of the idea. 2.6. 2 Xerox Lisp Machines: 1973 1980 The Alto was a microcodable machine developed in 1973 [Thacker, 1982] and used for personal computing experimentation at Xerox, using Interlisp and other languages such as Mesa [Geschke, 1977]. The Alto version of the Interlisp environment first went into use at Xerox PARC and at Stanford University around 1975. The Alto was standardly equipped with 64K 16 bit words of memory, expandable up to 256K words, which was quite large for a single user computer but still only half the memory ....
Geschke, Charles M., James H. Morris Jr., and Edwin H. Satterthwaite. Early experience with Mesa. Communications of the ACM, 20:8, pp. 540--553, August 1977.
....it understands BCPL s symbols, but is basically a machine language debugger. The entire BCFL environment is very much like the C environment in Unix. Most Alto software was programmed in BCPL until 1977. By 1978 new programs were being written almost entirely in the other languages. Mesa Mesa [15] is an implementation language descended from Pascal. Its distinguishing features are: Strong type checking, which applies even across separate compilation units. Modules, with the interface to a module defined separately from its implementation. Intermodule type checking is based on the ....
C. M. Geschke et al. Early experience with Mesa. Communications of the ACM, 20(8): 540553, August 1977.
No context found.
Charles M. Geschke, James H. Morris, Jr., and Edwin H. Satterthwaite. Early experience with Mesa. ACM SIGPLAN Notices, 12(3):138--152, March 1977.
No context found.
C. M. Geschke, J. H. Morris Jr., and E. H. Satterthwaite. Early Experience with MESA. Communications of the ACM, 20(8):540--553, August 1977.
No context found.
C. M. Geschke, J. H. Morris and E. H. Satterthwaite, `Early experience with Mesa', Communications of the ACM, 20, (8), 540--553 (1977).
Online articles have much greater impact More about CiteSeer.IST Add search form to your site Submit documents Feedback
CiteSeer.IST - Copyright Penn State and NEC