Subject: Re: What case problem is Franz trying to solve?
From: Erik Naggum <>
Date: 10 Nov 2000 01:00:13 +0000
Newsgroups: comp.lang.lisp
Message-ID: <>

* John Foderaro <>
| Doable yes, but this is a big and unnecessary hoop to jump through
| if only Lisp has the expressive power of Java in terms of naming
| identifiers (which is does only if you escape away the natural case
| insensitive behavior).

  Since it appears from your comments that you do not know Common Lisp
  very well, but approach it as if the defaults are your only option,
  I think it is important to inform you of the several interesting
  options you have when you want case sensitivity in the reader and
  also get the expected results when coding.

  First, just (setf (readtable-case *readtable*) :preserve) and write
  symbols in the Common Lisp package in upper-case.  Everything else
  will be in lower-case if you write it that way, and that which is in
  mixed case will have their case retained, too.

  Second, if you don't want to write symbols literally in upper-case,
  you can (setf (readtable-case *readtable*) :invert) and have the
  case reverted for mono-case symbols, and retained for mixed case
  symbols.  This causes a similarly case-sensitive reader, but has the
  advantage that symbols whose names are upper-case will read and
  print with lower-case.

  I find it odd that you continue to talk about a Common Lisp that has
  a lot less functionality than the Common Lisp I know and which is
  specified to do a number of things you seem to want but do not want
  to do the way you can do them.  Again, I find this odd.  It _looks_
  like the reason for your problems and issues with the reader comes
  from not implementing the standard faithfully before changing it.

  There is nothing _natural_ about the upcasing reader.  It is merely
  the default setting.  As long as we know that Franz Inc argues very
  strongly that people "just" have to evaluate a few lines of code to
  get an ANSI Common Lisp from the Modern lisp image, it seems rather
  disingenuous to argue against changing these other default values,
  or as if they cannot be changed as easily as building a new image.
 Al-Gore-ism: a procedure for solving an electoral problem in a finite
 number of steps that frequently involves repetition of an operation.
 See also algorithm.