From da7377ed2063b1f80a451e2be1e0de1ae142b80b Mon Sep 17 00:00:00 2001 From: dos-reis Date: Fri, 4 Jul 2008 00:42:29 +0000 Subject: * interp/Makefile.pamphlet (OBJS): Don't include nruntime.$(FASLEXT). (nruntime.$(FASLEXT)): Remove rule. * interp/g-util.boot (getShellEntry): Move from interp/nruntime.boot. (setShellEntry): Likewise. * interp/i-util.boot (devaluateDeeply): Likewise. * interp/lisplib.boot (unloadOneConstructor): Likewise. * interp/nrungo.boot (lookupDisplay): Likewise. (isIntantiated): Likewise * interp/package.boot (isCategoryPackageName): Likewise. * interp/nruntime.boot: Remove. --- src/ChangeLog | 13 ++++++++ src/interp/Makefile.in | 3 +- src/interp/Makefile.pamphlet | 3 +- src/interp/g-util.boot | 12 +++++++- src/interp/i-util.boot | 5 +++ src/interp/lisplib.boot | 6 +++- src/interp/nrungo.boot | 14 +++++++++ src/interp/nruntime.boot | 73 -------------------------------------------- src/interp/package.boot | 6 +++- 9 files changed, 55 insertions(+), 80 deletions(-) delete mode 100644 src/interp/nruntime.boot diff --git a/src/ChangeLog b/src/ChangeLog index c2e51102..4927e3e9 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -1,3 +1,16 @@ +2008-07-03 Gabriel Dos Reis + + * interp/Makefile.pamphlet (OBJS): Don't include nruntime.$(FASLEXT). + (nruntime.$(FASLEXT)): Remove rule. + * interp/g-util.boot (getShellEntry): Move from interp/nruntime.boot. + (setShellEntry): Likewise. + * interp/i-util.boot (devaluateDeeply): Likewise. + * interp/lisplib.boot (unloadOneConstructor): Likewise. + * interp/nrungo.boot (lookupDisplay): Likewise. + (isIntantiated): Likewise + * interp/package.boot (isCategoryPackageName): Likewise. + * interp/nruntime.boot: Remove. + 2008-07-03 Bill Page Gabriel Dos Reis diff --git a/src/interp/Makefile.in b/src/interp/Makefile.in index d0342e43..4ba8c7ac 100644 --- a/src/interp/Makefile.in +++ b/src/interp/Makefile.in @@ -56,7 +56,7 @@ OBJS= types.$(FASLEXT) sys-os.$(FASLEXT) \ newaux.$(FASLEXT) newfort.$(FASLEXT) \ nlib.$(FASLEXT) nrunfast.$(FASLEXT) \ nrungo.$(FASLEXT) nrunopt.$(FASLEXT) \ - nruntime.$(FASLEXT) osyscmd.$(FASLEXT) \ + osyscmd.$(FASLEXT) \ packtran.$(FASLEXT) pathname.$(FASLEXT) \ pf2sex.$(FASLEXT) pile.$(FASLEXT) \ posit.$(FASLEXT) property.$(FASLEXT) \ @@ -319,7 +319,6 @@ nrunopt.$(FASLEXT): c-util.$(FASLEXT) nrunfast.$(FASLEXT): c-util.$(FASLEXT) nruncomp.$(FASLEXT): c-util.$(FASLEXT) nrungo.$(FASLEXT): c-util.$(FASLEXT) -nruntime.$(FASLEXT): c-util.$(FASLEXT) template.$(FASLEXT): c-util.$(FASLEXT) iterator.$(FASLEXT): g-util.$(FASLEXT) define.$(FASLEXT): cattable.$(FASLEXT) category.$(FASLEXT) c-util.$(FASLEXT) diff --git a/src/interp/Makefile.pamphlet b/src/interp/Makefile.pamphlet index 2b89f360..ff974c41 100644 --- a/src/interp/Makefile.pamphlet +++ b/src/interp/Makefile.pamphlet @@ -135,7 +135,7 @@ OBJS= types.$(FASLEXT) sys-os.$(FASLEXT) \ newaux.$(FASLEXT) newfort.$(FASLEXT) \ nlib.$(FASLEXT) nrunfast.$(FASLEXT) \ nrungo.$(FASLEXT) nrunopt.$(FASLEXT) \ - nruntime.$(FASLEXT) osyscmd.$(FASLEXT) \ + osyscmd.$(FASLEXT) \ packtran.$(FASLEXT) pathname.$(FASLEXT) \ pf2sex.$(FASLEXT) pile.$(FASLEXT) \ posit.$(FASLEXT) property.$(FASLEXT) \ @@ -607,7 +607,6 @@ nrunopt.$(FASLEXT): c-util.$(FASLEXT) nrunfast.$(FASLEXT): c-util.$(FASLEXT) nruncomp.$(FASLEXT): c-util.$(FASLEXT) nrungo.$(FASLEXT): c-util.$(FASLEXT) -nruntime.$(FASLEXT): c-util.$(FASLEXT) template.$(FASLEXT): c-util.$(FASLEXT) iterator.$(FASLEXT): g-util.$(FASLEXT) define.$(FASLEXT): cattable.$(FASLEXT) category.$(FASLEXT) c-util.$(FASLEXT) diff --git a/src/interp/g-util.boot b/src/interp/g-util.boot index e82e8edb..0d52aee5 100644 --- a/src/interp/g-util.boot +++ b/src/interp/g-util.boot @@ -728,11 +728,21 @@ gensymInt g == for i in 2..#p-1 repeat n := 10 * n + charDigitVal p.i n -++ +++ Returns a newly allocated domain shell (a simple vector) of length `n'. newShell: %Short -> SIMPLE_-ARRAY newShell n == MAKE_-ARRAY(n,KEYWORD::INITIAL_-ELEMENT,nil) +++ fetchs the item in the nth entry of a domain shell. +getShellEntry: (%Shell,%Short) -> %Thing +getShellEntry(s,i) == + SVREF(s,i) + +++ sets the nth nth entry of a domain shell to an item. +setShellEntry: (%Shell,%Short,%Thing) -> %Thing +setShellEntry(s,i,t) == + SETF(SVREF(s,i),t) + -- Push into the BOOT package when invoked in batch mode. AxiomCore::$sysScope := '"BOOT" diff --git a/src/interp/i-util.boot b/src/interp/i-util.boot index fceb9cfe..0377cef7 100644 --- a/src/interp/i-util.boot +++ b/src/interp/i-util.boot @@ -142,6 +142,11 @@ devaluate d == devaluateList l == [devaluate d for d in l] +devaluateDeeply x == + VECP x => devaluate x + atom x => x + [devaluateDeeply y for y in x] + --HasAttribute(domain,attrib) == ----> -- isNewWorldDomain domain => newHasAttribute(domain,attrib) diff --git a/src/interp/lisplib.boot b/src/interp/lisplib.boot index 1a3f911b..6347f423 100644 --- a/src/interp/lisplib.boot +++ b/src/interp/lisplib.boot @@ -278,7 +278,11 @@ setAutoLoadProperty(name) == -- abb := constructor? name REMPROP(name,'LOADED) SETF(SYMBOL_-FUNCTION name,mkAutoLoad(constructor? name, name)) - + +unloadOneConstructor(cnam,fn) == + REMPROP(cnam,'LOADED) + SETF(SYMBOL_-FUNCTION cnam,mkAutoLoad(fn, cnam)) + --% Compilation compileConstructorLib(l,op,editFlag,traceFlag) == diff --git a/src/interp/nrungo.boot b/src/interp/nrungo.boot index 8c927a0c..99c302e2 100644 --- a/src/interp/nrungo.boot +++ b/src/interp/nrungo.boot @@ -38,6 +38,20 @@ namespace BOOT ++ $insideCompileBodyIfTrue := false +--% Monitoring functions + +lookupDisplay(op,sig,vectorOrForm,suffix) == + null $NRTmonitorIfTrue => nil + prefix := (suffix = '"" => ">"; "<") + sayBrightly + concat(prefix,formatOpSignature(op,sig), + '" from ", prefix2String devaluateDeeply vectorOrForm,suffix) + +isInstantiated [op,:argl] == + u:= lassocShiftWithFunction(argl,HGET($ConstructorCache,op),'domainEqualList) + => CDRwithIncrement u + nil + --======================================================= -- Lookup From Interpreter --======================================================= diff --git a/src/interp/nruntime.boot b/src/interp/nruntime.boot deleted file mode 100644 index 4861e7b0..00000000 --- a/src/interp/nruntime.boot +++ /dev/null @@ -1,73 +0,0 @@ --- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd. --- All rights reserved. --- Copyright (C) 2007, 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 c_-util -namespace BOOT - -++ fetchs the item in the nth entry of a domain shell. -getShellEntry: (%Shell,%Short) -> %Thing -getShellEntry(s,i) == - SVREF(s,i) - -++ sets the nth nth entry of a domain shell to an item. -setShellEntry: (%Shell,%Short,%Thing) -> %Thing -setShellEntry(s,i,t) == - SETF(SVREF(s,i),t) - -unloadOneConstructor(cnam,fn) == - REMPROP(cnam,'LOADED) - SETF(SYMBOL_-FUNCTION cnam,mkAutoLoad(fn, cnam)) - -devaluateDeeply x == - VECP x => devaluate x - atom x => x - [devaluateDeeply y for y in x] - -lookupDisplay(op,sig,vectorOrForm,suffix) == - null $NRTmonitorIfTrue => nil - prefix := (suffix = '"" => ">"; "<") - sayBrightly - concat(prefix,formatOpSignature(op,sig), - '" from ", prefix2String devaluateDeeply vectorOrForm,suffix) - -isInstantiated [op,:argl] == - u:= lassocShiftWithFunction(argl,HGET($ConstructorCache,op),'domainEqualList) - => CDRwithIncrement u - nil - -isCategoryPackageName nam == - p := PNAME opOf nam - p.(MAXINDEX p) = char '_& - - diff --git a/src/interp/package.boot b/src/interp/package.boot index 131ba589..baf88ac7 100644 --- a/src/interp/package.boot +++ b/src/interp/package.boot @@ -39,7 +39,11 @@ isPackageFunction() == -- called by compile/putInLocalDomainReferences --+ nil - + +isCategoryPackageName nam == + p := PNAME opOf nam + p.(MAXINDEX p) = char '_& + processFunctorOrPackage(form,signature,data,localParList,m,e) == --+ processFunctor(form,signature,data,localParList,e) -- cgit v1.2.3