home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #27 / NN_1992_27.iso / spool / comp / lang / lisp / 2886 next >
Encoding:
Text File  |  1992-11-15  |  2.3 KB  |  50 lines

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