CLEOPATRA(ID:3422/cle006)


Schreiner PhD Uni of Illinois 1973

System development language

for Comprehensive Language for Elegant OPerating system And TRAnslator design

Intended for co-operation in Project Rosetta Stone, but if this eventuated is not apparent


References:
  • Friedman, H. George and Axel-Tobias Schreiner "CLEOPATRA: comprehensive language for elegant operating system and translator design" pp41 - 43 view details Abstract: CLEOPATRA is intended as a language for operating system writing, using Dijkstra's structured programming techniques [1]. The language and its compiler are intended to be portable; with the addition of a new coder phase to the compiler (as outlined by Wilcox [2]), a CLEOPATRA system should be movable to a new host machine.
    Operating system writing will be facilitated by the availability of many suitable data types; CLEOPATRA consequently enables the user to define his own data types, by specifying storage layout and operators for the new data items. In expressions, operators are recognized by name and argument type(s); no conversion is implied in the language. Expressions are scanned right to left, precedence free, as in APL, to avoid confusion through various operators. All definitions pertaining to one data type can be given a common scope by the use of a special block construct,' the "type pack". Thus usage and implementation of a data type may be completely separated.
    Basic types, which are supported by the code rather than by some user-wri tten type-pack, will reflect a particular host machine's hardware so that all available instructions can be accessed through CLEOPATRA.
    Constants are interpreted as being predictable values which may also be the result of a standard function evaluation (available at compile- or runtime). Consequently, array constants with adapting bounds, as well as "generic" constants adapting to a variety of type usages, are provided. All variables in CLEOPATRA (even those corresponding to user-defined types) must be initialized; the default initialization is the generic constant NIL, an instance of which is created by the data-type's generating routines.
    CLEOPATRA is GOTO-free, and includes a CASE statement as well as a variety of options in a DO statement. The code production is to be controlled by the user, code can be requested in-line (especially for small operator-routines), or out-of-line as a subroutine call This facility should provide for efficient structured programs. External modules may be incorporated. A PRIVLEGE-routine allows for machine-language routines to be linked to CLEOPATRA through a supervisor call instruction. (It is planned, how-
    ever, to keep machine-language routines at an absolute minimum: CLEOPATRA routines will provide their own run-time support, written in CLEOPATRA as well). A macro facility is being contemplated.


    External link: Online copy
          in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details
  • Schreiner, A. T. (1974). CLEOPATRA : a proposal for another system implementation language. Urbana, Departments of Mathematics and Computer Science University of Illinois at Urbana-Champaign: v, 154. view details
          in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details
  • Schreiner, A. T. (1974). CLEOPATRA-comprehensive language for elegant operating systems and translator design. Urbana, Departments of Mathematics and Computer Science University of Illinois at Urbana-Champaign. view details
          in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details
  • Halbur, J. D. A code generator for the Cleopatra language. Urbana, Dept. of Computer Science University of Illinois at Urbana-Champaign 1975 view details
          in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details
  • Halbur, J. D. Cleopatra code generator user's guide. Urbana, Ill., Dept. of Computer Science University of Illinois at Urbana-Champaign 1976 view details
          in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details
  • Library of Congress Subject Headings C2 view details
          in SIGPLAN Notices 8(06) June 1973 SPECIAL ISSUE: Abstracts in programming language-related research view details