MADSEN@SU-SCORE.ARPA (04/01/84)
From: Ole Lehrmann Madsen <MADSEN@SU-SCORE.ARPA> [Forwarded from the Stanford bboard by Laws@SRI-AI.] The following course will be given in the spring quarter: CS 249 TOPICS IN PROGRAMMING SYSTEMS: LANGUAGES FOR SYSTEM DESCRIPTION AND PROGRAMMING Questions to Ole Lehrmann Madsen, M. Jacks Hall room 214, tlf. 497 - 0364, net address MADSEN@SU-SCORE. Listing: CS 249 Instructor: Ole Lehrmann Madsen Time: Monday 1:00pm - 4:00pm Room: 352 building 460 This course will consider tools and concepts for system description and programming. A number of languages for this purpose will be presented. These include SIMULA 67, DELTA, EPSILON and BETA, which have been developed as part of research projects in Norway and Denmark. SIMULA I was originally developed as a tool for simulation. SIMULA 67 is a general programming language with simulation as a special application. The formalization of a system as a SIMULA program often gave a better understanding of the system than did the actual simulation results. This was the motivation for designing a special language (DELTA) for making system descriptions. DELTA is intended for communication about systems. e.g. data processing, biology, medicine, physics. DELTA among others contains constructs for describing discrete state changes (by means of algorithms) and continuous state changes (by means of predicates). The EPSILON language is the result of an attemp to formalize DELTA by means of Petri Nets. BETA is a programming language originally intended for implementing DELTA descriptions of computer systems. However the project turned into a long- term project with the purpose of developing concepts, constucts and tools in relation to programming. The major results of this projetc is the BETA language. BETA is an object oriented language like SIMULA and SMALLTALK, but unlike SMALLTALK, BETA belongs to the ALGOL family with respect to block structure, scope rules and type checking. Various other languages and topics may also be covered. Examples of this are: Petri Nets, environments for system description and programming, alternative languages like Aleph and Smalltalk, implementation issues. Implementaion issues could be: transformation of a system description to a program, implementation of a typed language like BETA obtaining dynamic possibilities like in LISP. Prerequisites Students are expected to have a basic knowledge of programming languages. The course may to some extent depend on the background and interests of the participating students. Students with a background in simulation or description of various systems within physics, biology, etc. will be useful participants. Course work Students will be expected to read and discuss in class various papers on system description and programming languges. In addition small exercises may be given. Each student is supposed to write a short paper about one or more topics covered by the course and comment on papers by other students.