From c33280c0ecdadbb3893e5fd112e2605fa890108d Mon Sep 17 00:00:00 2001 From: dos-reis Date: Sat, 19 Jan 2008 13:50:42 +0000 Subject: * interp/construc.lisp (|loadLibNoUpdate|): Fix thinko in initial value for empty environments. * interp/database.boot (rebuildCDT): Likewise. * interp/i-map.boot (addDefMap): Likewise. (rewriteMap0): Likewise. (rewriteMap1): Likewise. (compileDeclaredMap): Likewise. (analyzeUndeclaredMap): Likewise. * interp/i-spec1.boot: Likewise. * interp/i-syscmd.boot (reportOperations): Likewise. * interp/i-toplev.boot (interpret): Likewise. * interp/lisplib.boot (loadLib): Likewise. (loadLibNoUpdate): Likewise. * interp/setvars.boot (resetWorkspaceVariables): Likewise. * interp/spad.lisp ($e): Move definition to sys-globals.boot. ($env): Likewise. * interp/sys-globals.boot ($e): Define here. ($env): Likewise. * algebra/any.spad.pamphlet (ObjectProperty): New. (Binding): Likewise. (Contour): Likewise. (Scope): Likewise. (Environment): Likewise. * algebra/exposed.lsp.pamphlet: Expose ObjectProperty, Binding, Contour, Scope, and Environment. * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include OBJPROP.o. (axiom_algebra_layer_1): Include BINDING.o (axiom_algebra_layer_2): Include CONTOUR.o (axiom_algebra_layer_3): Include SCOPE.o (axiom_algebra_layer_4): Include ENV.o * share/algebra: Update database. --- src/interp/construc.lisp | 2 +- src/interp/database.boot | 4 ++-- src/interp/i-map.boot | 10 +++++----- src/interp/i-spec1.boot | 2 +- src/interp/i-syscmd.boot | 2 +- src/interp/i-toplev.boot | 2 +- src/interp/lisplib.boot | 4 ++-- src/interp/setvars.boot | 6 +++--- src/interp/spad.lisp | 2 -- src/interp/sys-globals.boot | 4 +++- 10 files changed, 19 insertions(+), 19 deletions(-) (limited to 'src/interp') diff --git a/src/interp/construc.lisp b/src/interp/construc.lisp index f038d78a..6e8e1373 100644 --- a/src/interp/construc.lisp +++ b/src/interp/construc.lisp @@ -283,7 +283,7 @@ (|dependentClosure| (list cname)))))) (|installConstructor| cname kind) (makeprop libName 'loaded fullLibName) - (when |$InteractiveMode| (setq |$CategoryFrame| (list (list nil)))) + (when |$InteractiveMode| (setq |$CategoryFrame| (list (list (list nil))))) (|stopTimingProcess| '|load|) t)) diff --git a/src/interp/database.boot b/src/interp/database.boot index 24ef8c3d..aef6f6fa 100644 --- a/src/interp/database.boot +++ b/src/interp/database.boot @@ -101,10 +101,10 @@ augmentLisplibModemapsFromFunctor(form,opAlist,signature) == rebuildCDT(filemode) == clearConstructorAndLisplibCaches() $databaseQueue:local :=nil - $e: local := [[NIL]] -- We may need to evaluate Categories + $e: local := [$EmptyEnvironment] -- We may need to evaluate Categories buildDatabase(filemode,false) $IOindex:= 1 - $InteractiveFrame:= [[NIL]] + $InteractiveFrame:= [$EmptyEnvironment] 0 buildDatabase(filemode,expensive) == diff --git a/src/interp/i-map.boot b/src/interp/i-map.boot index fd30b539..d6e883bc 100644 --- a/src/interp/i-map.boot +++ b/src/interp/i-map.boot @@ -117,7 +117,7 @@ addDefMap(['DEF,lhs,mapsig,.,rhs],pred) == someDecs := nil allDecs := true mapmode := ['Mapping] - $env:local := [[NIL]] + $env:local := [$EmptyEnvironment] $eval:local := true --generate code-- don't just type analyze $genValue:local := true --evaluate all generated code for d in mapsig repeat @@ -580,7 +580,7 @@ rewriteMap0(op,opName,argl) == tar:= nil argTypes:= nil get(opName,'mode,$e) is ['Mapping,tar,:argTypes] - $env: local := [[NIL]] + $env: local := [$EmptyEnvironment] for arg in argl for var in $FormalMapVariableList repeat if argTypes then @@ -613,7 +613,7 @@ rewriteMap1(opName,argl,sig) == for arg in reverse argl repeat v := getValue arg evArgl := [objNew(objVal v, objMode v),:evArgl] - $env : local := [[NIL]] + $env : local := [$EmptyEnvironment] for arg in argl for evArg in evArgl for var in $FormalMapVariableList repeat if argTypes then @@ -671,7 +671,7 @@ compileDeclaredMap(op,sig,mapDef) == -- creates a local modemap and puts it into the environment $localVars: local := nil $freeVars: local := nil - $env:local:= [[NIL]] + $env:local:= [$EmptyEnvironment] parms:=[var for var in $FormalMapVariableList for m in CDR sig] for m in CDR sig for var in parms repeat $env:= put(var,'mode,m,$env) @@ -787,7 +787,7 @@ analyzeUndeclaredMap(op,argTypes,mapDef,$mapList) == -- Computes the signature of the map named op, and compiles the body $freeVars:local := NIL $localVars: local := NIL - $env:local:= [[NIL]] + $env:local:= [$EmptyEnvironment] $mapList := [op,:$mapList] parms:=[var for var in $FormalMapVariableList for m in argTypes] for m in argTypes for var in parms repeat diff --git a/src/interp/i-spec1.boot b/src/interp/i-spec1.boot index 064c7e58..d5571fac 100644 --- a/src/interp/i-spec1.boot +++ b/src/interp/i-spec1.boot @@ -76,7 +76,7 @@ upADEF t == -- $localVars: local := nil -- $freeVars: local := nil --- $env: local := [[NIL]] +-- $env: local := [$EmptyEnvironment] $compilingMap : local := true -- if there is a predicate, merge it in with the body diff --git a/src/interp/i-syscmd.boot b/src/interp/i-syscmd.boot index 6b5a52fd..582b5f66 100644 --- a/src/interp/i-syscmd.boot +++ b/src/interp/i-syscmd.boot @@ -2259,7 +2259,7 @@ showSpad2Cmd l == reportOperations(oldArg,u) == -- u might be an uppercased version of oldArg - $env:local := [[NIL]] + $env:local := [$EmptyEnvironment] $eval:local := true --generate code-- don't just type analyze $genValue:local := true --evaluate all generated code null u => nil diff --git a/src/interp/i-toplev.boot b/src/interp/i-toplev.boot index c7b1231d..0c40b23d 100644 --- a/src/interp/i-toplev.boot +++ b/src/interp/i-toplev.boot @@ -305,7 +305,7 @@ interpretTopLevel(x, posnForm) == interpret(x, :restargs) == posnForm := if PAIRP restargs then CAR restargs else restargs --type analyzes and evaluates expression x, returns object - $env:local := [[NIL]] + $env:local := [$EmptyEnvironment] $eval:local := true --generate code-- don't just type analyze $genValue:local := true --evaluate all generated code interpret1(x,nil,posnForm) diff --git a/src/interp/lisplib.boot b/src/interp/lisplib.boot index fa7b3fa7..056a9603 100644 --- a/src/interp/lisplib.boot +++ b/src/interp/lisplib.boot @@ -160,7 +160,7 @@ loadLib cname == else REMPROP(cname,'NILADIC) MAKEPROP(cname,'LOADED,fullLibName) - if $InteractiveMode then $CategoryFrame := [[nil]] + if $InteractiveMode then $CategoryFrame := [$EmptyEnvironment] stopTimingProcess 'load 'T @@ -178,7 +178,7 @@ loadLibNoUpdate(cname, libName, fullLibName) == clearConstructorCache cname installConstructor(cname,kind) MAKEPROP(cname,'LOADED,fullLibName) - if $InteractiveMode then $CategoryFrame := [[nil]] + if $InteractiveMode then $CategoryFrame := [$EmptyEnvironment] stopTimingProcess 'load 'T diff --git a/src/interp/setvars.boot b/src/interp/setvars.boot index 37358ef0..4aee9c65 100644 --- a/src/interp/setvars.boot +++ b/src/interp/setvars.boot @@ -134,7 +134,7 @@ initializeSetVariables (setTree) == st = 'TREE => initializeSetVariables(setData.setLeaf) -resetWorkspaceVariables () == +resetWorkspaceVariables() == -- this replaces def in DEBUG LISP -- this function resets many workspace variables to their default -- values. Some things are reset by start and not reset by restart. @@ -158,8 +158,8 @@ resetWorkspaceVariables () == SETQ($dependeeClosureAlist , NIL) SETQ($IOindex , 1 ) SETQ($coerceIntByMapCounter , 0 ) - SETQ($e , [[NIL]]) - SETQ($env , [[NIL]]) + SETQ($e , [$EmptyEnvironment]) + SETQ($env , [$EmptyEnvironment]) -- many variables set by the following diff --git a/src/interp/spad.lisp b/src/interp/spad.lisp index cde66cdc..3f2c2fcb 100644 --- a/src/interp/spad.lisp +++ b/src/interp/spad.lisp @@ -60,8 +60,6 @@ (defvar |$Representation| nil "checked in compNoStacking") (defvar |$definition| nil "checked in DomainSubstitutionFunction") (defvar |$Attributes| nil "global attribute list used in JoinInner") -(defvar |$env| nil "checked in isDomainValuedVariable") -(defvar |$e| nil "checked in isDomainValuedVariable") (defvar |$getPutTrace| nil) (defvar |$specialCaseKeyList| nil "checked in optCall") (defvar |$formulaFormat| nil "if true produce script formula output") diff --git a/src/interp/sys-globals.boot b/src/interp/sys-globals.boot index 1cd31a55..3ee0367c 100644 --- a/src/interp/sys-globals.boot +++ b/src/interp/sys-globals.boot @@ -160,7 +160,9 @@ $insideWhereIfTrue := false $instantRecord := MAKE_-HASHTABLE "ID" ++ -$InteractiveFrame := [[nil]] +$InteractiveFrame := [$EmptyEnvironment] +$e := [$EmptyEnvironment] +$env := [$EmptyEnvironment] ++ $InteractiveMode := false -- cgit v1.2.3