A Discipline of Programming

Author: Edsger Wybe Dijkstra
Publisher: Prentice Hall
ISBN: UOM:39015004474899
Release Date: 1976
Genre: Computers

Executional abstraction; The role of programming languages; States and their characterization; The characterization of semantics; The semantic characterization of a programming language; Two theorems; On the design of properly terminating; Euclid's algorithm revisited; The formal treatment of some small examples; The linear search theorem; The problem of the next permutation.

The Science of Programming

Author: David Gries
Publisher: Springer Science & Business Media
ISBN: 9781461259831
Release Date: 2012-12-06
Genre: Computers

Describes basic programming principles and their step-by- step applications.Numerous examples are included.

A Discipline of Multiprogramming

Author: Jayadev Misra
Publisher: Springer Science & Business Media
ISBN: 9781441985286
Release Date: 2012-09-07
Genre: Computers

In this book, a programming model is developed that addresses the fundamental issues of 'large-scale programming'. The approach unifies several concepts from database theory, object-oriented programming and designs of reactive systems. The model and the associated theory has been christened "Seuss." The major goal of Seuss is to simplify multiprogramming. To this end, the concern of concurrent implementation is separated from the core program design problem. A program execution is understood as a single thread of control - sequential executions of actions that are chosen according to some scheduling policy. As a consequence, it is possible to reason about the properties of a program from its single execution thread.

Structured Design

Author: Edward Yourdon
Publisher:
ISBN: UOM:39015026551302
Release Date: 1979
Genre: Computers

A valuable new approach to computer systems and program design, structured design is quickly becoming the standard industrial technique for significantly improving productivity, enhancing reliability, and lowering maintenance costs.

On a Method of Multiprogramming

Author: Wim Feijen
Publisher: Springer Science & Business Media
ISBN: 9781475731262
Release Date: 2013-06-29
Genre: Computers

Here, the authors propose a method for the formal development of parallel programs - or multiprograms as they prefer to call them. They accomplish this with a minimum of formal gear, i.e. with the predicate calculus and the well- established theory of Owicki and Gries. They show that the Owicki/Gries theory can be effectively put to work for the formal development of multiprograms, regardless of whether these algorithms are distributed or not.

Selected Writings on Computing A personal Perspective

Author: Edsger W. Dijkstra
Publisher: Springer Science & Business Media
ISBN: 9781461256953
Release Date: 2012-12-06
Genre: Computers

Since the summer of 1973, when I became a Burroughs Research Fellow, my life has been very different from what it had been before. The daily routine changed: instead of going to the University each day, where I used to spend most of my time in the company of others, I now went there only one day a week and was most of the time -that is, when not travelling!- alone in my study. In my solitude, mail and the written word in general became more and more important. The circumstance that my employer and I had the Atlantic Ocean between us was a further incentive to keep a fairly complete record of what I was doing. The public part of that output found its place in what became known as "the EWD series", which can be viewed as a form of scientific correspondence, possible since the advent of the copier. (That same copier makes it hard to estimate its actual distribution: I myself made about two dozen copies of my texts, but their recipients were welcome to act as further nodes of the distribution tree. ) The decision to publish a se1ection from the EWD series in book form was at first highly embarrassing, but as the months went by I got used to the idea. As soon as some guiding principles had been adopted -preferably not published elsewhere, as varied and as representative as possible, etc.

A Discipline of Software Engineering

Author: B. Walraet
Publisher: Elsevier
ISBN: 9781483294216
Release Date: 2014-06-28
Genre: Computers

This comprehensive approach to the creation of software systems charts a road through system modelling techniques, allowing software engineers to create software meeting two very basic requirements: • that the software system represent a narrow emulation of the organization system that served as its model; • and that the software system display life attributes identical to those of the organization system that it automatizes. The result is a quantum leap increase in software application quality. Such benefit is achieved by the introduction of a fundamental paradigm: the office-floor metaphor which incorporates such well-balanced basic ideas as the functional normalization of tasks and information (in sharp contrast to the classic data normalization) and the principle of tenant-ownership.

Predicate Calculus and Program Semantics

