FreeComputerBooks.com
Links to Free Computer, Mathematics, Technical Books all over the World
|
|
- Title: Elements of Programming
- Author(s) Alexander Stepanov and Paul McJones
- Publisher: Semigroup Press (June 27, 2019)
- Permission: Link to the Book's Homepage
- Paperback: 280 pages
- eBook: PDF, LaTex, YouTube
- Language: English
- ISBN-10: 0578222140
- ISBN-13: 978-0578222141
- Share This:
This book provides a different understanding of programming than is presented elsewhere. Its major premise is that practical programming, like other areas of science and engineering, must be based on a solid mathematical foundation.
The book shows that algorithms implemented in a real programming language, such as C++, can operate in the most general mathematical setting. For example, the fast exponentiation algorithm is defined to work with any associative operation. Using abstract algorithms leads to efficient, reliable, secure, and economical software.
About the Authors- Alexander Stepanov is a Russian computer programmer, best known as an advocate of generic programming and as the primary designer and implementer of the C++ Standard Template Library,[1] which he started to develop around 1992 while employed at HP Labs.
- Paul McJones studied engineering mathematics at the University of California, Berkeley, from 1967 to 1971. He has been programming since 1967 in the areas of operating systems, programming environments, transaction processing systems, and enterprise and consumer applications. He has been employed by the University of California, IBM, Xerox, Tandem, Digital Equipment Corporation, and Adobe Systems.
- Computer Programming
- Functional Programming and Lambda
- C++ Programming
- Object-Oriented Analysis, Design and Programming (OOD/OOP)
- Elements of Programming (Alexander Stepanov, et al.)
- The Mirror Site (1) - PDF
- The Mirror Site (2) - PDF
-
Programming Fundamentals - A Modular Structured Approach
This book is an introduction to computer programming using any of a variety of programming languages, including C++, C#, Java, JavaScript, Python, and Swift, for writing programmes, and to solid, fundamental programming principles.
-
A Practical Theory of Programming (Eric C.R. Hehner)
This book explores aspects of programming that are amenable to mathematical proof. The author describes a programming theory which is much simpler and more comprehensive than the current theories to date.
-
Structure and Interpretation of Computer Programs using JavaScript
This book introduces the reader to central ideas of computation by establishing a series of mental models for computation. It has had a dramatic impact on computer science curricula over the past decades. Examples are implemented using the JavaScript.
-
How to Design Programs: An Introduction to Programming
This introduction to programming places computer science at the core of a liberal arts education. Unlike other introductory books, it focuses on the program design process, presenting program design guidelines.
-
Software Design for Flexibility: Avoid Programming into a Corner
This book describes techniques they have found effective--over their combined 100-plus years of programming experience--that will help programmers avoid programming themselves into corners.
-
Isomorphism - Mathematics of Programming (Xinyu Liu)
This book introduces the mathematics behind computer programming. It intents to tell: programming is isomorphic to mathematics. Just like in art and music, there are interesting stories and mathematicians behind the great minds.
-
Structure and Interpretation of Computer Programs, 2nd Edition
This book has had a dramatic impact on computer science curricula over the past decade. This long-awaited revision contains changes throughout the text. Examples are implemented using the Scheme dialect of Lisp.
-
Exploratory Programming for the Arts and Humanities
This book introduces programming to readers involved with the arts and humanities; there are no prerequisites, and no previous knowledge of programming is assumed. It reveals programming can also be a tool for sketching, brainstorming, and inquiry.
-
Programming Persistent Memory: A Comprehensive Guide
The book explains fundamental concepts, provides an introduction to Persistent Memory programming APIs for C, C++, JavaScript, and other languages, discusses RMDA with persistent memory; reviews security features; and presents many examples.
-
Answer Set Programming (Vladimir Lifschitz)
This book book will introduce the reader to the theory and practice of Answer Set Programming (ASP). It will include numerous examples of ASP programs and present the mathematical theory that ASP is based on, and exercises with complete solutions.
-
Aesthetic Programming: A Handbook of Software Studies
The book explores the technical as well as cultural imaginaries of programming from its insides, introduces and demonstrates the reflexive practice of aesthetic programming, engaging with learning to program as a way to understand and question.
-
Competitive Programmer's Handbook (Antti Laaksonen)
The purpose of this book is to give you a thorough introduction to competitive programming. It is assumed that you already know the basics of programming, but no previous background in competitive programming is needed.
-
Principles of Algorithmic Problem Solving (Johan Sannemo)
The algorithmic approach to solving problems in computer technology is an essential tool. This book presents a readable, entertaining, and energetic book that will motivate and challenge students to open their minds to the algorithmic nature of problem solving.
-
The Black Art of Programming (Mark McIlroy)
This book is an introduction to computer programming. It covers the essential information of a Computer Science course. It is recommended for beginners and intermediate programmers.
:
|
|