aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authordos-reis <gdr@axiomatics.org>2009-02-10 00:13:01 +0000
committerdos-reis <gdr@axiomatics.org>2009-02-10 00:13:01 +0000
commit16ccc3d066711098e15ee8e678b249e0b9379990 (patch)
treeb75df077193e50fdfeb14ebd509c4a28ba8fa436 /src
parenteae3a083200c3d0d33851fac82cd9ef8a134d0c9 (diff)
downloadopen-axiom-16ccc3d066711098e15ee8e678b249e0b9379990.tar.gz
* interp/i-spec2.boot (upDollar): Fix thinko.
* interp/compat.boot (editFile): Tidy. * interp/br-op2.boot (modemap2Sig): Don't update $badStack.xo
Diffstat (limited to 'src')
-rw-r--r--src/ChangeLog6
-rw-r--r--src/interp/br-op2.boot3
-rw-r--r--src/interp/compat.boot9
-rw-r--r--src/interp/i-spec2.boot4
-rw-r--r--src/interp/i-syscmd.boot22
-rw-r--r--src/lisp/Makefile.in3
-rw-r--r--src/lisp/core.lisp.in3
7 files changed, 31 insertions, 19 deletions
diff --git a/src/ChangeLog b/src/ChangeLog
index 681f5356..79db4323 100644
--- a/src/ChangeLog
+++ b/src/ChangeLog
@@ -1,3 +1,9 @@
+2009-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu>
+
+ * interp/i-spec2.boot (upDollar): Fix thinko.
+ * interp/compat.boot (editFile): Tidy.
+ * interp/br-op2.boot (modemap2Sig): Don't update $badStack.xo
+
2009-02-08 Gabriel Dos Reis <gdr@cs.tamu.edu>
* interp/i-spec2.boot (constantInDomain?): Move from i-coerce.boot.
diff --git a/src/interp/br-op2.boot b/src/interp/br-op2.boot
index 9ef668ee..f4d259dd 100644
--- a/src/interp/br-op2.boot
+++ b/src/interp/br-op2.boot
@@ -1,6 +1,6 @@
-- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd.
-- All rights reserved.
--- Copyright (C) 2007, Gabriel Dos Reis.
+-- Copyright (C) 2007-2009, Gabriel Dos Reis.
-- All rights reserved.
--
-- Redistribution and use in source and binary forms, with or without
@@ -578,7 +578,6 @@ modemap2Sig(op,mm) ==
pp predList
pp nsig
pp mm
- $badStack := [[op, mm], :$badStack]
--pause nsig
[predList, origin, substitute("%", origin, nsig)]
diff --git a/src/interp/compat.boot b/src/interp/compat.boot
index bdda2846..b5082786 100644
--- a/src/interp/compat.boot
+++ b/src/interp/compat.boot
@@ -57,9 +57,12 @@ system() ==
terminateSystemCommand()
editFile file ==
- MEMQ(INTERN('"WIN32",FIND_-PACKAGE("KEYWORD")),_*FEATURES_*) =>
- runCommand STRCONC('"notepad ", namestring pathname file)
- runCommand STRCONC('"$AXIOM/lib/SPADEDIT ",namestring pathname file)
+ editProg :=
+ %hasFeature KEYWORD::WIN32 => '"notepad"
+ prog := getEnv '"EDITOR" => prog
+ # $EditorProgram ^= 0 => $EditorProgram
+ return nil -- FIXME: Should we not notify user?
+ runCommand STRCONC(editProg,'" ",namestring pathname file)
makeBigFloat(mantissa,expon) ==
[$BFtag,mantissa,:expon]
diff --git a/src/interp/i-spec2.boot b/src/interp/i-spec2.boot
index 38c1f021..0f158a2b 100644
--- a/src/interp/i-spec2.boot
+++ b/src/interp/i-spec2.boot
@@ -1,6 +1,6 @@
-- Copyright (c) 1991-2002, The Numerical ALgorithms Group Ltd.
-- All rights reserved.
--- Copyright (C) 2007-2008, Gabriel Dos Reis.
+-- Copyright (C) 2007-2009, Gabriel Dos Reis.
-- All rights reserved.
--
-- Redistribution and use in source and binary forms, with or without
@@ -123,7 +123,7 @@ upDollar t ==
type := constantInDomain?([f],t) =>
type ^= true => findConstantInDomain(op,f,type,t)
-- Ambiguous constant. FIXME: try to narrow before giving up.
- throwKeyedMsg("S2IB0008h",[c,t])
+ throwKeyedMsg("S2IB0008h",[f,t])
findUniqueOpInDomain(op,f,t)
nargs := #rest form
diff --git a/src/interp/i-syscmd.boot b/src/interp/i-syscmd.boot
index c936105e..ec6a4d2e 100644
--- a/src/interp/i-syscmd.boot
+++ b/src/interp/i-syscmd.boot
@@ -833,8 +833,8 @@ compileSpad2Cmd args ==
throwKeyedMsg("S2IZ0036",[STRCONC('")",object2String optname)])
$InteractiveMode : local := nil
- -- avoid transformations based on syntax only
- $normalizeTree := false
+ -- avoid Boolean semantics transformations based on syntax only
+ $normalizeTree: local := false
if translateOldToNew then
spad2AsTranslatorAutoloadOnceTrigger()
sayKeyedMsg("S2IZ0085", nil)
@@ -855,8 +855,6 @@ convertSpadToAsFile path ==
$globalMacroStack : local := nil -- for spad -> as translator
$abbreviationStack: local := nil -- for spad -> as translator
$macrosAlreadyPrinted: local := nil -- for spad -> as translator
- SETQ($badStack, nil) --ditto TEMP to check for bad code
- $newPaths: local := true --ditto TEMP
$abbreviationsAlreadyPrinted: local := nil -- for spad -> as translator
$convertingSpadFile : local := true
$options: local := '((nolib)) -- translator shouldn't create nrlibs
@@ -1142,8 +1140,8 @@ fixObjectForPrinting(v) ==
v
displayProperties(option,l) ==
- $dependentAlist : local
- $dependeeAlist : local
+ $dependentAlist : local := nil
+ $dependeeAlist : local := nil
[opt,:vl]:= (l or ['properties])
imacs := getInterpMacroNames()
pmacs := getParserMacroNames()
@@ -1280,7 +1278,7 @@ editSpad2Cmd l ==
l:=
null l => _/EDITFILE
CAR l
- l := pathname l
+ l := pathname STRING l
oldDir := pathnameDirectory l
fileTypes :=
pathnameType l => [pathnameType l]
@@ -1326,7 +1324,7 @@ newHelpSpad2Cmd args ==
null (helpFile := MAKE_-INPUT_-FILENAME [narg,'HELPSPAD,'_*]) => NIL
$useFullScreenHelp =>
- runCommand STRCONC('"$AXIOM/lib/SPADEDIT ",namestring helpFile)
+ editFile helpFile
true
filestream := MAKE_-INSTREAM(helpFile)
@@ -2290,7 +2288,7 @@ reportCount () ==
--% )library
library args ==
origDir := GET_-CURRENT_-DIRECTORY()
- $newConlist := []
+ $newConlist: local := nil
-- Users typically specify abbreviations without quotes.
LOCALDATABASE([STRING a for a in args],$options)
extendLocalLibdb $newConlist
@@ -2600,9 +2598,9 @@ spool filename ==
SETQ(_*TRACE_-OUTPUT_*,_*STANDARD_-OUTPUT_*)
TERPRI()
resetHighlight()
- PROBE_-FILE car filename =>
- systemError CONCAT('"file ", STRING car filename, '" already exists")
- DRIBBLE car filename
+ PROBE_-FILE STRING first filename =>
+ systemError CONCAT('"file ", STRING first filename, '" already exists")
+ DRIBBLE STRING first filename
SETQ(_*TRACE_-OUTPUT_*,_*STANDARD_-OUTPUT_*)
TERPRI()
clearHighlight()
diff --git a/src/lisp/Makefile.in b/src/lisp/Makefile.in
index c187df70..94d88729 100644
--- a/src/lisp/Makefile.in
+++ b/src/lisp/Makefile.in
@@ -128,6 +128,8 @@ $(oa_base_lisp_linkset): $(oa_target_lispdir)/core.$(LNKEXT)
axiom_optimize_options = @axiom_optimize_options@
+oa_editor = @oa_editor@
+
void_type = @void_type@
char_type = @char_type@
int_type = @int_type@
@@ -138,6 +140,7 @@ string_type = @string_type@
edit = sed \
-e 's|@open_axiom_installdir[@]|$(open_axiom_installdir)|g' \
-e 's|@axiom_optimize_options[@]|$(axiom_optimize_options)|g' \
+ -e 's|@oa_editor[@]|$(oa_editor)|g' \
-e 's|@host[@]|$(host)|g' \
-e 's|@build[@]|$(build)|g' \
-e 's|@target[@]|$(target)|g' \
diff --git a/src/lisp/core.lisp.in b/src/lisp/core.lisp.in
index 6cf8744d..53643489 100644
--- a/src/lisp/core.lisp.in
+++ b/src/lisp/core.lisp.in
@@ -129,6 +129,7 @@
;; Lisp compiler optimization settings.
(defconstant |$LispOptimizeOptions|
'(@axiom_optimize_options@))
+
(proclaim '(optimize @axiom_optimize_options@))
;; Return true if the full OpenAxiom algebra system is completed
@@ -195,6 +196,8 @@
(cond (|$useDynamicLink| "@SHREXT@")
(t ".@LIBEXT@")))
+(defconstant |$EditorProgram| "@oa_editor@")
+
;; Base name of the native core runtime library
(defconstant |$CoreLibName|
"open-axiom-core")