"Principles of Computer Science is an invigorating and rapid adventure that covers core introductory theoretical computer science topics, including discrete mathematics, logic, programming languages, and programming language pragmatics. Readers dive deep into the syntax and semantics of constructing a small yet usable programming language (interpreter) containing paradigms from functional and non-functional programming. Additionally, users will gain an understanding of compilation by writing functions that translate code written in their high-level language down to low-level machine language. Moreover, Crotts provides a perspective on event-driven programming, memory management via garbage collection, and much more. Principles of Computer Science assumes no prior programming experience-all topics are taught from scratch, making this a highly approachable and inclusive textbook"--.
Principles of Computer Science : An Invigorating, Hands-On Approach