Enter your mobile number or email address below and we'll send you a link to download the free Kindle App. Then you can start reading Kindle books on your smartphone, tablet, or computer - no Kindle device required.

  • Apple
  • Android
  • Windows Phone
  • Android

To get the free app, enter your mobile phone number.

  • List Price: $38.00
  • Save: $3.80 (10%)
Only 18 left in stock (more on the way).
Ships from and sold by Amazon.com. Gift-wrap available.
The Reasoned Schemer (MIT... has been added to your Cart
+ $3.99 shipping
Used: Very Good | Details
Sold by home of books
Condition: Used: Very Good
Trade in your item
Get a $5.27
Gift Card.
Have one to sell? Sell on Amazon
Flip to back Flip to front
Listen Playing... Paused   You're listening to a sample of the Audible audio edition.
Learn more
See all 3 images

The Reasoned Schemer (MIT Press) Paperback – October 14, 2005

3.5 out of 5 stars 15 customer reviews

See all 5 formats and editions Hide other formats and editions
New from Used from
"Please retry"
"Please retry"
$19.99 $17.39
Free Two-Day Shipping for College Students with Prime Student Free%20Two-Day%20Shipping%20for%20College%20Students%20with%20Amazon%20Student

ITPro.TV Video Training
Take advantage of IT courses online anywhere, anytime with ITPro.TV. Learn more.
$34.20 FREE Shipping. Only 18 left in stock (more on the way). Ships from and sold by Amazon.com. Gift-wrap available.
click to open popover

Frequently Bought Together

  • The Reasoned Schemer (MIT Press)
  • +
  • The Seasoned Schemer (MIT Press)
  • +
  • The Little Schemer - 4th Edition
Total price: $108.20
Buy the selected items together

Editorial Reviews


Contrary to popular belief, logic programming doesn't always mean programming in Prolog. In this groundbreaking book, Friedman and Kiselyov extend Scheme to form a completely new kind of logic programming system, one which is in many ways even more elegant than Prolog. Written in the same classic question-and-answer format as the authors' previous book The Little Schemer, The Reasoned Schemer covers goals, first-class relations, interleaved and non-interleaved backtracking, the relationship between relational and functional programming, and much more. Reading this book will not only cause your geek rating to skyrocket and impress all the Cool Kids, it will also open your eyes to a paradigm of programming which most programmers are completely unaware of, but which will undoubtedly play a significant role in the programming systems of the future. More importantly, though, this book is great fun to read and will make you a better programmer.

(Michael Vanier, Caltech)

About the Author

William E. Byrd is a PhD candidate in Computer Science at Indiana University.

Oleg Kiselyov is a computer scientist from Monterey, California.


The latest book club pick from Oprah
"The Underground Railroad" by Colson Whitehead is a magnificent novel chronicling a young slave's adventures as she makes a desperate bid for freedom in the antebellum South. See more

Product Details

  • Series: MIT Press
  • Paperback: 176 pages
  • Publisher: The MIT Press (October 14, 2005)
  • Language: English
  • ISBN-10: 0262562146
  • ISBN-13: 978-0262562140
  • Product Dimensions: 6.9 x 0.4 x 9 inches
  • Shipping Weight: 8 ounces (View shipping rates and policies)
  • Average Customer Review: 3.5 out of 5 stars  See all reviews (15 customer reviews)
  • Amazon Best Sellers Rank: #421,962 in Books (See Top 100 in Books)

Customer Reviews

Top Customer Reviews

Format: Paperback
I'm a long-time fan of the "Schemer" series of books and was excited to receive my preordered copy of "The Reasoned Schemer" yesterday- It was supposed to be published in July but must have been held up until now...

I have no relationship with any of the authors and just want to put my $0.02 in on it, since not many others may have a copy yet- I think it is absolutely FANTASTIC so far!

The book itself is very much in the same style as the rest of the "Schemers"- A Q&A style of exposition that helps your brain to absorb most of the essence of a new programming style without having to spend the time to write tons of actual code yourself to learn the basic philosophy.

The main purpose of the book is to attach a set of logic programming commands to the core R5RS scheme that allow you to implement all kinds of cool things, such as constraint programming, pattern matching, nondeterministic programming, and PROLOG-like logical reasoning. The material covered is not too dissimilar from the material in the back of "On Lisp" or some parts of SICP. What distinguishes it is that the implementation used has been widdled down to its bare essence and uses a syntax modeled on standard FP scheme syntax. Plus, the subject matter is treated with a certain academic rigor that gives these new commands the feeling of a practical toolset instead of just a clever novelty. I could imagine incorporating these commands into my regular scheme code...

As I mentioned, there is a list of new mysterious scheme commands that enable the logic reasoning abilities- They look superficially like the standard FP commands in scheme, but behave slightly different- They have names such as "conde", "caro", etc.
Read more ›
1 Comment 51 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback Verified Purchase
As the saying goes, if you like this sort of thing, this is the sort of thing you'll like. The authors have extended the approach of their classic book _The Little Schemer_ to encompass what is usually called logic programming, but which they refer to as "relational programming" (a much better name, in my opinion). They extend the Scheme language with relational analogues of many constructs, notably lambda and cond (in many, many variations), and also provide extended versions of standard Scheme operations like cons, car, and cdr. Basically, the relational approach involves taking the result of a function call and making it just another argument, but a special argument that can get assigned to as the result of the computation. Big deal, so what? you ask. The important thing is that _all_ of the function arguments behave this way, so that you can specify the result of a function (relation) and ask the system to generate the arguments. For instance, instead of saying 2 + 2 = X and figuring out what X is, you can say X + 2 = 4 and the system will figure out what X has to be (in this case... ummm... oh yeah, 2). To do this, the system uses a mechanism called "backtracking" which systematically tries alternatives until it either finds the answer, gives up, or (if you didn't program the search right) goes on forever. If you haven't seen this style of programming before, this book will definitely open your eyes.

