[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
sequence presentation type
Mike McMahon writes:
| Date: Fri, 25 May 90 16:02:49 -0600
| From: andreas@boulder.Colorado.EDU (Andreas C. Lemke)
|
| Shouldn't the sequence presentation type allow zero-length sequences
| as well? The doc says its for one or more objects, which is
| inconsistent with general common lisp parlance.
|
| It works for output, sort of (it doesn't output anything).
| But how would you input one, given the additional complication of defaults?
Barry Margolin writes:
| If there's a default available, how would you distinguish between the
| user hitting Return to get the default from hitting return to type an
| empty sequence?
First of all, I thought there might be a reason why accepting zero
length sequences would be nonsensical, and the current behavior would
be indeed the desired behavior. If it is not, then one can consider
options for solving the default problem. I see the following
alternatives:
1. Use a special character to mean "activate but do not use default".
The tab char could be used. Tab can already be used to mean
"activate but do not complete". This might cause problems when
rescanning!? Would the empty sequence then be replaced with the
default? Is there a need for a permanent marker that prevents
insertion of the default and completion (e.g., "")?
2. Do something like (null-or-type (sequence ...)), i.e., use a
special keyword to denote empty sequences. But since
(null-or-type (sequence ...)) already works, this is probably
mute. No it's probably not because alist-member is not a subtype
of sequence... (I don't understand these issues enough, I guess.)
3. Go away from infix comma notation, and use a parenthesized notation
instead (or in addition). In that case an empty sequence has a natural
representation: ()
.................. Andreas C. Lemke
... andreas ..:-). CS Dept., Univ. of Colorado, Boulder
.................. andreas@sigi.colorado.edu