[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Issue: STREAM-INFO (Version 6)
- To: cl-cleanup@sail.stanford.edu
- Subject: Issue: STREAM-INFO (Version 6)
- From: gz@spt.entity.com (Gail Zacharias)
- Date: 10 Jan 89 00:22 PST
- Sender: masinter.pa@Xerox.COM
Our opposition is based on the following points:
1) The defining property of WRITE-SPACE (that it must write exactly the number
of units given) is too restrictive. For example it may not be possible to
write whitespace to a stream in units smaller than a #\space character, if the
stream is associated with a (multi-font) ascii file or editor buffer (since
there may be no ascii character available that can be inserted in the
file/buffer to represent the whitespace). An implementation cannot simply
make the unit size equal to the width of a #\space character, because a
subsequent increase in font-size would again make the unit smaller than a
current #\space character.
2) The "additional properties" of PRINTED-WIDTH (i.e. 8 and 9, stating that
printed-widths are additive) are incompatible with some non-Roman scripts. For
example, in the Arabic language the glyphs used for characters are dependent
on the surrounding characters: in our Arabic implementation of Object Logo,
editing causes surrounding characters to change shape (and width) according to
their new context. The restrictions on PRINTED-WIDTH would make it difficult
to similarly incorporate the context-sensitive character portrayal features of
the Macintosh into our Common Lisp implementation.
3) In general we feel that the proposal is premature, given the current state
of i/o standards. We would prefer to wait for a complete solution (i.e. a
real graphics standard and extended characters set standard). We feel that
the current proposal is too specific and problematical for a proper place in
Common Lisp. For now, the desired features are probably best obtained via
implementation-specific functions.