home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 October / usenetsourcesnewsgroupsinfomagicoctober1994disk2.iso / unix / volume10 / comobj.lisp / part01 / vaxl-low.l < prev   
Encoding:
Text File  |  1987-07-30  |  1.9 KB  |  57 lines

  1. ;;; -*- Mode: LISP; Syntax: Common-lisp; Package: (PCL Lisp 1000); Base: 10. -*-
  2. ;;;
  3. ;;; *******************************************************************************
  4. ;;; Copyright (c) 1985 Xerox Corporation.  All rights reserved.
  5. ;;;
  6. ;;; Use and copying of this software and preparation of derivative works based upon
  7. ;;; this software are permitted.  Any distribution of this software or derivative
  8. ;;; works must comply with all applicable United States export control laws.
  9. ;;; 
  10. ;;; This software is made available AS IS, and Xerox Corporation makes no warranty
  11. ;;; about the software, its performance or its conformity to any specification.
  12. ;;; 
  13. ;;; Any person obtaining a copy of this software is requested to send their name
  14. ;;; and post office or electronic mail address to:
  15. ;;;   CommonLoops Coordinator
  16. ;;;   Xerox Artifical Intelligence Systems
  17. ;;;   2400 Hanover St.
  18. ;;;   Palo Alto, CA 94303
  19. ;;; (or send Arpanet mail to CommonLoops-Coordinator.pa@Xerox.arpa)
  20. ;;;
  21. ;;; Suggestions, comments and requests for improvements are also welcome.
  22. ;;; *******************************************************************************
  23. ;;;
  24. ;;; The version of low for VAXLisp
  25. (in-package 'pcl)
  26.  
  27.   ;;   
  28. ;;;;;; Load Time Eval
  29.   ;;
  30. (defmacro load-time-eval (form)
  31.   `(progn ,form))
  32.  
  33.   ;;   
  34. ;;;;;; Generating CACHE numbers
  35.   ;;
  36. ;;; How are symbols in VAXLisp actually arranged in memory?
  37. ;;; Should we be shifting the address?
  38. ;;; Are they relocated?
  39. ;;; etc.
  40.  
  41. (defmacro symbol-cache-no (symbol mask)
  42.   `(logand (the fixnum (system::%sp-pointer->fixnum ,symbol)) ,mask))
  43.  
  44. (defmacro object-cache-no (object mask)
  45.   `(logand (the fixnum (system::%sp-pointer->fixnum ,object)) ,mask))
  46.  
  47.   ;;   
  48. ;;;;;; printing-random-thing-internal
  49.   ;;
  50. (defun printing-random-thing-internal (thing stream)
  51.   (format stream "~O" (system::%sp-pointer->fixnum thing)))
  52.  
  53.  
  54. (defun function-arglist (fn)
  55.   (system::function-lambda-vars (symbol-function fn)))
  56.  
  57.