Understanding Computation

Understanding Computation : Impossible Code and the Meaning of Programs

4.2 (203 ratings by Goodreads)
By (author) 

Free delivery worldwide

Available. Dispatched from the UK in 2 business days
When will my order arrive?


Finally, you can learn computation theory and programming language design in an engaging, practical way. Understanding Computation explains theoretical computer science in a context you'll recognize, helping you appreciate why these ideas matter and how they can inform your day-to-day programming. Rather than use mathematical notation or an unfamiliar academic programming language like Haskell or Lisp, this book uses Ruby in a reductionist manner to present formal semantics, automata theory, and functional programming with the lambda calculus. It's ideal for programmers versed in modern languages, with little or no formal training in computer science.
Understand fundamental computing concepts, such as Turing completeness in languages Discover how programs use dynamic semantics to communicate ideas to machines Explore what a computer can do when reduced to its bare essentials Learn how universal Turing machines led to today's general-purpose computers Perform complex calculations, using simple languages and cellular automata Determine which programming language features are essential for computation Examine how halting and self-referencing make some computing problems unsolvable Analyze programs by using abstract interpretation and type systems
show more

Product details

  • Paperback | 275 pages
  • 177.8 x 223.52 x 20.32mm | 453.59g
  • O'Reilly Media, Inc, USA
  • Sebastopol, United States
  • English
  • black & white illustrations
  • 1449329276
  • 9781449329273
  • 240,756

About Tom Stuart

Tom is chief scientist at Expert Human. He is an experienced, passionate computer scientist and programmer. He work as a freelance consultant, mentor and trainer, helping all kinds of companies to improve the quality and clarity of their approach to creating software products, usually on the web. Sometimes this means spending a month writing code for them; at other times it means encouraging them to rethink their product, re-educate their teams, rewrite their tests, or ruthlessly refactor their code. He has lectured on compilers at the University of Cambridge, helped organize the Ru3y Manor conference, and is a member and speaker of the London Ruby User Group.
show more

Rating details

203 ratings
4.2 out of 5 stars
5 41% (84)
4 40% (82)
3 16% (32)
2 2% (5)
1 0% (0)
Book ratings by Goodreads
Goodreads is the world's largest site for readers with over 50 million reviews. We're featuring millions of their reader ratings on our book pages to help you find your new favourite book. Close X