Contents    Page-10    Prev    Next    Page+10    Index   

Physics Problems[file physgram.lsp]


(deflexicon
 '((propname (radius diameter circumference
	      area volume height velocity time
	      weight power height work speed mass))
   (a/an     (a an))
   (the/its  (the its))
   (objname  (circle sphere fall lift))
)) ; deflexicon

(defgrammar
  (s         -> (what is (property) of (object))
                   (list 'calculate $3 $5))
  (property  -> ((the/its)? (propname)) $2)
  (quantity  -> ((number)) $1)
  (object    -> ((a/an)? (objname) with (objprops))
                   (cons 'object (cons $2 $4)))
  (objprops  -> ((objprop) and (objprops))
                   (cons $1 $3))
  (objprops  -> ((objprop))  (list $1))
  (objprop   -> ((a/an)? (propname) of ? (quantity))
                   (cons $2 $4))
  (objprop   -> ((propname) = (quantity))
                   (cons $1 $3))               )