home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.lang.lisp
- Path: sparky!uunet!think.com!spool.mu.edu!mixcom.com!wstar.mixcom.com!jpf
- From: jpf@wstar.mixcom.com (John P. Flanagan)
- Subject: Re: *READ-SUPPRESS* and #P syntax
- Message-ID: <1992Nov15.210151.1062@wstar.mixcom.com>
- Date: Sun, 15 Nov 1992 21:01:51 GMT
- References: <1992Nov11.014902.6585@kronos.arc.nasa.gov> <1992Nov11.201954.825@wstar.mixcom.com> <1duhk5INNqg6@early-bird.think.com>
- Organization: WaveStar Technology
- Lines: 39
-
- barmar@think.com (Barry Margolin) writes:
-
- >In article <1992Nov11.201954.825@wstar.mixcom.com> jpf@wstar.mixcom.com (John P. Flanagan) writes:
- >>Strictly speaking, I don't think this behavior is allowed. Section
- >>2.4.8.14, p.2-33 in the dpANS makes the following statement:
- >>
- >> "#P"..." is equivalent to #.(parse-namestring "...")."
-
- >However, that doesn't say what "#P(...)" is equivalent to.
-
- Yes, but why does this matter when *read-suppress* is non-nil?
-
- Consider Steele's comments from section 22.1.4, p.537 in CLtL2 with
- regard to `#P"..." is equivalent to #.(parse-namestring "...")':
-
- ["Presumably this was meant to be taken descriptively and not literally."]
- ...
- ["I interpret the intent of the vote to be that #p reads a following form,
- which should be a string, that is then converted to a pathname as if by
- application of the standard function parse-namestring."]
-
- When the value of *read-suppress* is non-nil, it shouldn't matter what the
- following form is unless the Sharpsign-P reader evaluates that form; as with
- other standard # dispatching macro readers such as #\, #B, #O, #X, #R, #*,
- #A, #S, #:, ##, and #., the Sharpsign-P reader returns nil instead.
-
- Similar reasoning should also apply to the #C, #(, and #' macros although
- an example involving the #( reader macro on p.23-22, section 23.2 of the
- dpANS appears to suggest otherwise, i.e., #(a b c) becomes #(nil nil nil)
- rather than nil. The last paragraph before the examples says, "#( notation
- continues to delimit vectors"; it doesn't say, "#( notation continues to
- delimit [and construct] vectors" as is true with parentheses.
-
- -jpf
- --
- __________________________________________________________________________
- WaveStar Technology WaveStar Common Lisp John P. Flanagan
- W344 N6855 Bayberry Court ANSI-12.24, X3J13/92 (414) 367-5014
- Oconomowoc, WI 53066 HPUX-800/700/400/300 jpf@wstar.mixcom.com
-