Dear reader: we love you, too
May 24th, 2007 by Bryan O'Sullivan
Wow, what a response we’ve had to the announcement of the book project!
The web site has seen over 10,000 hits in just 20 hours. Don tells me that the announcement is the all-time highest-scoring Haskell article on Reddit. We’ve received over a hundred email messages from people who would like to act as tech reviewers. Whew!
I’d like to thank everyone who has responded via comments and email so far, and ask that you please bear with us. It will take us a little time to dig out from under our sudden instantaneous mountain of correspondence!
There have been a number of great suggestions and requests from people already, and I’d like to detail a few here.
Several oft-requested topics were already in our plan, but we squished them out of the short TOC we posted for reasons of brevity.
- OpenGL
- Generic programming and “scrap your boilerplate”
- Web application server coverage (we’re planning to talk about HappS, by the way)
- Debugging, profiling, and avoiding space leaks
We’ll also be happy to add a few topics that we hadn’t already been explicitly thinking about, so thank you to the people who suggested existential types and heterogeneous lists.
There were several other good questions.
- Code examples. The text of the book will necessarily contain excerpts, because we can’t serve our teaching purpose by including huge wads of boilerplate. But my hope is to automatically snip those excerpts from actual working libraries and applications that compile, pass tests, and run. We will make these examples available under a suitable open source license.
- Schedules and preordering. We’ll let you know as soon as we can about availability, ISBN assignment, preordering, and all that jazz. For now, don’t plan on taking the book to the beach this summer.
- Interfacing to other languages. Haskell has a great FFI, but the bindings to C are the only ones that are well defined at the moment. We’re excited about LambdaVM, the JVM back end to GHC, but it would be premature to write about it now.
Once again, thanks for all of your interest! It’s a thrill to see such an appetite in the community for this book. And writing for an eager audience is really fun.
Along with the suggestions (if you weren’t already planning on it), I’d be interested in seeing coverage of logging and disk persistence. In the programs I write in the “real world”, lots of stuff makes use of ubiquitous logging with varying levels of detail. I can’t imagine how to do that without IO-ifying everything or doing tricky unsafeIO and/or threads. Same goes with ‘most recent state of __ gets kept on disk in case of __’.. in an impure OO language, there’d just be an object (or *gasp* singleton) that encapsulates all of the disk based stuff so nobody else has to futz with it.. I can’t see how to easily do that in haskell, yet it tends to be part of the standard infrastructure of things I write in other languages.
Anyway, I’d like to see that addressed in the book.
(or on the wiki!)
I am a C programmer, and I want learn something different, like functional programming, haskell is a good choice. But it seems that haskell is too mathmatics, what can we use haskell for everyday use in our real-world such as text processing, regular expression? This book will be a great job to the haskell newcomers! Thank you!
I am not quit understand ‘monad’, ‘curry’ and the type system.
Gentlemen, you’re doing an amazing work!
I will only support a couple of suggestions already told.
I’d think LambdaVM is worth at least brief mentioning. You are right that it is premature to right about in the same manner as monad transformers, say. But admit, the very ongoing effort to implement a Java back-end is a great advertisement of Haskell, which is not the last purpose of the book, I believe (well, shoud be :). So, it could be briefly mentioned in the interop secction.
Debugging. Yes, it is probably also not so well shaped yet. But I really believe, that newcomers reading about a new programming language will be very interested in such an important practical aspect. At least somehow, I think, it should be covered.
Thank you
If you Haskellers really think you can compete with OCaml then bring it on.
Seriously though, I’m very glad to see another functional programming language becoming more mainstream. I have even started learning Haskell myself, using Paul Hudak’s excellent book “The Haskell School of Expression”.
Best of luck with the new project!
Cheers,
Jon.