MUTANT 0.5(ID:8450/)


Algol 60 dialect derived from EULER by McKeeman, Stanford 1966 and then Satterthwaite, Stanford 1969


Related languages
EULER => MUTANT 0.5   Evolution of

References:
  • McKeeman, W. M., An approach to computer language design, Technical Report CSW, Computer Science Department, Stanford (August 1966) view details
  • Satterthwaite, E. "MUTANT 0.5, an Experimental Programming Language" TR CS-TR-69-120.pdf Computer Science Department Stanford University February 1969 view details Abstract: A prograrmning language which continues the extension and simplification of AIGOL 60 in the dire&ion suggested by EULER is defined and described.
    Techniques used in an experimental implementation of that language, called MUTANT 0.5, are briefly summarized. The final section of this report is an attempt to assess the potential value of the approach to procedural programming language design exemplified by MUTANT 0.5. Implementation and use of the experimental system have indicated a sufficient number of conceptual and practical problems to suggest that the general approach is of limited value; however, a number of specific features were found to be convenient, useful, and adaptable to other philosophies of language design. Extract: Introduction
    Introduction
    In his thesis, McKeeman [McKee 66] describes MUTANT, a "kernel" language which he proposes as a nucleus for the design of procedural programming languages. Many features of that language appeared useful for expressing algorithms of both graph theory and graphical data processing. In addition, MUTANT suggests possible approaches to the problems of data structuring and the specification of parallel processing. To gain some experience with such facilities, an experimental language with semantics similar to those of MUTANT was designed. Certain semantic concepts were generalized, and others restricted; also the syntax was substantially altered. In addition, the current version of the language does not include all facilities of MUTANT (most notably, unordered sets and real number arithmetic); it is therefore called MUTANT 0.5.
    A processing system for MUTANT 0.5, consisting of a compiler and an interpreter, was implemented on the IBM System/360,' and some experience with that system has been obtained. The language has been found to allow a concise and natural expression of many algorithms, but a number of difficulties were experienced in designing both the language and the interpreter for the system. Although certain language improvements are obviously needed and efficiency could be significantly increased by use of more suitable hardware, I agree with Wirth's conclusion [Wirth 67a] that difficult logical problems underlie both the design and implementation of such a language. No further development or use of the current system is planned. Thus in terms of providing a useful language and processor, the project was a failure. It was, however, a valuable exercise in language design; this report is an attempt to analyze, for the benefit of future work, some of-the strengths and weaknesses of the MUTANT 0.5 design revealed by both the implementation and the use of the language.