7 ms·
Higher-Order Perl is available for free as a PDF
- aaronsw 16y agoHas anyone seen mjd lately? I haven't heard from him and he hasn't updated his blog since January. I'm starting to get worried. (This PDF was put up long before that.)
- deleted 16y ago[deleted]
- rmk 16y agoLast I checked, mjd appeared to be out of a job, and was soliciting donations for his (awesome) higher-order perl book. It's a shame he's out of a job, because if mjd cannot get a job, what about the rest of us?
- mst 16y agoHe's working with rjbs over at pobox.com now. I've seen him in #dbix-class swearing at my code a few times. We tried to get him to YAPC::NA but he has this thing called a family that apparently sometimes intervenes with his ability to gallivant across the country, so I had to get Damian to heckle my "I wanted to be MJD when I grew up" joke instead.
- telemachos 16y ago>> I've seen him in #dbix-class swearing at my code a few times. That sounds about right: http://groups.google.com/group/comp.lang.perl.misc/msg/b2f911d6d9c5cef2?pli=1 http://groups.google.com/group/comp.lang.perl.misc/msg/b2f91... (Note: I used to have a little program to pick one of these out at random and insert it as a signature for Mutt, but I seem to have lost it. I got some great replies based on some of those.) Edit - better link - thanks mjd
- deleted 16y ago[deleted]
- mjd 16y agoGetting another job was not actually that difficult, so there is no need to worry on that score. But if anyone wants to send donations anyway, I will still gratefully accept them.
- perlsys 16y agoso is Pobox good work? And how is Perl working for them?
- autarch 16y agoI think he's been busy. Contrary to the other reply, he does have a job. My understanding is that family life has kept him very occupied.
- mjd 16y agoSorry you were worried. I lost my job in 09/2009, but got a new one in 12/2009. I am okay, just very busy dealing with having two children instead of one. This is starting to get easier as they get older. I got out of the habit of blogging while I was unemployed. I hope to get back in the habit again soon, but I don't know when it will happen. Thanks for being concerned.
- rmk 16y agohi mjd, i got your book from a used-book bookstore. just wondering if that means that you get any $$ from that, or whether it doesn't benefit you financially?
- nkurz 16y agoPresuming you mean this as a genuine question, "no". There is no network that tracks sales of used books, and manages to send royalty payments to the appropriate party. Mark experiences no direct financial benefit when you purchase a used copy from a bookstore. The best possible interpretation would be that he sells more copies new because the existence of a secondary market allows people to buy new copies with greater abandon. It does sound like an interesting marketing approach though: open a used book store that does make this promise, and without obligation sends $1 per used book to the listed author. Since it's a 'gift', there would be no need to determine legal ownership, assigned rights, etc. I'm not sure that it would confer enough advantage to cover the lost $1 of profit, but I think it would attract a lot of attention and business if you could keep the prices competitive otherwise.
- rmk 16y agoI like this idea :)
- iamjustlooking 16y agoYour post suggests a lack of critical thinking on your part. 1. I sell my book to a used book store. 2. You buy the book I sold to the book store. 3. Somehow the author also takes a cut in that sale?
- elblanco 16y agoThe regex as a value generator in this book is really quite good. I've been dying to see somebody write it up and stick it on CPAN.
- mst 16y agoWell, go for it then - that'd be awesome! If you tweet @shadowcat_mst when you're ready I'll make sure your PAUSE account gets approved quickly (you're also welcome to bug me about how to build dists etc., I'm always happy to walk people through their first upload). Note that if you already have an account and uploads, I apologise for not recognising who you are but you're still welcome to bug me if there's anything I can do to help :)
- elblanco 16y agoAppreciate the offer. Unfortunately it's item 100 on a to-do list of 100 atm.
- JadeNB 16y agoIt's been a while since I read the book, and I don't remember this use of regexes; but is it by chance covered under Ovid's HOP::Parser module (http://search.cpan.org/~ovid/HOP-Parser http://search.cpan.org/~ovid/HOP-Parser), or another in that family (http://search.cpan.org/search?query=HOP http://search.cpan.org/search?query=HOP)?
- mjd 16y agoIt's section 6.5, "Regex string generation". Page 272: "Given a regex, how can one generate a list of all the strings matched by the regex?"
- elblanco 16y agoI've been looking for such a beast in the wild for quite some time. I've seen a few on CPAN that'll take a regex (or some type of expression, or some limited dialect of regex) and spit out a few random strings. Even Microsoft's REX tool (http://research.microsoft.com/en-us/projects/rex/ http://research.microsoft.com/en-us/projects/rex/), which is the best I've seen, gives nondeterministic random results. Having a tool that would take a PCRE (or some subset of the language), apply some constraints on repetition operators (like *->{0,2}, +->{1,2}) etc., spit out a deterministic list of values (don't care how long so long as it's reasonably finite) would be extremely powerful for software testing. Even the rather limited capabilities in REX have helped me fix some invalid assumptions I was making about valid inputs. It's always seemed strange to me that regular expressions are described in the literature as string generators, yet I've pretty much only ever seen them used as string acceptors in practice in the form of a predicate (s in set <REGEX>?).
- scelerat 16y agoI read this book several years ago when I was still doing a lot of straight-ahead PHP. Was a bit of a mind opener at the time and totally changed my approach and understanding of programming and programming languages. Much of the book is applicable to Javascript, Ruby, and Python. I don't have much use for Perl now, but it's still a great read.
- ratsbane 16y agoI also read it several years ago too and I frequently pick it up and re-read bits. It's changed my programming style for the better, not just Perl, but related languages. MJD, wherever you are, good work.
- zby 16y agoIt was really mind-boggling when reading it - but then I did not have much chance to apply the techniques in my work. I've read a lot of positive reviews of this book and how it changed the way people programm - but what was exactly the technique that you picked up from it? I once copied the crawler using iterators ( http://hop.perl.plover.com/Examples/ALL/ItRobot10.pl http://hop.perl.plover.com/Examples/ALL/ItRobot10.pl ) when we needed a quick script to check our links - and it worked nice for about a 1000 entries and then it suddenly started to be really slow. I tried to find out where that slow down happens and it was after the return statement in traverse - it seems like this code triggers some garbage collector problem. I did not have time to analyze that further - but it happened both in 5.10.1 and 5.12.1. I've also send a simple bug report to mjd (for the line 'my $html = get($url); - it redeclares $html and so the value becomes invisible from outside of the loop and in particular for the return statement), but I never got any answer from him.
- mjd 16y agoI'm sorry that I didn't get your error report, or that you didn't get my reply to your error report. But I maintain an errata page, and that error has been on it since 2005-05-24. See http://hop.perl.plover.com/errata/errata-p-1.html#p196 http://hop.perl.plover.com/errata/errata-p-1.html#p196.
- danbmil99 16y agocan't we just let Perl fade gently into that good night? I mean really. Time's up.