Foundations of Computer Science
by Lawrence C Paulson
Publisher: University of Cambridge 2000
Number of pages: 155
This text teaches programming and presents some fundamental principles of computer science, especially algorithm design. The programming in this course is based on the language ML and mostly concerns the functional programming style. The course also covers basic methods for estimating efficiency.
Home page url
Download or read it online for free here:
This book aims to be a comprehensive source for any developer who is interested in programming for the Windows platform. The reader is assumed to have a previous knowledge of the programming languages involved: C, C++, and Visual Basic.
by Peter Van Roy, Seif Haridi - The MIT Press
Covered topics: concurrency, state, distributed programming, constraint programming, formal semantics, declarative concurrency, message-passing concurrency, forms of data abstraction, building GUIs, transparency approach to distributed programming.
by Jon Bentley - Addison-Wesley Professional
The book focuses on choosing the right algorithms and on showing how to solve problems effectively. Each chapter frames a particular programming task (sorting numbers, creating anagrams, counting the words). Code examples are written in C and C++.
by Robert M. Keller - Harvey Mudd College
This book is intended for a second course in computer science, one emphasizing principles wherever it seems possible. It is not limited to programming, it attempts to use various programming models to explicate principles of computational systems.