Curtis "Ovid" Poe
Track: Perl
Date: Friday, August 5th, 2005
Time: 11:35am - 12:20pm
Location: D136
Most Perl programmers eventually hear this famous quote from Tom Christiansen:
"A programmer who hasn't been exposed to all four of the imperative, functional, objective, and logical programming styles has one or more conceptual blindspots. It's like knowing how to boil but not fry."
We're loosely familiar with the imperative, functional, and objective programming styles primarily because Perl supports them. Though conceptually similar to regular expressions, Perl does not support logic programming.
A typical day at work might involve our boss coming up to us and giving us a goal. If we're lucky, she might even give us enough information to achieve said goal. Then we groan, sweat, and maybe even curse a little while we tear the information into bits and send these bits spinning every which way in the hope that, at the very end, they'll resemble the goal we we were given. In short, we tell the computer how to achieve the goal.
In logic programming we tell the computer what the goal looks like and let it figure out how to achieve the goal on its own. Sometimes you'll even hear logic programming referred to as "specification based" programming because logic programs, when written correctly, are the specification.
Perl programmers in this session will get a brief taste of the power of logic programming and learn what tools are available to bring the power of logic programming to their own programs.
Download presentation file