(computationbook.com) Understanding Computation

ROAM_REFS: https://computationbook.com/

** From Simple Machines to Impossible Programs

* by Tom Stuart

Buy from O'Reilly Buy from Amazon (US) Buy from Amazon (UK)

Download sample chapter Browse example code View errata

Now available in Japanese and Chinese!

Hello! Understanding Computation is (I hope) a fun and interesting book about computation theory, with explanations written in real Ruby code instead of mathematical notation. It contains old, deep ideas from theoretical computer science, deconstructed and explained in an engaging, practical way for an audience of working programmers without assuming any academic background.

The focus is on answering questions about computation and the fundamental mechanics of programming languages: how do they really work? what can they really do? what do the programs we write in them really mean? The book's full of pragmatic explorations of these questions, demonstrated with real code and meaningful examples in a familiar language.

These are foundational concepts that you'll wish you'd always known, digested and presented in a way that makes sense; universal truths which are interesting in their own right, but which also give you a better understanding of the way you do your job and the limitations of what's possible.

Over the course of the book, you will:

To find out more, please check out the table of contents, download a sample chapter, read what people are saying on Twitter, watch some related videos, download the example code, and get in touch with any questions or comments.

Local Graph

org-roam 0922fa74-c7b0-44ea-a455-e5c3e6ce5971 (computationbook.com) Understanding C... //codon.com/ http://codon.com/ 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//codon.com/ //shop.oreilly.com/product/0636920025481.do http://shop.oreilly.com/product/0636920025481.do 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//shop.oreilly.com/product/0636920025481.do //www.amazon.com/dp/1449329276 http://www.amazon.com/dp/1449329276 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//www.amazon.com/dp/1449329276 //www.amazon.co.uk/dp/1449329276 http://www.amazon.co.uk/dp/1449329276 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//www.amazon.co.uk/dp/1449329276 //computationbook.com/sample https://computationbook.com/sample 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//computationbook.com/sample //computationbook.com/code https://computationbook.com/code 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//computationbook.com/code //computationbook.com/errata https://computationbook.com/errata 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//computationbook.com/errata //www.oreilly.co.jp/books/9784873116976/ http://www.oreilly.co.jp/books/9784873116976/ 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//www.oreilly.co.jp/books/9784873116976/ //books.gotop.com.tw/o_A462 http://books.gotop.com.tw/o_A462 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//books.gotop.com.tw/o_A462 //www.ruby-lang.org/ http://www.ruby-lang.org/ 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//www.ruby-lang.org/ //github.com/tomstuart/computationbook/tree/master/the_meaning_of_programs/small_step https://github.com/tomstuart/computationbook/tree/master/the_meaning_of_programs/small_step 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/the_meaning_of_programs/small_step //github.com/tomstuart/computationbook/tree/master/the_meaning_of_programs/big_step https://github.com/tomstuart/computationbook/tree/master/the_meaning_of_programs/big_step 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/the_meaning_of_programs/big_step //github.com/tomstuart/computationbook/tree/master/the_meaning_of_programs/denotational https://github.com/tomstuart/computationbook/tree/master/the_meaning_of_programs/denotational 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/the_meaning_of_programs/denotational //github.com/tomstuart/computationbook/tree/master/the_simplest_computers/finite_automata https://github.com/tomstuart/computationbook/tree/master/the_simplest_computers/finite_automata 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/the_simplest_computers/finite_automata //github.com/tomstuart/computationbook/tree/master/just_add_power https://github.com/tomstuart/computationbook/tree/master/just_add_power 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/just_add_power //github.com/tomstuart/computationbook/tree/master/the_ultimate_machine https://github.com/tomstuart/computationbook/tree/master/the_ultimate_machine 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/the_ultimate_machine //github.com/tomstuart/computationbook/tree/master/the_simplest_computers/regular_expressions https://github.com/tomstuart/computationbook/tree/master/the_simplest_computers/regular_expressions 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/the_simplest_computers/regular_expressions //github.com/tomstuart/computationbook/blob/master/just_add_power/lexical_analyzer.rb https://github.com/tomstuart/computationbook/blob/master/just_add_power/lexical_analyzer.rb 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/blob/master/just_add_power/lexical_analyzer.rb //github.com/tomstuart/computationbook/tree/master/programming_with_nothing/fizzbuzz https://github.com/tomstuart/computationbook/tree/master/programming_with_nothing/fizzbuzz 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/programming_with_nothing/fizzbuzz //github.com/tomstuart/computationbook/tree/master/programming_with_nothing/lambda_calculus https://github.com/tomstuart/computationbook/tree/master/programming_with_nothing/lambda_calculus 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/programming_with_nothing/lambda_calculus //github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/partial_recursive_functions https://github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/partial_recursive_functions 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/partial_recursive_functions //github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/ski_calculus https://github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/ski_calculus 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/ski_calculus //github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/iota https://github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/iota 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/iota //github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/tag_systems https://github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/tag_systems 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/tag_systems //github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/cyclic_tag_systems https://github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/cyclic_tag_systems 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/universality_is_everywhere/cyclic_tag_systems //vimeo.com/66863570#at=13m40s http://vimeo.com/66863570#at=13m40s 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//vimeo.com/66863570#at=13m40s //codon.com/impossible-programs http://codon.com/impossible-programs 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//codon.com/impossible-programs //github.com/tomstuart/computationbook/tree/master/programming_in_toyland/types https://github.com/tomstuart/computationbook/tree/master/programming_in_toyland/types 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//github.com/tomstuart/computationbook/tree/master/programming_in_toyland/types //computationbook.com/contents https://computationbook.com/contents 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//computationbook.com/contents //computationbook.com/buzz https://computationbook.com/buzz 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//computationbook.com/buzz //computationbook.com/extras https://computationbook.com/extras 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//computationbook.com/extras //computationbook.com/discuss https://computationbook.com/discuss 0922fa74-c7b0-44ea-a455-e5c3e6ce5971->//computationbook.com/discuss 2a07e4ea-610b-4c9a-bb84-d961fb2450e5 Code and Coffee Book Club 2a07e4ea-610b-4c9a-bb84-d961fb2450e5->0922fa74-c7b0-44ea-a455-e5c3e6ce5971