diff options
Diffstat (limited to 'src/interp')
-rw-r--r-- | src/interp/Makefile.in | 3 | ||||
-rw-r--r-- | src/interp/Makefile.pamphlet | 3 | ||||
-rw-r--r-- | src/interp/br-data.boot | 2 | ||||
-rw-r--r-- | src/interp/br-saturn.boot | 4 | ||||
-rw-r--r-- | src/interp/br-search.boot | 2 | ||||
-rw-r--r-- | src/interp/c-doc.boot | 12 | ||||
-rw-r--r-- | src/interp/compat.boot | 6 | ||||
-rw-r--r-- | src/interp/debug.lisp | 12 | ||||
-rw-r--r-- | src/interp/g-util.boot | 2 | ||||
-rw-r--r-- | src/interp/ht-root.boot | 2 | ||||
-rw-r--r-- | src/interp/i-syscmd.boot | 12 | ||||
-rw-r--r-- | src/interp/obey.lisp | 64 | ||||
-rw-r--r-- | src/interp/patches.lisp | 8 | ||||
-rw-r--r-- | src/interp/spad.lisp | 6 | ||||
-rw-r--r-- | src/interp/util.lisp | 10 | ||||
-rw-r--r-- | src/interp/vmlisp.lisp | 14 |
16 files changed, 41 insertions, 121 deletions
diff --git a/src/interp/Makefile.in b/src/interp/Makefile.in index c070399b..f0a8c728 100644 --- a/src/interp/Makefile.in +++ b/src/interp/Makefile.in @@ -89,7 +89,7 @@ OBJS= boot-pkg.$(FASLEXT) types.$(FASLEXT) \ union.$(FASLEXT) daase.$(FASLEXT) \ fortcall.$(FASLEXT) \ $(OCOBJS) \ - $(BROBJS) i-parser.$(FASLEXT) obey.$(FASLEXT) + $(BROBJS) i-parser.$(FASLEXT) interpsys_modules = $(patsubst %.$(FASLEXT), "%", $(OBJS)) INOBJS= setvart.$(FASLEXT)\ @@ -410,7 +410,6 @@ dq.$(FASLEXT): types.$(FASLEXT) ## General support and utilities. cfuns.$(FASLEXT): boot-pkg.$(FASLEXT) -obey.$(FASLEXT): macros.$(FASLEXT) daase.$(FASLEXT): macros.$(FASLEXT) foam_l.$(FASLEXT) spaderror.$(FASLEXT): macros.$(FASLEXT) debug.$(FASLEXT): macros.$(FASLEXT) parsing.$(FASLEXT) diff --git a/src/interp/Makefile.pamphlet b/src/interp/Makefile.pamphlet index fb1bf153..3bd00794 100644 --- a/src/interp/Makefile.pamphlet +++ b/src/interp/Makefile.pamphlet @@ -168,7 +168,7 @@ OBJS= boot-pkg.$(FASLEXT) types.$(FASLEXT) \ union.$(FASLEXT) daase.$(FASLEXT) \ fortcall.$(FASLEXT) \ $(OCOBJS) \ - $(BROBJS) i-parser.$(FASLEXT) obey.$(FASLEXT) + $(BROBJS) i-parser.$(FASLEXT) interpsys_modules = $(patsubst %.$(FASLEXT), "%", $(OBJS)) @ @@ -691,7 +691,6 @@ dq.$(FASLEXT): types.$(FASLEXT) ## General support and utilities. cfuns.$(FASLEXT): boot-pkg.$(FASLEXT) -obey.$(FASLEXT): macros.$(FASLEXT) daase.$(FASLEXT): macros.$(FASLEXT) foam_l.$(FASLEXT) spaderror.$(FASLEXT): macros.$(FASLEXT) debug.$(FASLEXT): macros.$(FASLEXT) parsing.$(FASLEXT) diff --git a/src/interp/br-data.boot b/src/interp/br-data.boot index 3aeb8249..5d892800 100644 --- a/src/interp/br-data.boot +++ b/src/interp/br-data.boot @@ -90,7 +90,7 @@ buildLibdb(:options) == --called by buildDatabase (database.boot) buildLibAttrs attrlist SHUT $outStream domainList => 'done --leave new database in temp.text - OBEY + runCommand $machineType = 'RIOS => '"sort -f -T /tmp -y200 _"temp.text_" > _"libdb.text_"" $machineType = 'SPARC => '"sort -f _"temp.text_" > _"libdb.text_"" '"sort _"temp.text_" > _"libdb.text_"" diff --git a/src/interp/br-saturn.boot b/src/interp/br-saturn.boot index 27866a69..9c49cfad 100644 --- a/src/interp/br-saturn.boot +++ b/src/interp/br-saturn.boot @@ -93,7 +93,7 @@ off()== -- '"/windows/temp/browser.text" -- $saturn => -- saturnEvalToFile(x, fn) --- OBEY '"cat /tmp/sat.text" +-- runCommand '"cat /tmp/sat.text" -- EVAL x @@ -1617,7 +1617,7 @@ mkButtonBox n == STRCONC('"\buttonbox{", STRINGIMAGE n, '"}") dbSort(x,y) == sin := STRINGIMAGE x sout:= STRINGIMAGE y - OBEY STRCONC('"sort -f _"",sin,'".text_" > _"", sout, '".text_"") + runCommand STRCONC('"sort -f _"",sin,'".text_" > _"", sout, '".text_"") removeFile STRCONC(sin, '".text") diff --git a/src/interp/br-search.boot b/src/interp/br-search.boot index be7213df..4f1a740c 100644 --- a/src/interp/br-search.boot +++ b/src/interp/br-search.boot @@ -912,7 +912,7 @@ underscoreDollars(s) == fn(s,0,MAXINDEX s) where obey x == $saturn and not $aixTestSaturn => nil - OBEY x + runCommand x --======================================================================= -- I/O Code diff --git a/src/interp/c-doc.boot b/src/interp/c-doc.boot index 5c199b50..811a6db3 100644 --- a/src/interp/c-doc.boot +++ b/src/interp/c-doc.boot @@ -1216,11 +1216,11 @@ checkAlphabetic c == docreport(nam) == --creates a report for person "nam" using file "whofiles" removeFile '"docreport.input" - OBEY STRCONC('"echo _")bo setOutStream('",STRINGIMAGE nam,'")_" > temp.input") - OBEY '"cat docreport.header temp.input > docreport.input" - OBEY STRCONC('"awk '/",STRINGIMAGE nam,'"/ {printf(_")co %s.spad\n_",$2)}' whofiles > temp.input") - OBEY '"cat docreport.input temp.input > temp1.input" - OBEY '"cat temp1.input docreport.trailer > docreport.input" + runCommand STRCONC('"echo _")bo setOutStream('",STRINGIMAGE nam,'")_" > temp.input") + runCommand '"cat docreport.header temp.input > docreport.input" + runCommand STRCONC('"awk '/",STRINGIMAGE nam,'"/ {printf(_")co %s.spad\n_",$2)}' whofiles > temp.input") + runCommand '"cat docreport.input temp.input > temp1.input" + runCommand '"cat temp1.input docreport.trailer > docreport.input" removeFile '"temp.input" removeFile '"temp1.input" SETQ(_/EDITFILE,'"docreport.input") @@ -1235,7 +1235,7 @@ whoOwns(con) == --con=constructor name (id beginning with a capital), returns owner as a string filename := getConstructorSourceFileFromDB con quoteChar := char '_" - OBEY STRCONC('"awk '$2 == ",quoteChar,filename,quoteChar,'" {print $1}' whofiles > /tmp/temp") + runCommand STRCONC('"awk '$2 == ",quoteChar,filename,quoteChar,'" {print $1}' whofiles > /tmp/temp") instream := MAKE_-INSTREAM '"/tmp/temp" value := EOFP instream => nil diff --git a/src/interp/compat.boot b/src/interp/compat.boot index 6916d25f..e7dde94e 100644 --- a/src/interp/compat.boot +++ b/src/interp/compat.boot @@ -68,13 +68,13 @@ system() == -- VM version of system command string := getSystemCommandLine() if string = '"" then string := '"sh" - sayMessage [" Return Code = ", OBEY string] + sayMessage [" Return Code = ", runCommand string] terminateSystemCommand() editFile file == MEMQ(INTERN('"WIN32",FIND_-PACKAGE("KEYWORD")),_*FEATURES_*) => - OBEY STRCONC('"notepad ", namestring pathname file) - OBEY STRCONC('"$AXIOM/lib/SPADEDIT ",namestring pathname file) + runCommand STRCONC('"notepad ", namestring pathname file) + runCommand STRCONC('"$AXIOM/lib/SPADEDIT ",namestring pathname file) makeBigFloat(mantissa,expon) == [$BFtag,mantissa,:expon] diff --git a/src/interp/debug.lisp b/src/interp/debug.lisp index 78160568..1e851a90 100644 --- a/src/interp/debug.lisp +++ b/src/interp/debug.lisp @@ -107,7 +107,7 @@ (PROG (TO OPTIONL OPTIONS FNL INFILE OUTSTREAM FN ) (declare (special fn infile outstream )) (if (member '? L :test #'eq) - (RETURN (OBEY "EXEC SPADEDIT /C TELL"))) + (RETURN (|runCommand| "EXEC SPADEDIT /C TELL"))) (SETQ OPTIONL (/OPTIONS L)) (SETQ FNL (TRUNCLIST L OPTIONL)) (SETQ OPTIONS (OPTIONS2UC OPTIONL)) @@ -192,7 +192,7 @@ (SETQ INPUTSTREAM (DEFSTREAM EDINFILE 'INPUT)) (|sayBrightly| (LIST " editing file" '|%b| (|namestring| EDINFILE) '|%d|)) - (OBEY + (|runCommand| (STRCONC (|makeAbsoluteFilename| "/lib/SPADEDFN ") (|namestring| EDINFILE) @@ -453,7 +453,7 @@ EXAMINE (SETQ RECNO (NOTE |$InputStream|)) (DEFUN /TRACE-0 (L) (if (member '? L :test #'eq) - (OBEY "EXEC NORMEDIT TRACE TELL") + (|runCommand| "EXEC NORMEDIT TRACE TELL") (let* ((options (/OPTIONS L)) (FNL (TRUNCLIST L OPTIONS))) (/TRACE-1 FNL OPTIONS)))) @@ -641,7 +641,7 @@ EXAMINE (SETQ RECNO (NOTE |$InputStream|)) (DEFUN /UNTRACE-0 (L) (PROG (OPTIONL OPTIONS FNL) - (if (member '? L :test #'eq) (RETURN (OBEY "EXEC NORMEDIT TRACE TELL"))) + (if (member '? L :test #'eq) (RETURN (|runCommand| "EXEC NORMEDIT TRACE TELL"))) (SETQ OPTIONL (/OPTIONS L)) (SETQ FNL (TRUNCLIST L OPTIONL)) (SETQ OPTIONS (if OPTIONL (CAR OPTIONL))) @@ -852,7 +852,7 @@ EXAMINE (SETQ RECNO (NOTE |$InputStream|)) (DEFMACRO /TRACELET (&rest L) `', (PROG (OPTIONL FNL) (if (member '? L :test #'eq) - (RETURN (OBEY (if (EQ (SYSID) 1) + (RETURN (|runCommand| (if (EQ (SYSID) 1) "EXEC NORMEDIT TRACELET TELL" "$COPY AZ8F:TRLET.TELL")) )) (SETQ OPTIONL (/OPTIONS L)) @@ -904,7 +904,7 @@ EXAMINE (SETQ RECNO (NOTE |$InputStream|)) (defmacro /EMBED (&rest L) `', (COND ((NOT L) (/EMBEDREPLY)) - ((member '? L :test #'eq) (OBEY "EXEC NORMEDIT EMBED TELL")) + ((member '? L :test #'eq) (|runCommand| "EXEC NORMEDIT EMBED TELL")) ((EQ 2 (LENGTH L)) (/EMBED-1 (CAR L) (CADR L))) ((MOAN "IMPROPER USE OF /EMBED")))) diff --git a/src/interp/g-util.boot b/src/interp/g-util.boot index 0d52aee5..979aeff3 100644 --- a/src/interp/g-util.boot +++ b/src/interp/g-util.boot @@ -358,7 +358,7 @@ charRangeTest n == false update() == - OBEY + runCommand STRCONC('"SPADEDIT ",STRINGIMAGE _/VERSION,'" ",STRINGIMAGE _/WSNAME,'" A") _/UPDATE() diff --git a/src/interp/ht-root.boot b/src/interp/ht-root.boot index 965b1f7e..7307caa6 100644 --- a/src/interp/ht-root.boot +++ b/src/interp/ht-root.boot @@ -270,7 +270,7 @@ htTutorialSearch pattern == s := mkUnixPattern s source := '"$AXIOM/share/hypertex/pages/ht.db" target :='"/tmp/temp.text.$SPADNUM" - OBEY STRCONC('"$AXIOM/lib/hthits",'" _"",s,'"_" ",source,'" > ",target) + runCommand STRCONC('"$AXIOM/lib/hthits",'" _"",s,'"_" ",source,'" > ",target) lines := dbReadLines 'temp htInitPageNoScroll(nil,['"Tutorial Pages mentioning {\em ",pattern,'"}"]) htSay('"\beginscroll\table{") diff --git a/src/interp/i-syscmd.boot b/src/interp/i-syscmd.boot index 2904c5e9..9c921167 100644 --- a/src/interp/i-syscmd.boot +++ b/src/interp/i-syscmd.boot @@ -591,7 +591,7 @@ compileAsharpCmd1 args == command := STRCONC(STRCONC(GETENV('"ALDORROOT"),'"/bin/"),_ "aldor ", asharpArgs, '" ", namestring args) - rc := OBEY command + rc := runCommand command if (rc = 0) and doCompileLisp then lsp := fnameMake('".", pathnameName args, '"lsp") @@ -644,7 +644,7 @@ compileAsharpArchiveCmd args == cd [ object2Identifier namestring dir ] cmd := STRCONC( '"ar x ", namestring path ) - rc := OBEY cmd + rc := runCommand cmd rc ^= 0 => cd [ object2Identifier namestring curDir ] throwKeyedMsg("S2IL0028",[namestring dir, namestring args]) @@ -766,10 +766,10 @@ withAsharpCmd args == --% )copyright -- display copyright notice summary l == - OBEY STRCONC ('"cat ", systemRootDirectory(),'"/lib/summary") + runCommand STRCONC ('"cat ", systemRootDirectory(),'"/lib/summary") copyright () == - OBEY STRCONC ('"cat ", systemRootDirectory(),'"/lib/copyright") + runCommand STRCONC ('"cat ", systemRootDirectory(),'"/lib/copyright") --% )credits -- display credit list @@ -1172,7 +1172,7 @@ newHelpSpad2Cmd args == null (helpFile := MAKE_-INPUT_-FILENAME [narg,'HELPSPAD,'_*]) => NIL $useFullScreenHelp => - OBEY STRCONC('"$AXIOM/lib/SPADEDIT ",namestring helpFile) + runCommand STRCONC('"$AXIOM/lib/SPADEDIT ",namestring helpFile) true filestream := MAKE_-INSTREAM(helpFile) @@ -3053,7 +3053,7 @@ npsystem(unab, str) == null SEARCH(sysPart, STRING unab) => sayKeyedMsg('"S2IZ0080", [sysPart]) command := SUBSEQ(str, spaceIndex+1) - OBEY command + runCommand command npsynonym(unab, str) == npProcessSynonym(str) diff --git a/src/interp/obey.lisp b/src/interp/obey.lisp deleted file mode 100644 index e3735817..00000000 --- a/src/interp/obey.lisp +++ /dev/null @@ -1,64 +0,0 @@ -;; Copyright (c) 1991-2002, The Numerical Algorithms Group Ltd. -;; All rights reserved. -;; Copyright (C) 2007-2008, Gabriel Dos Reis. -;; All rights reserved. -;; -;; Redistribution and use in source and binary forms, with or without -;; modification, are permitted provided that the following conditions are -;; met: -;; -;; - Redistributions of source code must retain the above copyright -;; notice, this list of conditions and the following disclaimer. -;; -;; - Redistributions in binary form must reproduce the above copyright -;; notice, this list of conditions and the following disclaimer in -;; the documentation and/or other materials provided with the -;; distribution. -;; -;; - Neither the name of The Numerical Algorithms Group Ltd. nor the -;; names of its contributors may be used to endorse or promote products -;; derived from this software without specific prior written permission. -;; -;; THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS -;; IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED -;; TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A -;; PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER -;; OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, -;; EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, -;; PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR -;; PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF -;; LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING -;; NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS -;; SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - - -(import-module "macros") -(import-module "sys-os") -(in-package "BOOT") - -#+ (and :lucid :unix) -(defun OBEY (S) - (system:run-aix-program (|makeAbsoluteFilename| "/lib/obey") - :arguments (list "-c" S))) - -#+ (and :lucid :unix) -(defun delete-directory (dirname) - (system:run-aix-program "rm" :arguments (list "-r" dirname))) - -#+ (and :lucid :unix) -(defun move-file (namestring1 namestring2) - (system:run-aix-program "mv" :arguments (list namestring1 namestring2))) - -#+ (and :lucid :unix) -(defun copy-lib-directory (name1 name2) - (makedir name2) - (system:run-aix-program "sh" :arguments - (list "-c" (concat "cp " name1 "/* " name2)))) - -#+ (and :lucid :unix) -(defun copy-file (namestring1 namestring2) - (system:run-aix-program "cp" :arguments (list namestring1 namestring2))) - - -#+(or :sbcl :clisp) -(defun obey(s) (|runCommand| s)) diff --git a/src/interp/patches.lisp b/src/interp/patches.lisp index 315b5649..77948c16 100644 --- a/src/interp/patches.lisp +++ b/src/interp/patches.lisp @@ -84,8 +84,8 @@ (defvar |$internalHistoryTable| ()) (defun |cpCms| (prefix &optional (string (|getSystemCommandLine|))) (setq string (concat prefix string)) - (if (equal string "") (obey "sh") - (obey string)) + (if (equal string "") (|runCommand| "sh") + (|runCommand| string)) (|terminateSystemCommand|)) (setq *print-escape* nil) ;; so stringimage doesn't escape idents? #+(and :GCL :IEEE-FLOATING-POINT ) @@ -127,7 +127,7 @@ (t (spad input-file))))) (defun /EF (&rest foo) - (obey (concat "vi " (namestring (make-input-filename /EDITFILE))))) + (|runCommand| (concat "vi " (namestring (make-input-filename /EDITFILE))))) ;; non-interactive restarts... (defun restart0 () @@ -276,7 +276,7 @@ (defun |waitForViewport| () (progn (do () - ((not (zerop (obey + ((not (zerop (|runCommand| (concat "ps " |$ViewportProcessToWatch| diff --git a/src/interp/spad.lisp b/src/interp/spad.lisp index 8967781b..914bb45d 100644 --- a/src/interp/spad.lisp +++ b/src/interp/spad.lisp @@ -171,10 +171,10 @@ ; SYSTEM COMMANDS ;************************************************************************ -(defun CLEARDATABASE () (OBEY "ERASE MODEMAP DATABASE")) +(defun CLEARDATABASE () (|runCommand| "ERASE MODEMAP DATABASE")) (defun erase (FN FT) - (OBEY (STRCONC "ERASE " (STRINGIMAGE FN) " " (STRINGIMAGE FT)))) + (|runCommand| (STRCONC "ERASE " (STRINGIMAGE FN) " " (STRINGIMAGE FT)))) (defun READLISP (UPPER_CASE_FG) (let (v expr val ) @@ -220,7 +220,7 @@ (|terminateSystemCommand|) (|spadPrompt|)) -(defun CPSAY (X) (let (n) (if (EQ 0 (setq N (OBEY X))) NIL (PRINT N)))) +(defun CPSAY (X) (let (n) (if (EQ 0 (setq N (|runCommand| X))) NIL (PRINT N)))) (defun |fin| () (SETQ *EOF* 'T) diff --git a/src/interp/util.lisp b/src/interp/util.lisp index 18bc4788..4243b8a4 100644 --- a/src/interp/util.lisp +++ b/src/interp/util.lisp @@ -187,7 +187,7 @@ ;; of the information in an NRLIB is now kept in the daase files. Thus ;; we lift the FOO.NRLIB/code.o to FOO.o in the final system. (defun lift-NRLIB-name (f) - (obey (concat "cp " f "/code.o " (subseq f 0 (position #\. f)) ".o")) + (|runCommand| (concat "cp " f "/code.o " (subseq f 0 (position #\. f)) ".o")) nil) ;; Translate a directory of boot code to common lisp if the boot code @@ -217,9 +217,9 @@ ;; set of functions that construct TAGS files for Axiom. (defun make-tags-file () (|changeDirectory| "/tmp") - (obey (concat "etags " (|makeAbsoluteFilename| "../../src/interp/*.lisp"))) + (|runCommand| (concat "etags " (|makeAbsoluteFilename| "../../src/interp/*.lisp"))) (spadtags-from-directory "../../src/interp" "boot") - (obey "cat /tmp/boot.TAGS >> /tmp/TAGS")) + (|runCommand| "cat /tmp/boot.TAGS >> /tmp/TAGS")) (defun spadtags-from-directory (dir type) (let* ((direc (make-directory dir)) @@ -666,7 +666,7 @@ (concatenate 'string out "/" (pathname-name lib) ".NRLIB/index.KAF*")) (unless (probe-file mntlib) (format t "creating directory ~a~%" mntlib) - (obey (concatenate 'string "cp -pr " (namestring lib) " " out)) + (|runCommand| (concatenate 'string "cp -pr " (namestring lib) " " out)) (when (probe-file (concatenate 'string mntlib "/code." stype)) (delete-file (concatenate 'string mntlib "/code." stype)))) (setq intkafdate (and (probe-file intkaf) (file-write-date intkaf))) @@ -674,7 +674,7 @@ (when intkafdate (unless (and mntkafdate (> mntkafdate intkafdate)) (format t "~©ing ~s to ~s" intkaf mntkaf) - (obey + (|runCommand| (concatenate 'string "cp " (namestring intkaf) " " (namestring mntkaf))))) (setq lspdate (and (probe-file dotlsp) (file-write-date dotlsp))) diff --git a/src/interp/vmlisp.lisp b/src/interp/vmlisp.lisp index 76b52318..0d3f8522 100644 --- a/src/interp/vmlisp.lisp +++ b/src/interp/vmlisp.lisp @@ -1893,20 +1893,6 @@ ()) -#+(and :Lucid (not :ibm/370)) -(defun OBEY (S) - (system::run-aix-program (|makeAbsoluteFilename| "/lib/obey") - :arguments (list "-c" S))) -#+:cmulisp -(defun OBEY (S) - (ext:run-program (|makeAbsoluteFilename| "/lib/obey") - (list "-c" S) :input t :output t)) -#+(OR IBCL KCL :CCL) -(defun OBEY (S) (SYSTEM S)) - -#+:allegro -(defun OBEY (S) (excl::run-shell-command s)) - (defun RE-ENABLE-INT (number-of-handler) number-of-handler) |