Real World Haskell: Code You Can Believe In
4/5
()
Currently unavailable
Currently unavailable
About this ebook
This easy-to-use, fast-moving tutorial introduces you to functional programming with Haskell. You'll learn how to use Haskell in a variety of practical ways, from short scripts to large and demanding applications. Real World Haskell takes you through the basics of functional programming at a brisk pace, and then helps you increase your understanding of Haskell in real-world issues like I/O, performance, dealing with data, concurrency, and more as you move through each chapter.
Related to Real World Haskell
Related ebooks
Calculus DeMYSTiFieD, Second Edition Rating: 3 out of 5 stars3/5J2EE Open Source Toolkit: Building an Enterprise Platform with Open Source Tools (Java Open Source Library) Rating: 0 out of 5 stars0 ratingsParallel Computing Rating: 0 out of 5 stars0 ratingsArchitecting Enterprise Solutions: Patterns for High-Capability Internet-based Systems Rating: 2 out of 5 stars2/5C++ Demystified Rating: 3 out of 5 stars3/5Enterprise Java with UML Rating: 3 out of 5 stars3/5Functional Programming in Scala Rating: 4 out of 5 stars4/5Data Mining with SQL Server 2005 Rating: 0 out of 5 stars0 ratingsService-Oriented Computing: Semantics, Processes, Agents Rating: 3 out of 5 stars3/5PHP Programming Solutions Rating: 0 out of 5 stars0 ratingsParallel and High Performance Computing Rating: 0 out of 5 stars0 ratingsComputer Programming Languages in Practice: Made Simple Computerbooks Rating: 5 out of 5 stars5/5Mechnsm&Mec Dvc Srcbk 5E (PB) Rating: 4 out of 5 stars4/5UML Demystified Rating: 0 out of 5 stars0 ratingsExcel VBA Macro Programming Rating: 0 out of 5 stars0 ratingsSchaum's Easy Outline of Precalculus Rating: 0 out of 5 stars0 ratingsMastering Data Warehouse Design: Relational and Dimensional Techniques Rating: 4 out of 5 stars4/5Modern Java in Action: Lambdas, streams, functional and reactive programming Rating: 0 out of 5 stars0 ratingsComplex Variables Demystified Rating: 3 out of 5 stars3/5You Can Program in C++: A Programmer's Introduction Rating: 0 out of 5 stars0 ratingsXML for Data Architects: Designing for Reuse and Integration Rating: 5 out of 5 stars5/5A Simple Introduction to Data and Activity Analysis Rating: 0 out of 5 stars0 ratingsPalm Enterprise Applications: A Wiley Tech Brief Rating: 0 out of 5 stars0 ratingsForex Shockwave Analysis Rating: 0 out of 5 stars0 ratingsLogic DeMYSTiFied Rating: 0 out of 5 stars0 ratingsMATLAB Demystified Rating: 5 out of 5 stars5/5Beginning Rust: From Novice to Professional Rating: 0 out of 5 stars0 ratingsHandheld Usability Rating: 4 out of 5 stars4/5Schaum's Outline of Programming with C++ Rating: 0 out of 5 stars0 ratingsHow to Build a Business Rules Engine: Extending Application Functionality through Metadata Engineering Rating: 3 out of 5 stars3/5
Software Development & Engineering For You
Python For Dummies Rating: 4 out of 5 stars4/5Software Engineering: Architecture-driven Software Development Rating: 4 out of 5 stars4/5Beginning C++ Programming Rating: 3 out of 5 stars3/5Adobe Illustrator CC For Dummies Rating: 5 out of 5 stars5/5How Do I Do That In InDesign? Rating: 5 out of 5 stars5/5DevOps For Dummies Rating: 4 out of 5 stars4/5Hand Lettering on the iPad with Procreate: Ideas and Lessons for Modern and Vintage Lettering Rating: 4 out of 5 stars4/5Lua Game Development Cookbook Rating: 0 out of 5 stars0 ratingsHow Do I Do That in Photoshop?: The Quickest Ways to Do the Things You Want to Do, Right Now! Rating: 4 out of 5 stars4/5Learn to Code. Get a Job. The Ultimate Guide to Learning and Getting Hired as a Developer. Rating: 5 out of 5 stars5/5Level Up! The Guide to Great Video Game Design Rating: 4 out of 5 stars4/5PYTHON: Practical Python Programming For Beginners & Experts With Hands-on Project Rating: 5 out of 5 stars5/5Ry's Git Tutorial Rating: 0 out of 5 stars0 ratingsGrokking Algorithms: An illustrated guide for programmers and other curious people Rating: 4 out of 5 stars4/5iPhone Application Development For Dummies Rating: 4 out of 5 stars4/5Beginning Programming For Dummies Rating: 4 out of 5 stars4/5How to Write Effective Emails at Work Rating: 4 out of 5 stars4/5Learning R Programming Rating: 5 out of 5 stars5/5Reversing: Secrets of Reverse Engineering Rating: 4 out of 5 stars4/5Modern C++ for Absolute Beginners: A Friendly Introduction to C++ Programming Language and C++11 to C++20 Standards Rating: 0 out of 5 stars0 ratingsiOS App Development For Dummies Rating: 0 out of 5 stars0 ratingsOneNote: The Ultimate Guide on How to Use Microsoft OneNote for Getting Things Done Rating: 1 out of 5 stars1/5Git Essentials Rating: 4 out of 5 stars4/5Good Code, Bad Code: Think like a software engineer Rating: 5 out of 5 stars5/5Debugging: The 9 Indispensable Rules for Finding Even the Most Elusive Software and Hardware Problems Rating: 4 out of 5 stars4/5Android App Development For Dummies Rating: 0 out of 5 stars0 ratings
Reviews for Real World Haskell
44 ratings2 reviews
- Rating: 3 out of 5 stars3/5Real World Haskell does a good job of introducing Haskell. It tries to show that Haskell has use in real world applications, and while I'm sure it does, in my opinion there are a lot of better choices for real world applications than Haskell. The learning curve for Haskell is very very steep and until you make it up that hill, most of your development efforts are focused on getting the type system setup and correct for your application. Personally I'd rather focus my efforts on code that has results - like getting the GUI working or returning database results - rather than deciding which monads my type class will implement.
- Rating: 4 out of 5 stars4/5Finally done! I started reading this book before it was published. I stalled out several times, and restarted from the beginning, so some parts have been read 3 or 4 times. Eventually it became a proxy for learning Haskell. So it's hard to say I'm done.
I contributed a lot of stupid comments to the first several introductory chapters, and hopefully made them better. The book was reviewed on the web by many people, in a rather unique way, and I'm one of many proud to be listed as a reviewer in the book.
The first several chapters are a good introduction. I didn't really develop the ability to evaluate nontrivial haskell code by reading them though, and that made it much harder for me later. (I also didn't really do the exercises, which probably didn't help with this.)
I got stuck around chapter 6, on typeclasses. The explanation didn't stick well, and I struggled especially with the multiple different namespaces used in typeclasses, often with a single Word being defined in more than one. Also with polymorphic types. Hard to tell if this was the book's problem or my own.
The chapter on IO wisely comes before monads, and this works quite well.
But, the development of monads used in the book didn't work for me. Part of the problem is that the example code that is used to motivate monads is tangled up in a chapter that involves parsing PGM image files. The monad-free code written to do this was clearly not the right way, but I also found it so incomprehensible, with my poor grasp of the syntax, and relating to such boring subject matter that it was hard to get through.
Similarly, arrays and maps are buried in a chapter that develops a barcode parser. While quite an impressive thing to put in this book, I wonder if that is somehow too impressive to expect readers to wade through while still shakey in syntax and foundations. (And, similarly, getopt is only explained in the last chapter of the book, which purports to be about STM! It's not even in the index, so unless you read it all right through before trying to write any real world program, you'll struggle to find some decent getopt docs elsewhere.)
Some of the better chapters don't have a large body of code attached. The shining example of this is the awesome chapter on profiling, which concerns itself with 5 lines of code and dives down all the way to assembly language to make it optimal. It's a great reference chapter the first time you get stuck on haskell space use, too.
That seems to be the main tension in the book, is it about showing actual real-world code, or real-world techniques? Perhaps the book errs on the side of showing off too many of the authors' pet projects.
I also suspect that, despite the heavy reviewing of chapters as they were written, O'Reilly may have rushed this book to press somewhat. (My own limited experience with working with O'Rielly suggests this is not uncommon.) It's a bit sad to see corrections that were made before publication time and did not get in. I hope for a second edition one day. Particularly, the book needs to be updated to use new style exceptions, and some of the other examples have rotted.
Still and all, I read the book, and "Learn You a Haskell", and a bunch of web writings, and I eventually learned haskell well enough to write a real-world, eleven thousand line program that is being used by a fair number of people. Without having actually sat down and written the program, I'd not truely understand haskell to the extent I do. Without this book, I'd certainly not have even tried.