home *** CD-ROM | disk | FTP | other *** search
/ NetNews Usenet Archive 1992 #31 / NN_1992_31.iso / spool / comp / lang / pop / 171 < prev    next >
Encoding:
Internet Message Format  |  1992-12-22  |  1.4 KB

  1. From: sfk@otter.hpl.hp.com (Steve Knight)
  2. Date: Tue, 22 Dec 1992 15:04:19 GMT
  3. Subject: 4th tag code
  4. Message-ID: <116670039@otter.hpl.hp.com>
  5. Organization: Hewlett-Packard Laboratories, Bristol, UK.
  6. Path: sparky!uunet!zaphod.mps.ohio-state.edu!sdd.hp.com!hpscit.sc.hp.com!hplextra!otter.hpl.hp.com!otter!sfk
  7. Newsgroups: comp.lang.pop
  8. Lines: 21
  9.  
  10. Here's a question that Chris and I have whiled away the odd lunchtime
  11. over.  Given that POPLOG has got a 2-bit tag on each full-cell but
  12. only uses three of the tag, what should the 4th tag be used for?
  13.  
  14. My favourite two suggestions are as follows.  (1) The 4th tag code should
  15. be used to denote other "simple" quantities such as characters (UNICODE)
  16. and enumerated types constructed by the user.  (2) The 4th tag code
  17. should be used to denote "delayed" expressions.  These are arbitrary 
  18. expressions that get "forced" on demand but otherwise are not executed.
  19. The garbage collector would be sensitive to them and elide references
  20. to them if they have been evaluated.
  21.  
  22. I especially like suggestion (2) -- even though it has a small performance
  23. cost.  If there are delayed expressions floating around, it is necessary
  24. for all recognisers to check for that 4th tag code.  This is probably
  25. acceptable, but it is a cost.  But then again, just imagine having the
  26. ability to write lazy programs rather than just dynamic lists!
  27.  
  28. Any other suggestions?
  29.  
  30. Steve
  31.