I learned a huge amount from HOP that I find incredibly useful every day, both in my fun-time programming and at work. There are some problems where it's really useful to be able to construct functions on the fly which are variations on a template, and to throw functions around as data.
I could not agree more. I could have written almost exactly the same sentences, this is exactly what I think. I would just add one more thing: even though I have been using functional languages at college in the past (and found them interesting but not very useful in real life programming - I was probably wrong on this last point, but that's how I perceived it at the time), I had never really seen how these concepts could be utilized in a very useful manner in a predominantly imperative language such as Perl, until I read HOP. This book has not only changed my way of programming in Perl, but also even the way I think about programming in other languages (Perl is by far my favorite language and the one I am using the most, but I have to use regularly more than half a dozen other languages, such as shell, C, C++, awk, Java, PL/SQL, VMS DCL (the equivalent of shell under the VMS OS) and two or three database-specific proprietary languages). HOP is definitely the best book (well, or at least one of the best two books) about programming that I have read in the last 10 years. OK, some examples in HOP might be contrived, but I think it is just because the author, MJD, is just trying to make the spectrum of possibilities as large as possible. It is up to you to use what you like and discard what you don't like.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|