A Practical Theory of Programming
Title | A Practical Theory of Programming PDF eBook |
Author | Eric C.R. Hehner |
Publisher | Springer Science & Business Media |
Total Pages | 257 |
Release | 2012-09-08 |
Genre | Computers |
ISBN | 1441985964 |
There are several theories of programming. The first usable theory, often called "Hoare's Logic", is still probably the most widely known. In it, a specification is a pair of predicates: a precondition and postcondition (these and all technical terms will be defined in due course). Another popular and closely related theory by Dijkstra uses the weakest precondition predicate transformer, which is a function from programs and postconditions to preconditions. lones's Vienna Development Method has been used to advantage in some industries; in it, a specification is a pair of predicates (as in Hoare's Logic), but the second predicate is a relation. Temporal Logic is yet another formalism that introduces some special operators and quantifiers to describe some aspects of computation. The theory in this book is simpler than any of those just mentioned. In it, a specification is just a boolean expression. Refinement is just ordinary implication. This theory is also more general than those just mentioned, applying to both terminating and nonterminating computation, to both sequential and parallel computation, to both stand-alone and interactive computation. And it includes time bounds, both for algorithm classification and for tightly constrained real-time applications.
Practical Foundations for Programming Languages
Title | Practical Foundations for Programming Languages PDF eBook |
Author | Robert Harper |
Publisher | Cambridge University Press |
Total Pages | 513 |
Release | 2016-04-04 |
Genre | Computers |
ISBN | 1107150302 |
This book unifies a broad range of programming language concepts under the framework of type systems and structural operational semantics.
Structured Programming, Theory and Practice
Title | Structured Programming, Theory and Practice PDF eBook |
Author | Richard C. Linger |
Publisher | Addison Wesley Publishing Company |
Total Pages | 424 |
Release | 1979 |
Genre | Computers |
ISBN |
Precision programming. Elements of logical expression. Elements of program expression. Structured programs. Reading structured programs. The correctness of structured programs. Writing structured programs.
Theories of Programming Languages
Title | Theories of Programming Languages PDF eBook |
Author | John C. Reynolds |
Publisher | Cambridge University Press |
Total Pages | 514 |
Release | 1998-10-13 |
Genre | Computers |
ISBN | 1139936255 |
First published in 1998, this textbook is a broad but rigourous survey of the theoretical basis for the design, definition and implementation of programming languages and of systems for specifying and proving programme behaviour. Both imperative and functional programming are covered, as well as the ways of integrating these aspects into more general languages. Recognising a unity of technique beneath the diversity of research in programming languages, the author presents an integrated treatment of the basic principles of the subject. He identifies the relatively small number of concepts, such as compositional semantics, binding structure, domains, transition systems and inference rules, that serve as the foundation of the field. Assuming only knowledge of elementary programming and mathematics, this text is perfect for advanced undergraduate and beginning graduate courses in programming language theory and also will appeal to researchers and professionals in designing or implementing computer languages.
Modern Programming Languages
Title | Modern Programming Languages PDF eBook |
Author | Adam Brooks Webber |
Publisher | Franklin Beedle & Associates |
Total Pages | 0 |
Release | 2003 |
Genre | Programming languages (Electronic computers) |
ISBN | 9781887902762 |
Typical undergraduate CS/CE majors have a practical orientation: they study computing because they like programming and are good at it. This book has strong appeal to this core student group. There is more than enough material for a semester-long course. The challenge for a course in programming language concepts is to help practical ......
Hands on Programming with Python
Title | Hands on Programming with Python PDF eBook |
Author | Jose María Alvarez Rodríguez |
Publisher | |
Total Pages | 436 |
Release | 2020-07 |
Genre | |
ISBN |
In this book, programming concepts are theoretically introduced and explained. Then, their application is presented in the context of a programming language (Python) to finally introduce examples of use. The learning methodology is based on a four-stage method (problem statement, concept, Python implementation and examples of use) helping to solve the 5 W's + How questions when learning a new programming language from scratch. In terms of learning methodology, the first ten chapters corresponds to the theoretical concepts that are complemented with more than 200 examples and exercises in the Lab-x chapters. Furthermore, all contents are also publicly available as Jupyter notebooks and other complementary materials such as Kahoot! Quizzes have also been designed to establish an active learning methodology encouraging a blended and self-paced learning process.
Category Theory for Programmers (New Edition, Hardcover)
Title | Category Theory for Programmers (New Edition, Hardcover) PDF eBook |
Author | Bartosz Milewski |
Publisher | |
Total Pages | |
Release | 2019-08-24 |
Genre | |
ISBN | 9780464243878 |
Category Theory is one of the most abstract branches of mathematics. It is usually taught to graduate students after they have mastered several other branches of mathematics, like algebra, topology, and group theory. It might, therefore, come as a shock that the basic concepts of category theory can be explained in relatively simple terms to anybody with some experience in programming.That's because, just like programming, category theory is about structure. Mathematicians discover structure in mathematical theories, programmers discover structure in computer programs. Well-structured programs are easier to understand and maintain and are less likely to contain bugs. Category theory provides the language to talk about structure and learning it will make you a better programmer.