Advertisement
Guest User

Untitled

a guest
Mar 3rd, 2019
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 0.61 KB | None | 0 0
  1. Roughly speaking, it is as if the defstruct form
  2.  
  3. (defstruct op “An operation”
  4.  
  5. (action nil) (preconds nil) (add-list nil) (del-list nil))
  6.  
  7. expanded into the following definitions:
  8.  
  9. (defun make-op (&key action precondsadd-list del-list)
  10.  
  11. (vector ‘op action preconds add-list del-list))
  12.  
  13. (defun op-action (op) (elt op 1))
  14.  
  15. (defun op-preconds (op) (elt op 2))
  16.  
  17. (defun op-add-list (op) (elt op 3))
  18.  
  19. (defun op-del-list (op) (elt op 4))
  20.  
  21. (defun copy-op (op) (copy-seq op))
  22.  
  23. (defun op-p (op)
  24.  
  25. (and (vectorp op) (eq (elt op 0) ‘op)))
  26.  
  27. (setf (documentation ‘op ‘structure) “An operation”)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement