CPL1(ID:2430/)

Implemented subset of CPL 


Implemented subset of CPL


Related languages
CPL => CPL1   Subset

References:
  • Coulouris, G. F. Principles for implementing useful subsets of advanced programming Languages view details
          in Michie, D. (ed) "Machine Intelligence 1" Edinburgh: Oliver & Boyd 1967 Proceedings of the First International Machine Intelligence Workshop, held at Edinburgh, September 1965 view details
  • Coulouris, G. F., and Goodey, T. J. "The CPLl System Manual", University of London Institute of Computer Science 1966 view details
          in Michie, D. (ed) "Machine Intelligence 1" Edinburgh: Oliver & Boyd 1967 Proceedings of the First International Machine Intelligence Workshop, held at Edinburgh, September 1965 view details
  • Bennett, R. K. Review of Coulouris 1968 view details Abstract: This discusses certain aspects of CPL1, a subset of CPL, for which a compiler has been implemented on the London Atlas computer. It describes the method of handling a number of details.

    The article is apparently directed to CPL devotees and assumes a knowledge of this language. It would not be of interest to anyone not already concerned and familiar with the CPL language.
          in ACM Computing Reviews 9(11) November 1968 view details
  • Coulouris, G. F.; Goodey, T. J.; Hill, R. W.; Keeling, R. W.; Levin, D. "The London CPL 1 compiler" view details Abstract: The CPL language has been described elsewhere, but as yet no implementations of it have been
    described. The authors have been concerned in the implementation of a subset of the full language,
    the implementation proceeding concurrently with the design of the language. Since the majority
    of the designers were not members of the implementation team, the choice of a subset was partly
    dictated by the state of the design process at the time. Some other motivations for the choice are
    given in Coulouris (1967). The implementation was intended to clarify some of the problems of
    implementing CPL, and to gain feedback information from user experience to assist in the design
    process. The authors believe that CPL is a powerful language for the demonstration of computing
    concepts, and that the implementation has therefore provided a useful teaching tool. Extract: Intro
    The compiler which is the subject of this paper is implemented
    on the London Atlas for a language CPLl, very
    similar to CPL (Barron et al., 1963; CPL Working
    Papers, 1966), but less powerful. (It has no types
    general, complex or double length. The list processing
    facilities mentioned in Barron et al. (1963) and Barron
    and Strachey (1966) are not part of CPL as defined by
    the reference manual (2), and are not in CPLl.) Despite
    this CPLl is more powerful than ALGOL 60, and some
    details of its implementation may therefore be of interest.
    The CPLl compiler has been written using the Compiler
    Compiler of Brooker and Morris. This takes a
    'statement' at a time, analyses it, and produces object
    code. In its application to CPLl it has been necessary
    to define the complete program as a single source statement;
    this is forced by the 'where' clause which allows
    trailing definitions and by the labels which are not
    defined at the head of a block. In a situation such as:
    $1 let B = 0.01
    5 let x = B
    . . . Program. . .
    B: $1
    it is not known, until the whole program is read in,
    whether x is of type real or label (in fact it is label).
          in The Computer Journal 11(1) May 1968 view details