Subject: Re: Servlets in CL
From: Erik Naggum <>
Date: 2000/06/08
Newsgroups: comp.lang.lisp
Message-ID: <>

* David Bakhash
| But I'd like to know more about how people use them, since I
| very seldom use them.

* Joe Marshall <>
| Nor should you.

  What nonsense!

| Plists are a `poor man's 2-d table'.

  Well, that's _one_ view.

| The problem is that this table is not first class, the key pairs
| come from a global namespace, and the table shared with every
| function that uses a 2-d table.

  Firstclassitude is _so_ overrated.  Don't listen to Schemers!

  Property lists exist in many objects, not just symbols.  They are
  very convenient ways to store _incidental_ information with the
  object when the object itself is vastly more important than the
  _property_ you want to associate with it.  Take symbols.  If the
  symbol has it's very own, very good raison d'être, you'd be a fool
  to set up an eq hash table to store some particular properties on
  them, and particular to set up a whole bunch of them, probably named
  by their own symbols, to hold on to each one.  You already have the
  symbol in hand, so it's a wanton waste of resources to use an
  expensive external mechanism to avoid being criticized by Schemers.

  However, if you don't use symbols for the many good reasons for
  which you _should_ use symbols, but for some of the more numerous
  good reasons to _avoid_ using symbols, it's just stupid to waste
  resources on symbols only for their property lists.  Remember,
  symbols are _expensive_ little things.  If you gotta have them, you
  might as well exploit that fact, but if don't have to for some other
  reason, property lists is not a reason to use them.

  Scheme exposure damages your brain if you want to program in Common
  Lisp in your real life.  Scheme doesn't have symbols, so they're
  _envious_ of our very useful property lists!  (Or whatever, they
  simply don't _get_¹ the symbol as a first-class object, no matter
  how much they otherwise rant and rave about firstclassitude².)

¹ pun intended
² this really should be a word
  If this is not what you expected, please alter your expectations.