An Introduction to Proving the Correctness of Programs
ACM Computing Surveys (CSUR)
Proof techniques for hierarchically structured programs
Communications of the ACM
Communications of the ACM
Lucid, a nonprocedural language with iteration
Communications of the ACM
An exercise in proving parallel programs correct
Communications of the ACM
Program development by stepwise refinement
Communications of the ACM
The next 700 programming languages
Communications of the ACM
Recursive functions of symbolic expressions and their computation by machine, Part I
Communications of the ACM
Guarded commands, non-determinancy and a calculus for the derivation of programs
Language Hierarchies and Interfaces, International Summer School
Structured programming
The "single-assignment" approach to parallel processing
AFIPS '71 (Fall) Proceedings of the November 16-18, 1971, fall joint computer conference
The use of APL in a concurrent data flow environment
APL '82 Proceedings of the international conference on APL
Hi-index | 0.00 |
The time is ripe for a change from the traditional, von Neumann view of computing. The desire to increase the efficiency of the programmer by providing a more natural programming tool, and also the desire to increase the efficiency of processor, and memory utilisation by allowing for increased concurrency in execution are major motivations for this change.A data oriented approach to program design is presented which, it is contended, satisfies both of these goals. In order to support this approach a model of parallel computation, and the outline of a programming language based on that model are presented.Some short example programs are included, and the question of input and output (which is often ignored) is discussed.