Description
The book presents the mathematical view and tools of computer programming with broad and friendly context. It explains the basic concepts such as recursion, computation model, types, data, and etc. The book serves as an introductory and reference guide to the engineers, students, researchers, and professionals who are interested in functional programming, type system, and computer programming languages.
The book covers seven topics. Firstly, it lays out the number system based on Peano Axioms and demonstrates the isomorphic computer data structures. Then, it introduces Lambda calculus as a computing model and recursion, an important programming structure, with the Y-combinator. It next presents the basic abstract algebra, including group and fields, and provides a friendly introduction to Galois theory. After that, it uses category theory as a tool to explain several concepts in computer programming, including the type system, polymorphism, null handler, and recursive data types, then followed by an application of program optimization. In the last two chapters, the author shows how to program with the concept of infinity through stream and lazy evaluation, and then explains the naive set theory and transfinite numbers, from which the logic paradox arises. Finally, it introduces four historical views of mathematical foundation, as well as Goedel's incompleteness theorems developed in 1930s, and how they define the boundaries of computer programming. Additionally, the book provides biographies, stories, and anecdotes of 25 mathematicians, along with over 130 exercises and their corresponding answers.
About the Author
Xinyu Liu is a senior manager in the software engineering team at Amazon, where he leads to build multiple distribution software systems for fulfilment and supply-chain technology. He graduated and received his master degree from Tsinghua University in 2002. His main interests are functional algorithm and data structures, mathematics, and logic foundations of programming.
Book Information
ISBN 9789819724314
Author Xinyu Liu
Format Paperback
Page Count 383
Imprint Springer Nature
Publisher Springer Verlag, Singapore