Advertisement
Guest User

PGM4 UPDATE 2

a guest
Oct 30th, 2018
132
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lisp 1.76 KB | None | 0 0
  1. (defun checkRequest (parse)
  2.     (PROG (result)
  3.         (do (setf g)
  4.             ((NULL gram))
  5.         )
  6.    
  7.         ;;VERB    
  8.         (setf gram (getToken parse))
  9.         (if (not (isa gram 'verb))
  10.             (return NIL)
  11.         (putp 'verb parse gram))
  12.        
  13.         ;;ARTICLE
  14.         (setf saveCursor (getCursor parse))
  15.         (setf gram (getToken parse))
  16.         (if (NOT(isa gram 'article)) (setCursor parse saveCursor) (putp 'article parse gram))
  17.        
  18.         ;;DIRECTOBJ
  19.         (setf gram (getToken parse))
  20.         (if (not (isa gram 'noun))
  21.             (return NIL)
  22.         (putp 'directObj parse gram))
  23.        
  24.         ;;PREP
  25.         (setf gram (getToken parse))
  26.         (if (not (isa gram 'prep))
  27.             (return NIL)
  28.         (putp 'prep parse gram))
  29.        
  30.         ;;INDIRECT OBJ
  31.         (setf gram (getToken parse))
  32.         (if (not (isa gram 'noun))
  33.             (return NIL)
  34.         (putp 'indirectObj parse gram))
  35.        
  36.        
  37.         ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
  38.         (setf gram (getToken parse))
  39.         (if (isa gram 'prep) (putp 'QualIndirectPrep parse gram))
  40.        
  41.         (setf gram (getToken parse))
  42.         (if (isa gram 'noun) (putp 'QualIndirectObj parse gram))
  43.  
  44.         (setf gram (getToken parse))
  45.         (if (isa gram 'comparator) (putp 'Comparator parse gram))
  46.        
  47.         ;;QUALPREP
  48.         (setf saveCursor (getCursor parse))
  49.         (setf gram (getToken parse))
  50.         (if (NOT(isa gram 'prep)) (setCursor parse saveCursor) (putp 'qualPrep parse gram))
  51.  
  52.         (setf gram (getToken parse))
  53.         (putp 'QualValue parse gram)
  54.        
  55.        
  56.        
  57.         (setf result T)
  58.        
  59.         (return result)
  60.     )
  61.    
  62. )
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement