Subject: Re: Can I use Lisp?
From: Erik Naggum <erik@naggum.net>
Date: 06 Nov 2000 03:46:18 +0000
Newsgroups: comp.lang.lisp
Message-ID: <3182471178876789@naggum.net>

* Hallvard B Furuseth <h.b.furuseth@usit.uio.no>
| But it's the regular expression stuff which recruits people to Perl.

  Precisely.  If another language tried to acquire similar regular
  expression power, it would help recruit people to Perl, because that
  language is the embodiment of the idea that regular expressions are
  a good way to solve a huge number of problems.  It isn't.  They are
  good for a _very_ small number of problems, such as searching a text
  in a text editor or a file system, _interactively_.

| Me, for example.  Why not try to save them?

  Nah.  I'm not into saving random people from themselves.  If I were,
  I'd have to go shoot the cigarettes out of people's mouths.  That
  would just land me in jail, and nobody would come save me.  So there.

| They _could_ have been doing that in Lisp instead, and maybe Lisp
| could even save some of the regexp fanatics.

  Nope.  If you fall prey to the regular expression, you're damaged
  goods as far as I'm concerned.  There is redemption and the chance
  of englightenment, of course, but people who extoll the virtues of
  programming with regular expressions are about as interesting to
  listen to as those who extoll the virtues of street prostitutes.

| Sure, persistent regexpers would increase the percentage of _poor_
| Lisp programs and programmers.  Is that your objection?

  No.  I don't want people to think that regular expressions is
  something programmers should put in source code at all.  It is
  simply the wrong approach to programming text applications.  The
  regular expression is an excellent tool when searching for something
  _interactively_, so tools that accept regular expressions from the
  user are the only ones worth using, but if you don't have that whole
  interactive "if at first you don't succeed, cry, try again" feel to
  using regular expressions, you're doing something very, very wrong,
  because you never know when your regular expression sees a false
  negative or a false positive.  Such mistakes are populating the Perl
  world to an alarming degree, but they go virtually unnoticed.  If
  you spend all the time it takes to actually _know_ that you get the
  right results every time, you could have implemented a full-fledged
  parser and object-oriented representation of whatever it was you
  were trying to hack up with regular expressions in the first place.

#:Erik
-- 
  Does anyone remember where I parked Air Force One?
                                   -- George W. Bush