User guide

The BCPL Cintsys and Cintpos
User Guide
by
Martin Richards
mr@cl.cam.ac.uk
http://www.cl.cam.ac.uk/users/mr10/
Computer Laboratory
University of Cambridge
Revision date: Wed Jan 14 10:46:33 GMT 2015
Abstract
BCPL is a simple systems programming language with a small fast compiler which
is easily ported to new machines. The language was first implemented in 1967
and has been in continuous use since then. It is a typeless and provides machine
independent pointer arithmeti c allowing a simple way to represent vectors and
structures. BCPL functions are recursive a n d variadic but, like C, do not allow
dynamic free variables, and so can be represented by just their entry addresses.
There is no built-in garbage collector and all input-output is done using library
calls.
This document describes both the si n g le threaded BCPL Cintco de System
(called Cintsys) and the Cintcode version of t he Tripos portable operating system
(called Cintpos). It gives a definition of the language including an extended
version (using the xbcpl compiler) containing such features as floatin g point and
the op - becomes operator. The m anual also describes the standard library and
running environment. The native code version of the system based on Sial and t h e
Cintpos portable operating system are also descri bed. Inst al l at i on instructions
are included. Since May 2013, the standard BCPL distribution supports both
32 and 64 bit Cintcode versions. Since August 2014, standard Cintcode BCPL
includes floati ng point constants and operators.
Keywords
Systems programming language, Typeless language, BCPL, Cintcode, Corou-
tines, Cintpos.

Summary of content (238 pages)