Author: Edsger W. Dijkstra
Publisher: Springer Science & Business Media
ISBN: 9781461232285
Release Date: 2012-12-06
Genre: Computers

This booklet presents a reasonably self-contained theory of predicate trans former semantics. Predicate transformers were introduced by one of us (EWD) as a means for defining programming language semantics in a way that would directly support the systematic development of programs from their formal specifications. They met their original goal, but as time went on and program derivation became a more and more formal activity, their informal introduction and the fact that many of their properties had never been proved became more and more unsatisfactory. And so did the original exclusion of unbounded nondeterminacy. In 1982 we started to remedy these shortcomings. This little monograph is a result of that work. A possible -and even likely- criticism is that anyone sufficiently versed in lattice theory can easily derive all of our results himself. That criticism would be correct but somewhat beside the point. The first remark is that the average book on lattice theory is several times fatter (and probably less self contained) than this booklet. The second remark is that the predicate transformer semantics provided only one of the reasons for going through the pains of publication.

Logic in Computer Science

Author: Michael Huth
Publisher: Cambridge University Press
ISBN: 9781139453059
Release Date: 2004-08-26
Genre: Computers

Recent years have seen the development of powerful tools for verifying hardware and software systems, as companies worldwide realise the need for improved means of validating their products. There is increasing demand for training in basic methods in formal reasoning so that students can gain proficiency in logic-based verification methods. The second edition of this successful textbook addresses both those requirements, by continuing to provide a clear introduction to formal reasoning which is both relevant to the needs of modern computer science and rigorous enough for practical application. Improvements to the first edition have been made throughout, with extra and expanded sections on SAT solvers, existential/universal second-order logic, micro-models, programming by contract and total correctness. The coverage of model-checking has been substantially updated. Further exercises have been added. Internet support for the book includes worked solutions for all exercises for teachers, and model solutions to some exercises for students.

Techniques of program structure and design

Author: Edward Yourdon
Publisher: Prentice Hall
ISBN: UOM:39015000479413
Release Date: 1975
Genre: Computers

Provides a practical explanation of modular and structural programming principles and techniques applicable to all major languages.

Elements of Programming

Author: Alexander A. Stepanov
Publisher: Addison-Wesley Professional
ISBN: 9780321635372
Release Date: 2009
Genre: Computers

New techniques for building more secure, reliable, high-performance software, from the renowned creator of the C++ STL • • A truly foundational book on the discipline of generic programming: how to write better software by mastering the development of abstract components. • Based on Alexander Stepanov's breakthrough lectures to programmers at Adobe and throughout Silicon Valley. • For serious software developers, architects, and engineers, the perfect complement to Knuth's theory and Stoustrup's practice. Elements of Programming is the next breakthrough book for serious practitioners seeking ways to write better software. In this book, Alexander Stepanov - the legendary architect and creator of the C++ Standard Template Libraries - focuses on the discipline that offers the greatest potential for improving contemporary software: the proper development of abstract components. Drawing on his enormously popular lectures to programmers at Adobe and throughout Silicon Valley, Stepanov illuminates crucial techniques of generic programming, specifically focusing on abstraction as the key to secure, reliable, and high-performance software. Together with co-author and ACM Fellow Paul McJones, Stepanov shows programmers how to use mathematics to compose reliable algorithms from components, and to design effective interfaces between algorithms and data structures. Topics covered in Elements of Programming include: transformations, associative operations, linear orderings, ordered algebraic structures, iterators, coordinates and coordinate structures, copying algorithms, rearrangement, sorting, and much more. This book requires an understanding of mathematics, but is consistently focused on identifying superior solutions to practical programming problems. Stepanov and McJones illuminate their concepts and techniques with C++ code, but the techniques are equally applicable to a wide range of contemporary object-oriented languages.

Semiotics of Programming

Author: Kumiko Tanaka-Ishii
Publisher: Cambridge University Press
ISBN: 9780521516556
Release Date: 2010-03-22
Genre: Computers

Considers what computers can and cannot do, analysing how computer sign systems compare to humans through a concept of reflexivity.