Third time pays for all: Perl of Great Price

Jul 11, 2005 10:26

The irony is that Perl itself is a subset of UNIX features condensed into a quick-and-dirty scripting language. In a literary light, if UNIX is the Great Novel, Perl is the Cliffs Notes.
    - Thomas Scoville, "The Elements of Style: UNIX as Literature"

Care to discuss?

ETA, 20:30 CST: Also, any advice on Wikination and bootable CD burnination?

- ( Read more... )

scripting languages, perl, unix, programming languages, software, operating systems, programming

Leave a comment

Comments 5

yahvah July 11 2005, 15:48:56 UTC
It's old and out-dated, but certainly relevant for Perl 4. Perl 5 and 6 are far from what one would call a 'scripting language'. Perl has become a full-fledged programming language used by many corporations and open-source groups for building of all kinds of apps. In fact, using the Perl Object Environment, I've put together a tiny web server that pipes the output of a 'tail' function to your web browser. I'm still working on the re-design of this app, but so far I've reduced the number of lines of code from almost 3,500 to 200 (but when I'm done it will probably come closer to 1,000, maybe more).

Reply

My evolving relationship with Perl banazir July 11 2005, 16:04:37 UTC
You just made me look up The Perl Timeline at the Perl History page, and it seems I've always been a bit behind the times.

I first learned perl from Nathan Dale Gettings, one of my programmers at the Beckman Institute, along with alpenglow. I spent about a few weeks to pick up the scripting, regexp, array/hash, and string-centric features of Perl 4, along with its function calling syntax. Unix system hooks and the rest came later ( ... )

Reply

Re: My evolving relationship with Perl yahvah July 11 2005, 16:36:11 UTC
You've worked with Perl a lot more than I thought. That's cool! I'm suggesting that IBM purchase this Perl2Exe compiler that I used at the IRS before leaving them. It does bloat the Perl program when it compiles it, but a little bit of bloat isn't too bad when you want to get a project done quickly. This re-design I'm doing was sized (by other developers) to take 1600 hours and I'll have it finished in less than 300 hours. The PMs are very happy about that.

One of the things that made me happy about Perl 5 was the addition of the ability to lexically scope your variables with my. So now I go and read code other people wrote and see them using the local function to do what should be done with my. I always try to explain to people the difference when they don't know it, because local can get funky if you're using multiple threads (since it modifies that variable only locally within the block of code ( ... )

Reply


ellie_desu July 11 2005, 16:18:10 UTC
From my pathetic view, isn't unix the os and perl a language?

Reply

A not-so-fine line banazir July 11 2005, 17:59:56 UTC
Actually, that was my first reaction, too.

I think the more subtle nuance here is that Perl is both a general-purpose programming language, with platform-independent features (those that can be isolated from, and portable across, architecture and representation) and a scripting language, which gives hooks into an OS.

Think about cat, cut, head, tail, less, grep, uniq, sort, and join - Unix commands that can be used to do a lot of sophisticated things, even implement some features of a relational database without DBMS software. Then consider regular expressions, sed, awk, and cut. Combine these with lex/flex (or Antlr for you young whippersnappers) and yacc/bison (or JCup) and pretty soon you're talking about real power. Some of these (e.g., awk by itself) are Turing-complete, but as David Padua, a professor of ours at UIUC, put it in his Advanced Compilers (CS 426) course: "I'm a programmer, not a poet". :-)

Back when the vi/emacs wars were relevant, this was an important distinction. For a time, after the first advent of ( ... )

Reply


Leave a comment

Up