The relational/logic programming style is usually learned by studying the Prolog language, which is how I learned it (though I'm no expert). Having a knowledge of Prolog will definitely make this book easier to understand, although the approach given here is more modern than Prolog in several ways.
Read more ›
Comment 24 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse
Format: Paperback
Fans of the "Little Books" (The Little Schemer - 4th Edition, The Seasoned Schemer) will find an interesting introduction to logic programming here. I found "The Reasoned Schemer" unique in that it has no preconceptions of logic programming being "special." It dives right into the subject! If you know some rudimentary Scheme or Lisp you will start "thinking logically" without even being introduced to old fashioned terms like "backtracking" or "cuts" (or, for over a hundred pages, even "unification").

Some readers might object to the books use of a coding style that is not executable Scheme. To my surprise I found the source format a great help to readability. Translating the text into executable Scheme code was effortless even though the book assumes that you will figure how to run the code for yourself (search engines and a little experimentation should quickly lead you to miniKanren). Probably the weakest part of the book is an overly long and tedious development of a system of arithmetic, but that example does demonstrate how far logic programs can go. I was somewhat alarmed by the incredibly terse implementation note at the end of the book. I'd be surprised if most readers would just "get" the implementation strategy.

While I enjoyed working through this book I had the nagging suspicion that it might not be the introduction to logic programming I would personally recommend.
Read more ›
Comment 10 people found this helpful. Was this review helpful to you? Yes No Sending feedback...
Thank you for your feedback.
Sorry, we failed to record your vote. Please try again
Report abuse

Most Recent Customer Reviews

Set up an Amazon Giveaway

The Reasoned Schemer (MIT Press)
Amazon Giveaway allows you to run promotional giveaways in order to create buzz, reward your audience, and attract new followers and customers. Learn more about Amazon Giveaway
This item: The Reasoned Schemer (MIT Press)