To get the free app, enter your mobile phone number.
More OCaml: Algorithms, Methods, and Diversions Paperback – August 26, 2014
|New from||Used from|
Windows 10 For Dummies Video Training
Get up to speed with Windows 10 with this video training course from For Dummies. Learn more.
Frequently Bought Together
Customers Who Bought This Item Also Bought
About the Author
If you buy a new print edition of this book (or purchased one in the past), you can buy the Kindle Edition for FREE. Print edition purchase must be sold by Amazon. Learn more.
For thousands of qualifying books, your past, present, and future print-edition purchases now lets you buy the Kindle edition for $2.99 or less. (Textbooks available for $9.99 or less.)
Top Customer Reviews
By the end of the book you should be able to understand how to write an OCaml program to generate PDF files, a non trivial problem whose solution exercises a pretty wide gamut of OCaml features and idioms.
After finishing this book you will probably find yourself asking a lot of questions about the language... that's because "MO" (as OFTVB before it) is an introductory book that does not go in depth about every detail of the language and its ecosystem. Depending on were you are in your journey of learning OCaml that could actually be a good thing.
Building on the ground work of « OCaml from the very Beginning », the book introduces a few new language level concepts: laziness, records, labelled arguments and starts to introduce some elements of the module system. Regarding the latter there is no treatment of functors yet, which only raises the hopes that the book series is not over.
As its subtitle hints, the book is not only about OCaml but also about programming techniques. Using engaging examples – but without falling in the trap of only teaching how to deal with the latest technological fad – the book also unknowingly instructs you how to design data structures and programs using a non-dogmatic mix of imperative and functional programming techniques. Writing codecs, compressing data, searching data, implementing and comparing a set data structure using different approaches, analyzing the rules of a game through its game trees are a few examples of the tasks that are addressed. The book ends by showing how to generate and typeset PDFs from scratch, a topic the www can be surprisingly quiet about when one considers the widespread usage of the file format.
The book starts with a handy summary of OCaml, enough to get started right away. The first half of the book walks the reader through a series of chapters introducing language features (lists, user-defined datatypes, records, labels, modules) by way of applied examples and exercises. The second half of the book covers an extended example of PDF generation, that gives a glimpse inside the PDF format. Throughout the book, useful part of the standard library are covered.
I found the exposition very pragmatic (with a mix of imperative and functional techniques) and effective. The programs used as example and exercises are fun and challenging. Extending and running programs that exercise new knowledge is very enlightening and empowering.
All exercises come with hints and answers, and all the code is available online, there is even a section, at the end, documenting common error messages.
I heartily recommend this book to anybody willing to start learning OCaml, it is the best on-ramp to more advanced material.