Skip to content
Snippets Groups Projects
load-pvs.lisp 586 B
Newer Older
(defun load-pvs (&optional pvspath)
Gabriel's avatar
Gabriel committed
  "Load PVS into the current lisp environment. Argument PVSPATH is the filespec
to the sources of PVS. If not provided, it is fetched from the environment
variables PVSPATH."
  (let ((pvspath
          (cond
hondet's avatar
hondet committed
            (pvspath (uiop:ensure-pathname pvspath :ensure-directory t))
            ((uiop:getenvp "PVSPATH") (uiop:getenv-pathname "PVSPATH"))
            (t (error "Cannot load PVS: PVSPATH not set.")))))
    (uiop:with-current-directory (pvspath)
      (load "pvs.system")
      (uiop:symbol-call :make "OPERATE-ON-SYSTEM" :pvs :load))))