2008-03-26 Gabriel Dos Reis * lib/Makefile.in: Explicitly build both static and shared version of libopen-axiom-core. * lisp/Makefile.in: Tidy. * lisp/core.lisp.in: Export $NativeModuleExt. * clef/Makefile.in: Use only static archive. * graph/view2D/Makefile.in: Likewise. * graph/view3D/Makefile.in: Likewise. * graph/viewAlone/Makefile.in: Likewise. * graph/viewman/Makefile.in: Likewise. * hyper/Makefile.in: Likewise. * sman/Makefile.in: Likewise. * boot/Makefile.in: Place bootsys binary in staged starget directory. * boot/translator.boot (loadSystemRuntimeCore): Tidy. * interp/Makefile.pamphlet: Use bootsys from staged target dir. 2008-03-25 Gabriel Dos Reis * interp/bootlex.lisp: Import "sys-globals". Consistently use $InputStream and $OutputStream for I/O. * interp/c-util.boot: Likewise. * interp/comp.lisp: Likewise. * interp/compat.boot: Likewise. * interp/debug.lisp: Likewise. * interp/def.lisp: Likewise. * interp/g-error.boot: Likewise. * interp/i-toplev.boot: Likewise. * interp/int-top.boot: Likewise. * interp/intfile.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/macros.lisp: Likewise. * interp/metalex.lisp: Likewise. * interp/msgdb.boot: Likewise. * interp/patches.lisp: Likewise. * interp/preparse.lisp: Likewise. * interp/server.boot: Likewise. * interp/spad-parser.boot: Likewise. * interp/spad.lisp: Likewise. * interp/sys-globals.boot: Likewise. * interp/sys-macros.lisp: Likewise. * interp/sys-os.boot: Likewise. * interp/unlisp.lisp: Likewise. * interp/vmlisp.lisp: Likewise. * interp/Makefile.pamphlet (bootlex.$(FASLEXT)): Require sys-globals.$(FASLEXT) too. (vmlisp.$(FASLEXT)): Likewise. 2008-03-24 Gabriel Dos Reis * interp/vmlisp.lisp (DEFINE-FUNCTION): Move boot-pkg.lisp. (BPINAME): Tidy. * interp/slam.boot (reportFunctionCompilation): Tidy. * interp/daase.lisp: Don't use anachronistic SET. * interp/debug.lisp: Likewise. * interp/br-saturn.boot: Substitute GENSYM for GENTEMP. * interp/fortcall.boot: Likewise. * interp/ht-util.boot: Likewise. * interp/pf2sex.boot: Likewise. * interp/server.boot: Likewise. * interp/buildom.boot (UnionEqual): Tidy. (coerceUn2E): Likewise. * interp/boot-pkg.lisp (define-function): Define here. * interp/Makefile.pamphlet (diagnostics.$(FASLEXT)): Tidy. (hash.$(FASLEXT)): Likewise. (vmlisp.$(FASLEXT)): Likewise. * interp/diagnostics.boot: Import "types". * interp/hash.lisp: Import "types" instead of "vmlisp". * interp/i-output.boot ($algebraOutput): Move to sys-globals.boot. (ERROROUTSTREAM): Likewise. (ERRORINSTREAM): Likewise. * interp/macros.lisp ($algebraOutputStream): Don't set here. * interp/patches.lisp ($algebraOutputStream): Don't set here. ($texOutputStream): Likewise. ($fortranOutputStream): Likewise. ($texOutputStream): Likewise. ($formulaOutputStream): Likewise. 2008-03-24 Gabriel Dos Reis Add support for SBCL and CLisp. * src/share/algebra: Updata databases. * lisp/core.lisp.in ("AxiomCore"): Export CONCAT. (|Option|): Tidy. (CONCAT): Define here. * lib/cfuns-c.c (oa_system): Define. * interp/types.boot: New. * interp/wi1.boot (doItLet1): Tidy. * interp/vmlisp.lisp: Use *STANDARD-OUTPUT* and *STANDARD-INPUT* instead of *TERMINAL-IO*. (CONCAT): Don't define here. (QESET): Don't convert last argument to a character; it is already a character. (GCMSG): Define for CLisp too. (BPINAME): Likewise. * interp/util.lisp (interp-make-directory): Fix thinko. * interp/unlisp.lisp (LOG10): Don't define here. * interp/trace.boot: Substitute setDynamicBinding for SET. * interp/template.boot: Substitute setDynamicBinding for SET. Substitute newShell for newDomainShell. * interp/sys-utility.boot: Move type definitions to types.boot. (macrop): Tidy. (functionp): Likewise. (setDynamicBinding): New. ($ERASE): Add signature. (loadNativeModule): Don't define here. * interp/sys-os.boot: Tidy definitions. (runCommand): New. * interp/sys-macros.lisp (shoeConcole): Output to *STANDARD-OUTPUT*. * interp/sys-globals.boot ($texOutputStream): Make synonym to *STANDARD-OUTPUT*. * interp/sys-driver.boot: Import "types" instead of "boot-pkg". ($OpenAxiomCoreModuleLoaded): Don't define here. (AxiomCore::%sysInit): Tidy. (systemRootDirectory): Don't define here. (stdStreamIsTerminal): Move to sys-os.boot. * interp/sys-constants.boot ($CategoryNames): Don't include StringCategory. ($DomainNames): Don't include Integer, Float, Symbol, Boolean, String, Expression, List, and Vector. ($BuiltinConstructorNames): New. ($SpecialDomainNames): Don't include List, Union, Record, Vector. ($ConstructorNames): Remove. ($IndexFilename): Rename from *INDEX-FILENAME*. * interp/setvars.boot: Substitute setDynamicBinding for SET. * interp/slam.boot: Likewise. * interp/pspad2.boot (formatDeftranRepper): Tidy. * interp/preparse.lisp (/RP): Use *STANDARD-INPUT* and *STANDARD-OUTPUT* instead of *TERMINAL-IO*. * interp/pathname.boot: Make functions cope with nil paths. * interp/patches.lisp (|$algebraOutputStream|): Set value to *STANDARD-OUTPUT*. * interp/package.boot (processPackage): Substitute newShell for newDomainShell. * interp/obey.lisp (|algebraOutputStream|): Don't set here. (OBEY): Define for CLisp too. * interp/nruncomp.boot: Substitute newShell for newDomainShell. * interp/nrunopt.boot: Likewise. * interp/nlib.lisp (rdefiostream): Tidy. (GETINDEXTABLE): Remove. (GET-INPUT-INDEX-STREAM): Likewise. (GET-IO-INDEX-STREAM): Tidy. (PUTINDEXTABLE): Likewise. * interp/macros.lisp: Use *standard-output* and *standard-input* instead of *terminal-io* throughout. * interp/lisplib.boot (makeConstructorsAutoLoad): Fix thinko. (setAutoLoadProperty): Likewise. (autoLoad): Builtin constructors are always loaded. (getIndexPathname): New. (getAllIndexPathnames): Likewise. (getAllAldorObjectFiles): Likewise. (openIndexFileIfPresent): Likewise. (getIndexTable): Likewise. * interp/i-syscmd.boot (library): Tidy. * interp/i-spec1.boot (compileADEFBody): Substitute setDynamicBinding for SET. * interp/i-object.boot (getBasicObject): Substitute newShell for newDomainShell. * interp/i-map.boot (compileCoerceMap): Substitute setDynamicBinding for SET. * interp/hypertex.boot: Import "types" instead of "boot-pkg". * interp/ht-root.boot: Substitute setDynamicBinding for SET. * interp/ht-util.boot: Likewise. * interp/htsetvar.boot: Likewise. * interp/g-util.boot (newShell): Rename from newDomainShell. * interp/functor.boot: Substitute newShell for newDomainShell. * interp/dq.boot: Import "types" instead of "boot-pkg". * interp/define.boot (compDefine1): Replace $ConstructorNames with $BuiltinConstructorNames. * interp/database.boot (squeezeAll): New. * interp/daase.lisp (asharp): Fix thinko. (get-current-directory): Define for CLisp too. (localdatabase): Tidy. (make-databases): Loose first argument. Don't step over Category's database. Tidy. (write-interpdb): Tidy. (write-browsedb): Likewise. (write-operationdb): Likewise. * interp/compiler.boot (coerceHard): Treat "$" and $functorForm as synonymous in implicit conversions. * interp/clam.boot: Substitute setDynamicBinding for SET throughout. * interp/category.boot (mkCategory): Replace newDomainShell with newShell. * interp/buildom.boot: Use nwShell instead of newDomainShell throughout. (coerceUn2E): Tidy. (constructorCategory): Don't call SetCategory directly. * interp/br-saturn.boot (htpMakeEmptyPage): Use setDynamicBinding instead of SET. * interp/bootlex.lisp (BOOT): Use *STANDARD-OUTPUT* instead of *TERMINAL-IO*. * interp/boot-pkg.lisp: Import systemRootDirectory, systemLibraryDirectory, loadNativeModule, loadSystemRuntimeCore from BOOTTRAN. (COT): Define unconditionally. (ACOT): Likewise. (MAXEXP): Likewise. * interp/bc-misc.boot (bcSeriesByFormulaGen): Fix thinko. * interp/Makefile.pamphlet (LOADSYS): Remove. (BOOTSYS): Add --syslib option. Update use through the file. (OBJS): Add types.$(FASLEXT). (makeint.lisp): Don't depend on $(LOADSYS). (${SAVESYS}): Use $(BOOTSYS). ($AXIOMSYS): Likewise. ($(axiom_targetdir)/algebra/exposed.$(FASLEXT)): Likewise. * input/Makefile.pamphlet (%.output): Use coreQuit, not BYE. * include/cfuns.h (oa_system): Declare. * etc/Makefile.in ($(axiom_targetdir)/algebra/*.daase): Fix thinko. Update call to MAKE-DATABASES. * boot/translator.boot (genImportDeclaration): Support CLisp's FFI. (bpOutItem): Tidy. (systemRootDirectory): Define here. (systemLibraryDirectory): Likewise. (loadNativeModule): Likewise. ($OpenAxiomCoreModuleLoaded): Likewise. (loadSystemRuntimeCore): Likewise. * boot/initial-env.lisp: Export systemRootDirectory, systemLibraryDirectory, loadNativeModule, loadSystemRuntimeCore. (concat): Move definition to lisp/core.lisp.in. * boot/ast.boot (bfColonColon): Special case CLisp's locked packages. * algebra/symbol.spad.pamphlet: Update cached Lisp translation. * algebra/string.spad.pamphlet: Update cached Lisp translations. (Character): Simplify definition. Now, use base Lisp system character type as representation. (ord$Character): Now return a NonNegativeInteger. (char$Character): Now take a NonNegativeInteger. (Rep$Character): Remove. (IndexedSring): Remove unused macros. (Qelt): Define as CHAR$Lisp. * algebra/outform.spad.pamphlet (OUTFORM): Update cached Lisp translation. * algebra/Makefile.pamphlet: Rearrange algebra build order. 2008-03-20 Gabriel Dos Reis * interp/nlib.lisp (get-input-index-stream): Remove. (getindextable): Likewise. 2008-03-19 Gabriel Dos Reis * interp/vmlisp.lisp (GETREFV): Set initial elements to NIL. (MAKE-OUTSTREAM): Supersede existing files. * interp/template.boot (makeTemplate): Use newDomainShell instead of GETREFV. (extendVectorSize): Likewise. (mkSigPredVectors): Likewise. (list2LongerVec): Likewise. (measure): Remove. (measureCommon): Likewise. * interp/sys-utility.boot (loadNativeModule): New. * interp/sys-os.boot: Import "cfuns" and "sockio". (runProgram): New. * interp/sys-globals.boot (/SOURCEFILES): Define here. (/SPACELIST): Likewise. * interp/sys-driver.boot ($OpenAxiomCoreModuleLoaded): New global variable. (AxiomCore::%sysInit): Load libopen-axiom-core if necessary. ($defaultMsgDatabaseName): Define here. * interp/spad.lisp (|New,ENTRY,1|): Tidy. * interp/sockio.lisp: Move import declarations to sys-os.boot. Remove unused codes. * interp/server.boot (serverReadLine): Use coreQuit instead of BYE. * interp/pspad1.boot (formatMDEF): Tidy. * interp/pspad2.boot (formatIf1): Tidy. * interp/patches.lisp: Import "sys-driver". Remove $CURRENT-DIRECTORY. * interp/nruncomp.boot (buildFunctor): Use newDomainShell instead of GETREFV. * interp/nrunopt.boot (makeDomainTemplate): Likewise. * interp/package.boot (processFunctorOrPackage): Likewise. * interp/nlib.lisp (rdefiostream): Tidy. * interp/monitor.lisp (monitor-autoload): Define when GCL. * interp/interop.boot (oldAxiomCategoryDevaluate): Tidy. * interp/i-toplev.boot (start): Don't set $CURRENT-DIRECTORY. * interp/i-syscmd.boot (close): Use newDomainShell. (leaveScratchpad): Use coreQuit instead of BYE. (compileAsharpArchiveCmd): Use GET-CURRENT-DIRECTORY. * interp/g-util.boot (newDomainShell): Define. * interp/functor.boot (NewbFVectorCopy): Use newDomainShell. * interp/daase.lisp (asharp): Use runProgram. * interp/cfuns.lisp: Remove unused codes. (directoryp): Move import declaration to sys-os.bot. (writeablep): Likewise. * interp/buildom.boot (Record0): Use newDomainShell instead of GETREFV. (coerceRe2E): Likewise. (Union): Likewise. (Mapping): Likewise. (Enumeration): Likewise. * interp/category.boot (mkCategory): Likewise. * interp/Makefile.pamphlet (patches.$(FASLEXT)): Require sys-driver.$(FASLEXT). (sys-os.$(FASLEXT)): Require cfuns.$(FASLEXT), sockio.$(FASLEXT). * algebra/view2D.spad.pamphlet: Use $ViewportServer instead of VIEWPORTSERVER. Use sockSendInt instead of SOCK-SEND-INT. Use sockSendFloat instead of SEND-SEND-FLOAT. Use sockSendString instead of SOCK-SEND-STRING. Use sockGetInt instead of SOCK-GET-INT. Use sockGetFloat instead of SOCK-SEND-FLOAT. * algebra/view3D.spad.pamphlet: Likewise. * interp/util.lisp (fe): Remove. (fc): Likewise. (interp-make-directory): Simplify. (OLD-BOOT::BOOT): Don't declare *PRINT-PRETTY* and *PRINT-LENGTH* special. 2008-03-18 Gabriel Dos Reis * interp/trace.boot (untraceDomainLocalOps): Tidy. * interp/spaderror.lisp (|$quitTag|): Define as constant. (|$numericFailure|): Likewise. * interp/spad.lisp: Import "postpar" and "debug". ($): Remove toplevel assignment. (|traceComp|): Tidy. (/FLAG): Remove. (*PROMPT*): Remove. (|New,ENTRY,1|): Don't declare it. Tidy. (|New,ENTRY,2|): Fix typo. * interp/sfsfun-l.lisp (rbesselj): Remove extraneous right parenthesis. (rbesseli): Likewise. * interp/patches.lisp: Import "sockio" instead of "debug" (|$useInternalHistoryTable|): Don't define here. (user::start): Remove. (/RF-1): Declare ECHO-META special. (READSPADEXPR): Declare IN-STREAM special. (|$ViewportProcessToWatch|): Declare. (echo-meta): Don't set here. * interp/packtran.boot (rePackageTran): Tidy. * interp/nspadaux.lisp (|$underscoreChar|): Define. (|$markChoices|): Likewise. (|$convert2NewCompiler|): Likewise. (|$AnalyzeOnly|): Likewise. (|$categoryPart|): Likewise. (|$insideCAPSULE|): Likewise. (|$insideEXPORTS|): Likewise. (|$originalSignature|): Likewise. (|$insideDEF|): Likewise. (|$insideTypeExpression|): Likewise. (|$spadTightList|): Likewise. (|$PerCentVariableList|): Likewise. * interp/nrunopt.boot (augmentPredCode): Fix typo. * interp/nlib.lisp (*LISP-BIN-FILETYPE*): Remove. (recompile-lib-file-if-necessary): Use $faslType. Unconditionally define. * interp/lisplib.boot (compDefineLisplib): Tidy. * interp/interop.boot (SExprToDName): Tidy. (oldAxiomPreCategoryDevaluate): Likewise. (hashNewLookupInCategories): Likewise. * interp/g-util.boot (get): Adjust return type. (get0): Likewise. (get1): Likewise. (get2): Likewise. * interp/foam_l.lisp: Tidy. * interp/define.boot (maybeInsertViewMorphisms): Fix typo. * interp/debug.lisp (/breakcondition): Declare. * interp/sys-utility.boot (getSystemModulePath): New. * interp/daase.lisp (|with|): Remove (|library|): Move i-syscmd.boot (initial-getdatabase): Use getSystemModulePath. (getdatabase): Likewise. (addoperations): Don't reference package LISP. (localdatabase): Likewise. (write-interpdb): Don't declare *print-prett* special. (write-browsedb): Likewise. (write-categorydb): Likewise. 2008-03-18 Gabriel Dos Reis * interp/sys-utility.boot: Define more type abbreviations. * interp/apply.boot: Adjust signature declarations. * interp/compiler.boot: Likewise. 2008-03-17 Gabriel Dos Reis * interp/sys-driver.boot (restart): Rename from RESTART. (SET-RESTART-HOOK): Use restart. * interp/Makefile.pamphlet (${SAVESYS}): Refer restart, not RESTART. (${AXIOMSYS}): Likewise. 2008-03-17 Gabriel Dos Reis * lib/cfuns-c.c (oa_chdir): Add missing `return'. 2008-03-17 Gabriel Dos Reis * lib/cfuns-c.c (oa_chdir): Define. (is_dot_or_dotdot): New. (oa_unlink): Define. (oa_rename): Likewise. (oa_mkdir): Likewise. * interp/sys-os.boot: New file. * interp/util.lisp (MAKE-TAGS-FILE): Use changeDirectory. (MAKELIB): Likewise. (MAKESPAD): Likewise. (LIBCHECK): Likewise. * interp/sys-utility.boot ($ERASE): Define here. Use removeFile. ($REPLACE): Likewise. (checkMkdir): Define. * interp/obey.lisp (MAKEDIR): Remove definition. * interp/nlib.lisp (RDEFIOSTREAM): Use checkMkdir. (MAKEDIR): Remove. (RPACKFILE): Use removeFile. ($ERASE): Remove Lisp definition. ($REPLACE): Likewise. * interp/i-syscmd.boot (cd): Use changeDirectory. (compileAsharpArchiveCmd): Use mkdir. (histFileErase): Likewise. * interp/fortcall.boot (fortCall): Use removeFile. (invokeNagman): Likewise. * interp/daase.lisp (|library|): Use changeDirectory. (LOCALDATABASE): Likewise. (DaaseName): Use removeFile. * interp/construc.lisp (mergelibs): Use removeFile. (mergeall): Use changeDirectory. * interp/c-doc.boot (docreport): Use removeFile. * interp/br-search.boot (getTempPath): Likewise. * interp/br-saturn.boot (dbSort): Likewise. * interp/br-data.boot (buildLibdb): Likewise (dbSplitLibdb): Likewise. (buildGloss): Likewise. (purgeLocalLibdb): Likewise. * interp/as.boot (asList): Likewise. * interp/Makefile.pamphlet (OBJS): Include sys-os.$(FASLEXT). (sys-os.$(FASLEXT)): New rule. (sys-utility.$(FASLEXT)): Require sys-os.$(FASLEXT). * include/cfuns.h (oa_chdir): Declare. (oa_unlink): Likewise. (oa_rename): Likewise. (oad_mkdir): Likewise. 2008-03-16 Alfredo Portes Arthur Ralfs * algebra/mathml.spad.pamphlet: Add Arthur Ralfs's MathML package. * algebra/Makefile.in: Add MathML to the build process. * algebra/Makefile.pamphlet: Likewise. * algebra/exposed.lsp.pamphlet: Likewise. * interp/setvart.boot: Create an output MathML section in patterned after the tex section. * interp/setvars.boot: Likewise. * interp/i-output.boot: Add the coerce and display functions from MathMLFormat actually gets called. 2008-03-16 Gabriel Dos Reis * boot/translator.boot: Switch to new native type translation. * interp/sys-driver.boot (stdStreamIsTerminal): Simplify. 2008-03-16 Gabriel Dos Reis * lisp/Makefile.in (void_type): New. (char_type): Likewise. (int_type): Likewise. (float_type): Likewise. (double_type): Likewise. (string_type): Likewise. (pointer_type): Likewise. (edit): Use them. * interp/wi1.boot (ppFull): Tidy. Don't set *PRINT-DEPTH*. * interp/vmlisp.lisp (gcmsg): Define when SBCL. * interp/template.boot (measureCommon): Fix thinko. * interp/sys-utility.boot: Move basic type definition from g-util.boot to here. * interp/g-util.boot (augProplistOf): Fix signature declaration. * interp/daase.lisp: Tidy. * interp/c-util.boot (displayComp): Remove assignment to $X,$M,$F. * interp/boot-pkg.lisp: Tidy. * interp/axext_l.lisp: Likewise. * interp/Makefile.pamphlet (makeint.lisp): Call GBC only when GCL. ($(axiom_targetdir)/algebra/exposed.$(FASLEXT)): Tidy. (patches.$(FASLEXT)): Require debug.$(FASLEXT), g-timer.$(FASLEXT). (wi2.$(FASLEXT)): Require define.$(FASLEXT). (spad.$(FASLEXT)): Require postpar.$(FASLEXT), debug.$(FASLEXT). * boot/translator.boot (genImportDeclaration): Include translation for SBCL. * boot/parser.boot (bpMapping): Tidy. * boot/ast.boot (coreSymbol): New. (bootSymbol): Likewise. (bootSymbol): Likewise. * lisp/core.lisp.in (|$NativeTypeTable|): New. Export. * algebra/Makefile.pamphlet (COMPILE_LISP): Use $(INTERPSYS). * algebra/exposed.lsp.pamphlet: Tidy. 2008-03-16 Gabriel Dos Reis * lib/Makefile.in ($(axiom_target_libdir)/libopen-axiom-core.$(DLLEXT)): Tidy. ($(axiom_target_libdir)/libspad.la): Likewise. 2008-03-15 Gabriel Dos Reis * include/cfuns.h (findString): Rename from include/cfuns-c.H1. Make DLL-aware. * include/open-axiom.h: New. * include/sockio.h: Make DLL-aware. * include/bsdsignal.H1: Fold content into include/bsdsignal.h. Remove. * lib/bsdsignal.c: Don't include bsdsignal.H1 * lib/fnct_key.c: Likewise. * lib/sockio-c.c: Likewise. * lib/Makefile.in (other_SOURCES): Remove. (other_objects): Likewise. (pamphlets): Likewise. (clean-local): Don't remove source files. (libopen_axiom_core_la_SOURCES): New. (libopen_axiom_core_la_objects): Likewise. (stamp): Require $(axiom_target_libdir)/libopen-axiom-core.la too. * graph/view2D/main2d.c: Likewise. * clef/edible.c: Likewise. * graph/view3D/main3d.c: Likewise. * graph/view3D/testcol.c: Likewise. * graph/viewman/sselect.c: Likewise. * graph/viewman/viewman.c: Likewise. * hyper/htinp.c: Likewise. * hyper/hyper.c: Likewise. * hyper/spadbuf.c: Likewise. * hyper/spadint.c: Likewise. * sman/session.c: Likewise. * sman/sman.c: Likewise. * sman/spadclient.c: Likewise. 2008-03-15 Gabriel Dos Reis * algebra/polset.spad.pamphlet (exactQuo$PSETCAT-): Don't conditionally define as local function. Update cached Lisp translation. 2008-03-13 Gabriel Dos Reis * algebra/catdef.spad.pamphlet: Update cached Lisp translation. * algebra/sf.spad.pamphlet: Likewise. * algebra/si.spad.pamphlet: Likewise. * algebra/fspace.spad.pamphlet: Likewise. * algebra/ffcat.spad.pamphlet: Likewise. * algebra/polset.spad.pamphlet: Likewise. * algebra/fraction.spad.pamphlet: Likewise. * algebra/triset.spad.pamphlet: Likewise. * algebra/polycat.spad.pamphlet: Likewise. * algebra/pscat.spad.pamphlet: Likewise. 2008-03-10 Gabriel Dos Reis * doc/msgs/s2-us.msgs: Say Spad, not old compiler. 2008-03-10 Gabriel Dos Reis * interp/nocompil.lisp: Remove. * interp/Makefile.pamphlet: Adjust. 2008-03-10 Gabriel Dos Reis * algebra/Makefile.pamphlet (strap/%.$(FASLEXT)): Don't copy bootstrapping objects to final algebra directory. (%.NRLIB/code.$(FASLEXT)): Specify bootstrapping objects location as option. 2008-03-10 Gabriel Dos Reis * lisp/core.lisp.in ("$faslType"): Export. * interp/sys-driver.boot (algebraBootstrapDir): New. * interp/lisplib.boot (findModule): New. (loadLib): Use it. * interp/daase.lisp (localdatabase): Make sure loadable modules have proper extensions. * interp/sys-utility.boot (existingFile?): New. 2008-03-09 Gabriel Dos Reis * interp/parse.boot (parseDollarGreaterThan): Remove. (parseDollarGreaterEqual): Likewise. (parseDollarLessEqual): Likewise. (parseDolloarNotEqual): Likewise. 2008-03-08 Gabriel Dos Reis * graph/: Depamphletize. * include/addfile.h: Move from hyper. * include/addfile.H1: Move external declarations into addfile.h. Remove. 2008-03-08 Gabriel Dos Reis * include/sockio.h: Rename from sockio-c.H1. * clef/edible.c: Don't include useproto.h. Include sockio.h * graph/view3D/surface3d.c.pamphlet: Likewise. * graph/viewman/fun2D.c.pamphlet: Likewise. * graph/viewman/fun3D.c.pamphlet: Likewise. * graph/viewman/make2D.c.pamphlet: Likewise. * graph/viewman/make3D.c.pamphlet: Likewise. * graph/viewman/makeGraph.c.pamphlet: Likewise. * graph/viewman/sselect.c.pamphlet: Likewise. * graph/viewman/viewman.c.pamphlet: Likewise. * graph/viewman/viewman.h: Likewise. * hyper/ReadBitmap.c: Likewise. * hyper/addfile.c: Likewise. * hyper/cond.c: Likewise. * hyper/debug.c: Likewise. * hyper/dialog.c: Likewise. * hyper/display.c: Likewise. * hyper/event.c: Likewise. * hyper/ex2ht.c: Likewise. * hyper/extent1.c: Likewise. * hyper/extent2.c: Likewise. * hyper/form-ext.c: Likewise. * hyper/group.c: Likewise. * hyper/halloc.c: Likewise. * hyper/hash.c: Likewise. * hyper/htadd.c: Likewise. * hyper/hterror.c: Likewise. * hyper/htinp.c: Likewise. * hyper/hyper.c: Likewise. * hyper/initx.c: Likewise. * hyper/input.c: Likewise. * hyper/item.c: Likewise. * hyper/keyin.c: Likewise. * hyper/lex.c: Likewise. * hyper/macro.c: Likewise. * hyper/mem.c: Likewise. * hyper/parse-aux.c: Likewise. * hyper/parse-input.c: Likewise. * hyper/parse-paste.c: Likewise. * hyper/parse-types.c: Likewise. * hyper/parse.c: Likewise. * hyper/scrollbar.c: Likewise. * hyper/show-types.c: Likewise. * hyper/spadbuf.c: Likewise. * hyper/spadint.c: Likewise. * hyper/titlebar.c: Likewise. * lib/sockio-c.c: Likewise. * sman/session.c: Likewise. * sman/sman.c: Likewise. * include/useproto.h: Remove. 2008-03-07 Gabriel Dos Reis * hyper/: De-pamphletize. 2008-03-05 Gabriel Dos Reis * interp/compiler.boot (compColon): Literal flag types are valid types. 2008-03-04 Gabriel Dos Reis * algebra/Makefile.pamphlet (axiom_algebra_layer_strap): Derive value from $(axiom_algebra_bootstrap). (axiom_algebra_layer_0): Include more categories. (axiom_algebra_layer_1): Likewise. (axiom_algebra_layer_2): Likewise. (axiom_algebra_layer_3): Likewise. (axiom_algebra_layer_4): Remove some constructors. (axiom_algebra_layer_5): Likewise. 2008-03-03 Gabriel Dos Reis * interp/i-analy.boot (bottomUp): Don't record constructor instantiations representations in interactive environments. * interp/i-eval.boot (evaluateFormAsType): New. (evaluateType): Use it. (evaluateType1): Tidy. * interp/i-output.boot (output): Tidy. * interp/i-object.boot ($genValue): Define here. * interp/sys-dirver.boot ($verbose): Rename from $verboseInterpreter. * interp/i-map.boot (genMapCode): Propagate $verbose renaming. * interp/slam.boot (compileRecurrenceRelation): Likewise. 2008-02-22 Gabriel Dos Reis * interp/i-analy.boot (bottomUpFormTuple): Use "tuple" for parse form that are not type instantiations. * interp/i-coerce.boot (coerceInt1): Likewise. * interp/i-intern.boot (mkAtree3): Likewise. (collectDefTypesAndPreds): Likewise. * interp/i-map.boot (args2Tuple): Likewise. (makePattern): Likewise. (canMakeTuple): Likewise. (makeRuleForm): Likewise. (numArgs): Likewise. (combineMapParts): Likewise. (mkMapPred): Likewise. (findLocalVars1): Likewise. * interp/i-output.boot (outputTran): Likewise. * interp/i-spec1.boot ($specialOps): Likewise. (evalUntargetedADEF): Likewise. (upDeclare): Likewise. (declare): Likewise. * interp/i-spec2.boot (upDollarTuple): Likewise. (upLET): Likewise. (isTupleForm): Remove. (uptuple): Rename from upTuple. (upLETWithFormOnLhs): Use "tuple" for parse forms that are not type instantiations. * interp/i-syscmd.boot (displayMacro): Likewise. * interp/pf2atree.boot (pf2Atree1): Likewise. * interp/pf2sex.boot (pf2Sex1): Likewise. (pfApplication2Sex): Likewise. (pfCollectArgTran): Likewise. * interp/ptrees.boot (pfTuple): Likewise. (pfTuple?): Likewise. 2008-02-20 Gabriel Dos Reis * interp/i-coerce.boot (coerceInt1): Avoid misguided Tuple coercion behind the scene. * interp/Makefile.pamphlet (astr.$(FASLEXT)): Depend on vmlisp.$(FASLEXT) instead. * algebra/Makefile.pamphlet (.NOTPARALLEL): Remove rectriction. 2008-02-20 Gabriel Dos Reis * lisp/core.lisp.in [SBCL]: Require "sb-posix". (|resetErrorCount|): New export function. * interp/vmlisp.lisp (opOf): Remove macro definition. * interp/msg.boot (setMsgCatlessAttr): Fix thinko. * interp/monitor.lisp (monitor-add): Remove extra right parenthesis. * interp/lisplib.boot: Import "debug". (initializeLisplib): Don't use ERRORS variable. * interp/i-spec1.boot (isDomainValuedVariable): Tidy. * interp/i-output.boot (outputTran): Use SIZE instead of #. (output): Remove misguided conversion from Tuple to List. * interp/i-coerce.boot (coerceInteractive): Allow domain object convesions. * interp/g-util.boot (opOf): Declare. * interp/Makefile.pamphlet (lisplib.$(FASLEXT)): Depend on debug.$(FASLEXT). * algebra/Makefile.pamphlet: Use .$(FASLEXT) instead of hardcoded .o extension. 2008-02-19 Gabriel Dos Reis * interp/vmlisp.lisp (|opOf|): Remove duplicate. * lisp/core.lisp.in (|resetErrorCount|): New function. Export. 2008-02-18 Gabriel Dos Reis * algebra/variable.spad.pamphlet (AnonymousFunction): Add new functions `parameters' and `body'. * algebra/domain.spad.pamphlet: Rename from algebra/domain.spad. (Category): New category. * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include CATEGORY.o. (DOMAIN.NRLIB/code.$(FASLEXT)): Remove rule. * interp/trace.boot (transTraceItem): Use $LangSupportTypes. * interp/sys-constants.boot ($None): New. ($Type): Likewise. ($LangSupportTypes): Likewise. * interp/parse.boot (parseHas): Use $LangSupportTypes. (parseHasRhs): Likewise. * interp/i-spec2.boot (upLETtype): Use conceptualType. (uptypeOf): Likewise. (upwhere): Likewise. (typeOfType): Remove. * interp/i-spec1.boot (isDomainValuedVariable): Variables with type Category and Type are domain valued too. * interp/i-output.boot (output): Special case only Mode and Type. * interp/i-funsel.boot (selectMms): Don't ignore modemaps with category parameters. * interp/i-coerce.boot (canCoerce1): Test for Category instead of SubDomain Domain. (canCoerceFrom0): Use $None and $Any. (absolutelyCannotCoerce): Use $None. (coerceInteractive): Use $LangSupportTypes. (coerceInt1): Use $Any. * interp/i-analy.boot (conceptualType): New. (bottomUpType): Use it. * interp/clammed.boot (isValidType): Use $LangSupportTypes. * interp/g-cndata.boot (isNameOfType): Likewise. * interp/category.boot (Category): Remove hacky definition. * interp/buildom.boot ($noCategoryDomains): Domain now has a Lisplib. 2008-02-15 Gabriel Dos Reis * interp/unlisp.lisp (|CatchAsCan|): Tidy. * interp/sys-utility.boot (delete): Fix thinko. * interp/sys-globals.boot ($sourceFiles): Define here. (INPUTSTREAM): Likewise. * interp/i-syscmd.boot (UNDERBAR): Move to sys-globals.boot. * interp/fname.lisp: Import "macros". * interp/debug.lisp: Import "parsing". Replace $PRETTYPRINT with $PrettyPrint. (/FN): Define. (depthAlist): Likewise. * interp/br-search.boot (docSearch1): Fix thinko. * interp/Makefile.pamphlet (debug.$(FASLEXT)): Depend on parsing.$(FASLEXT). * interp/i-output.boot (starstarcond): Remove used function. (transcomparg): Likewise. (MATBORCH): Define here. (*TALLPAR): Likewise. * interp/vmlisp.lisp (|char|): Remove duplicate definition. 2008-02-15 Gabriel Dos Reis * boot/parser.boot (bpSimpleCatch): New. (bTry): Use it. * boot/strap: Update. 2008-02-14 Gabriel Dos Reis Add try/catch to Boot. * boot/tokens.boot (shoeKeyWords): Add new keywords. * boot/ast.boot (Ast): Include three new nodes. (bfTry): New. (bfThrow): Likewise. * boot/parser.boot ($bodyHasReturn): Remove. (bpNoteReturnStmt): Likewise. (bpThrow): New. (bpTry): Likewise. (bpPiledCatchItems): Likewise. (bpCatchItemList): Likewise. (bpExceptionHead): Likewise. (bpExceptionTail): Likewise. (bpException): Likewise. (bpCatchItem): Likewise. (bpReturn): Include `throw' expressions. (bpStatement): Include `try' expressions. * interp/macros.lisp (|tryLine|): Rename from |try|. * interp/pspad1.boot: Replace `try' with `tryLine' throughout. 2008-02-14 Gabriel Dos Reis * OpenAxiom-1.1.0 has been released. 2008-02-14 Gabriel Dos Reis * driver/utils.c (openaxiom_execute_core) [__WIN32__]: Enclose every argument in quotes. 2008-02-10 Gabriel Dos Reis * interp/sys-driver.boot (executeSpadScript): By default make script execution quiet. Support --verbose for verbose processing. 2008-02-09 Gabriel Dos Reis Add support for batch processing. * sman/sman.c (process_arguments): Now take an argument for openaxiom_command. Don't support '-ws', '-comp', '-grprog', '-clefprog', '-clientprog' anymore. (process_options): Take one more arguments. (main): Excute the Core if in batch mode. * sman/Makefile.in (sman_objects): Add driver/utils.lo. (%.lo): Look up headers in src/driver too. * interp/sys-utility.boot (RECLAIM): Define here. (makeAbsoluteFilename): Likewise. * interp/sys-driver.boot ($openServerIfTrue): Define here. ($SpadServer): Likewise. (AxiomCore::%sysInit): Tidy. (loadExposureGroupData): Define here. (REROOT): Likewise. (initMemoryConfig): Likewise. (RESTART): Likewise. (SPAD-SAVE): Likewise. (SET-RESTART-HOOK): Likewise. (executeSpadScript): New. Install as driver. * interp/obey.lisp (OBEY): Use makeAbsoluteFilename. * interp/patches.lisp (save-system): Likewise. * interp/util.lisp: Likewise. * interp/vmlisp.lisp: Likewise. * interp/msgdb.boot: Have mssage throwers countError. * interp/incl.boot ($inputLineNumber): New. (incClassify): Use it. Recognize the magic number. (incLude1): Ignore line with magic number. * interp/i-toplev.boot (statisticsInitialization): Define here. * interp/i-syscmd.boot ($options): Define. ($historyDirectory): Likewise. ($HiFiAccess): Likewise. (history): Tidy. (initHist): Likewise. (initHistList): Likewise. (historySpad2Cmd): Likewise. (setHistoryCore): Likewise. (restoreHistory): Likewise. ($reportUndo): Define. (diffAlist): Tidy. * interp/diagnostics.boot (BUMPERRORCOUNT): Use countError. * interp/debug.lisp (/D-2): Use makeAbsoluteFilename. * interp/Makefile.pamphlet (OBJS): Remove bookvol5.$(FASLEXT). (makeint.lisp): Don't require bookvol5.$(FASLEXT). Don't load it. (bookvol5.$(FASLEXT)): Remove rule. (bookvol5.pamphlet): Remove. * include/sman.H1: Fold content into sman/sman.c. Remove. * driver/main.c (OPENAXIOM_CORE_EXECUTABLE): Move to utils.c (OPENAXIOM_SMAN_EXECUTABLE): Likewise. (OPENAXIOM_CORE_PATH): Likewise. (OPENAXIOM_SMAN_PATH): Likewise. (get_systemdir): Rename to openaxiom_get_systemdir; move to utils.c. (make_path_for): Rename openaxiom_make_path_for; move to utils.c (main): Simplify. * driver/utils.c: New. * driver/utils.h: Likewise. * driver/Makefile.in: Rename axiom to open-axiom. * Makefile.pamphlet (all-sman): Now require all-driver. 2008-02-04 Gabriel Dos Reis * interp/Makefile.pamphlet (OBJS): Include sys-utility.$(FASLEXT). (sys-utility.$(FASLEXT)): New rule. * interp/sys-utility.boot: New. * interp/macros.lisp (|functionp|): Move to sys-utility.boot. (|macrop|): Likewise. (|delete|): Likewise. (CONTAINED, contained\,eq, contained\,equal): Likewise. (ASSOCLEFT): Likewise. (ASSOCRIGHT): Likewise. (ADDASSOC): Likewise. (DELLASOS): Likewise. (LASSOC): Likewise. (|rassoc|): Likewise. 2008-02-03 Gabriel Dos Reis * interp/foam_l.lisp (|G-stdoutVar|): Define; don't just assign. (|G-stdinVar|): Likewise. (|G-stderrVar|): Likewise. (|FormatNumber|): Bind local variable; don't just assign to it. (|magicEq1|): Tidy. * interp/debug.lisp: Don't declare `COUNT as SPECIAL. Remove reference to LISP package. Remove CCL special-cased definitions. * interp/comp.lisp ($closedfns): Define. * interp/cfuns.lisp (|getEnv|): Define only for GCL, for the time being. 2008-02-03 Gabriel Dos Reis * boot/translator.boot (translateToplevelExpression): New. (bpOutItem): Use it. * boot/ast.boot (needsPROG): New. (shoeCompTran): Use it. Tidy. (bfMain): Define cache variables before functions manipulating them. * boot/strap/: Update cached Lisp translations. * interp/g-timer.boot: Use assignment instead of SETANDFILEQ at toplevel. * interp/i-syscmd.boot: Likewise. * interp/pf2atree.boot: Likewise. * interp/trace.boot: Likewise. 2008-02-02 Gabriel Dos Reis * interp/msgdb.boot ($MARG): Define. * interp/int-top.boot (intloopReadConsole): Remove code for $DALYMODE. * interp/define.boot ($NRTopt): Define. ($suffix): Likewise. * interp/debug.lisp (S-SPADKEY): Define. * interp/Makefile.pamphlet (OBJS): Don't include setq.$(FASLEXT). (setq.$(FASLEXT)): Remove rule. * interp/setq.lisp: Remove. 2008-02-02 Gabriel Dos Reis * interp/spad.lisp (APLMODE): Don't define. (XTOKENREADER): Don't set; define. * interp/setvars.boot (resetWorkspaceVariables): Don't reset $coerceIntByMapCounter. * interp/setq.lisp: Stop redundant assignments. * interp/nrunfast.boot ($NRTmonitorIfTrue): Define here. * interp/i-object.boot (objEnv): Use $EmptyEnvironment. * interp/i-coerce.boot ($useConvertForCoercions): Likewise. * interp/format.boot ($abbreviateJoin): Define here. 2008-02-02 Gabriel Dos Reis * interp/sys-globals.boot ($consistencyCheck): Remove. ($insideCanCoerceFrom): Define. 2008-02-01 Gabriel Dos Reis * interp/apply.boot (oldCompilerAutoloadOnceTrigger): Remove. * interp/setq.lisp: Remove more unused variables. * interp/patches.lisp (/RF-1): Tidy. * interp/server.boot (parseAndInterpret): Likewise. * interp/packtran.boot ($useNewParser): Remove. * interp/ht-util.boot (parseAndEval): Tidy. * interp/clam.boot ($failed): Define. * interp/g-timer.boot ($printStorageIfTrue): Likewise. * interp/hashcode.boot ($DomainsWithoutLisplibs): Likewise. * interp/i-coerce.boot ($useCoerceOrCroak): Likewise. * interp/i-analy.boot ($univariateDomains): Likewise. ($multivariateDomains): Likewise. * interp/i-object.boot ($useIntegerSubdomain): Likewise. * interp/i-syscmd.boot ($existingFiles): Likewise. * interp/newfort.boot ($fortranArrayStartingIndex): Likewise. * interp/setvars.boot (resetWorkspaceVariables): Don't reset $dependeeClosureAlist. 2008-02-02 Gabriel Dos Reis * interp/setq.lisp: Remove more unused variables. * interp/nruncomp.boot ($Slot1DataBase): Define here. * interp/parse.boot ($oldParserExpandAbbrs): Likewise. * interp/define.boot ($mutableDomains): Define here. (compDefineFunctor1): Tidy. (clearCmdCompletely): Don't set $functionTable. 2008-01-31 Gabriel Dos Reis * interp/setq.lisp (COPYRIGHTS): Remove. (LCTRUE): Likewise. ($HTPreviousDomain): Likewise. ($HTOperationError): Likewise. ($xdatabase): Likewise. ($CatOfCaDatabase): Likewise. ($DomOfCatDatabase): Likewise. ($JoinOfDomDatabase): Likewise. ($JoinOfCatDatabase): Likewise. ($attributeDb): Likewise. ($abbreviateIfTrue): Likewise. ($deltax): Likewise. ($deltay): Likewise. ($displayDomains): Likewise. ($displayTowardAncestors): Likewise. ($minimumSeparation): Likewise. ($testOutputLineFlag): Likewise. ($testOutputLineStack): Likewise. ($runTestFlag): Likewise. ($mkTestFlag): Likewise. ($mkTestInputStack): Likewise. ($mkTestOutputStack): Likewise. 2008-01-31 Gabriel Dos Reis * interp/unlisp.lisp (|OsRunProgram|): Remove. (|OsRunProgramToStream|): Likewise. (|PathnameWithinDirectory|): Likewise. (|PathnameWithinOsEnvVar|): Likewise. (|OsEnvGet|): Likewise. (|OsEnvVarCharacter|): Likewise. (|NewPathname|): Likewise. (|SessionPathname|): Likewise. (|PathnameDirectory|): Likewise. (|PathnameDirectoryOfDirectoryPathname|): Likewise. (|ToPathname|): Likewise. (|PathnameName|): Likewise. (|PathnameWithType|): Likewise. (|PathnameWithoutType|): Likewise. (|PathnameWithDirectory|): Likewise. (|PathnameWithoutDirectory|): Likewise. (|PathnameType|): Likewise. (|PathnameToUsualCase|): Likewise. (|PathnameAbsolute?|): Likewise. (|TempFileDirectory|): Likewise. (|OsProcessNumber|): Likewise. (|LispReadFromString|): Likewise. (|LispEval|): Likewise. (|LispCompile|): Likewise. (|LispCompileFile|): Likewise. (|LispLoadFileQuietly|): Likewise. (|LispLoadFile|): Likewise. (|LispKeyword|): Likewise. (|DeepCopy|): Remove. (|SortInPlace|): Likewise. (|PlainError|): Likewise. (|PlainPrint|): Likewise. (|PlainPrintOn|): Likewise. (|WriteByte|): Likewise. (|WriteChar|): Likewise. (|WriteString|): Likewise. (|WriteLine|): Likewise. (|ByteFileWriteLine|): Likewise. (|ReadByte|): Likewise. (|ByteFileReadLine|): Likewise. (|ReadChar|): Likewise. (|ReadLine|): Likewise. (|ReadLineIntoString|): Likewise. (|ByteFileReadLineIntoString|): Likewise. (|ReadBytesIntoVector|): Likewise. (|InputStream?|): Likewise. (|OutputStream?|): Likewise. (|StreamGetPosition|): Likewise. (|StreamSetPosition|): Likewise. (|StreamSize|): Likewise. (|WithOpenStream|): Likewise. (|StreamCopyChars|): Likewise. (|StreamCopyBytes|): Likewise. (|StreamEnd?|): Likewise. (|StreamFlush|): Likewise. (|StreamClose|): Likewise. (|LispFileType|): Likewise. (|FaslFileType|): Likewise. (|MakeSymbol|): Likewise. (|Symbol?|): Likewise. (|SymbolString|): Likewise. (|TrueBit|): Likewise. (|FalseBit|): Likewise. (|Bit?|): Likewise. (|BitOn?|): Likewise. (|BitOr|): Likewise. (|Bit|): Likewise. (|FullVector|): Likewise. (|Vector?|): Likewise. (|FullBvec|): Likewise. (|CharGreater?|): Likewise. (|CharDigit?|): Likewise. (|NewlineChar|): Likewise. (|SpaceChar|): Likewise. (|TimeStampString|): Likewise. (|CsetString|): Likewise. (|CsetComplement|): Likewise. (|AlphaCset|): Likewise. (|AlphaCset|): Likewise. (|LowerCaseCset|): Likewise. (|UpperCaseCset|): Likewise. (|NumericCset|): Likewise. (|CsetUnion|): Likewise. (|CsetMember?|): Likewise. (|FullString|): Likewise. (|ToString|): Likewise. (|StringImage|): Likewise. (|String?|): Likewise. (|StringGetCode|): Likewise. (|StringConcat|): Likewise. (|StringFromTo|): Likewise. (|StringFromToEnd|): Likewise. (|StringFromLong|): Likewise. (|StringPrefix?|): Likewise. (|StringUpperCase|): Likewise. (|StringLowerCase|): Likewise. (|StringGreater?|): Likewise. (|StringToInteger|): Likewise. (|StringToFloat|): Likewise. (|StringLength|): Likewise. (|Number?|): Likewise. (|Integer?|): Likewise. (|Float?|): Likewise. (|Odd?|): Likewise. (|Pair?|): Likewise. (|car|): Likewise. (|cdr|): Likewise. (|caar|): Likewise. (|cadr|): Likewise. (|cdar|): Likewise. (|cddr|): Likewise. (|caaar|): Likewise. (|caadr|): Likewise. (|cadar|): Likewise. (|caddr|): Likewise. (|cdaar|): Likewise. (|cdadr|): Likewise. (|cddar|): Likewise. (|cdddr|): Likewise. (|FastCar|): Likewise. (|FastCdr|): Likewise. (|FastCaar|): Likewise. (|FastCadr|): Likewise. (|FastCdar|): Likewise. (|FastCddr|): Likewise. (|FastCaaar|): Likewise. (|FastCaadr|): Likewise. (|FastCadar|): Likeiwse. (|FastCaddr|): Likewise. (|FastCdaar|): Likewise. (|FastCdadr|): Likewise. (|FastCddar|): Likewise. (|FastCdddr|): Likewise. (|IfCar|): Likewise. (|IfCdr|): Likewise. (|EqCar|): Likewise. (|EqCdr|): Likewise. (|ListNReverse|): Likewise. (|ListIsLength?|): Likewise. (|ListNRemoveQ|): Likewise. (|ListRemoveDuplicatesQ|): Likewise. (|ListUnion|): Likewise. (|ListUnionQ|): Likewise. (|ListIntersection|): Likewise. (|ListIntersectionQ|): Likewise. (|ListAdjoin|): Likewise. (|ListAdjoinQ|): Likewise. (|AlistAssoc|): Likewise. (|AlistRemove|): Likewise. (|AlistAdjoinQ|): Likewise. (|AlistUnionQ|): Likewise. (|Table?|): Likewise. (|TableCount|): Likewise. (|TableGet|): Likewise. (|TableSet|): Likewise. (|TableUnset|): Likewise. (|TableKeys|): Likewise. (lucid-os-run-program): Likewise. (lucid-os-run-program-to-stream): Likewise. (lucid-os-env-get): Likewise. (lucid-os-process-number): Likewise. (c-to-lisp-string): Likewise. (cmulisp-os-run-program): Likewise. (cmulisp-os-run-program-to-stream): Likewise. (cmulisp-os-env-get): Likewise. (cmulisp-os-process-number): Likewise. (kcl-os-run-program): Likewise. (kcl-os-run-program-to-stream): Likewise. (kcl-os-env-get): Likewise. (kcl-os-process-number): Likewise. (|PathnameString|): Likewise. (|Remainder|): Likewise. (|DoublePrecision|): Likewise. (|Abs|): Likewise. (|Min|): Likewise. (|Max|): Likewise. (|Exp|): Likewise. (|Ln|): Likewise. (|Log10|): Likewise. (|Sin|): Likewise. (|Cos|): Likewise. (|Tan|): Likewise. (|Cotan|): Likewise. (|Arctan|): Likewise. (|CharCode|): Likewise. (|Pathname|): Likewise. (|Char|): Likewise. (|Char?|): Likewise. (*new-pathname-counter*): Likewise. (|funcall|): Move sys-macros.lisp. (|Catch|): Likewise. (|Throw|): Likewise. (|UnwindProtect|): Likewise. * interp/pathname.boot (pathnameDirectory): Use KEYWORD package. * interp/incl.boot (ifCond): Use INTERN. (assertCond): Likewise. * interp/cformat.boot (pfname): Use NAMESTRING. 2008-01-28 Gabriel Dos Reis Support signature declaration in Boot. * boot/ast.boot (bfUntuple): New. (bfTagged): Toplevel tags are signatures. * boot/parser.boot (bpTyping): New. (bpTagged): Use it. * boot/translator.boot (genDeclaration): New. (bpOutItem): Use it. * interp/compiler.boot: Add type annotations for compiler routines. * lisp/Makefile.in ($(OUT)/lisp$(EXEEXT)): Don't turn on emit-fn. 2008-01-27 Gabriel Dos Reis * boot/Makefile.pamphlet: Remove. * boot/translator.boot: New. * boot/translator.boot: Remove. * boot/tokens.boot: New. * boot/tokens.boot.pamphlet: Remove. * boot/scanner.boot: New. * boot/scanner.boot.pamphlet: Remove. * boot/pile.boot: New. * boot/pile.boot.pamphlet: Remove. * boot/parser.boot: New. * boot/parser.boot.pamphlet: New. * boot/initial-env.lisp: New. * boot/initial-env.lisp.pamphlet: Remove. * boot/includer.boot: New. * boot/includer.boot.pamphlet: Remove. * boot/ast.boot: New. * boot/ast.boot.pamphlet: Remove. 2008-01-27 Gabriel Dos Reis Fix SF/1872551 * interp/c-util.boot (dollarIfRepHack): New. (RepIfRepHack): Likewise. (substituteDollarIfRepHack): Likewise. (isSubset): Dollar is subset of Rep only in old semantics. * interp/buildom.boot (mkMappingFunList): Substitute dollar for Rep only when appropriate. (mkRecordFunList): Likewise. (mkNewUnionFunList): Likewise. (mkUnionFunList): Likewise. * interp/compiler.boot (compNoStacking): Likewise. (compNoStacking1): Likewise. (getConstructorFormOfMode): Likewise. (isUnionMode): Likewise. (coerce): Likewise. (coerceSubset): Likewise. * interp/modemap.boot (addModemap1): Likewise. (isSuperDomain): Likewise. * interp/define.boot (maybeInsertViewMorphisms): New. (compCapsule): Use it. (compCategoryItem): Don't allow exports of rep and per. * interp/sys-globals.boot ($useRepresentationHack): New. 2008-01-26 Gabriel Dos Reis * interp/database.boot: Tidy uses of $EmptyEnvironment. * interp/i-map.boot: Likewise. Allocate fresh cell for $env. * interp/i-spec1.boot: Likewise. * interp/i-syscmd.boot: Likewise. * interp/i-toplev.boot: Likewise. * interp/lisplib.boot: Likewise. * interp/setvars.boot: Likewise. * interp/sys-globals.boot: Likewise. * interp/nruncomp.boot: Encode flag types too. * interp/template.boot: Likewise. * share/algebra: Update databases. 2008-01-25 Gabriel Dos Reis Fix AW/311 * interp/i-syscmd.boot (displayOperationsFromLisplib): Say no exported operations when there is nothing to display. 2008-01-24 Gabriel Dos Reis Fix AW/272 * interp/i-spec1.boot (compileADEFBody): Don't evaluate unnamed functions. Compile them instead. * testsuite/interpreter/aw-272.input: New. 2008-01-22 Gabriel Dos Reis * algebra/any.spad.pamphlet (empty$Scope): Use literal empty list. (empty$Environment): Likewise. 2008-01-21 Gabriel Dos Reis Waldek Hebisch Fix AW/102 * interp/iterator.boot (getIdentity): Properly identify the algebra empty list. 2008-01-21 Gabriel Dos Reis Apply patch by Stephen Wilson < Fix AW/370 * interp/compiler.boot (compWithMappingMode): Consult current environment to decide which variabes are free. * testsuite/compiler/cwmm-test.spad: New. 2008-01-21 Gabriel Dos Reis * algebra/syntax.spad.pamphlet (Syntax): Assert a member of SetCategory. Implement equality. * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Move BASTYPE.o from layer 3 to here. Move SYNTAX.o from here to layer 1. (axiom_algebra_layer_1): Move CTROCALL.o to layer 2. * share/algebra: Update database. 2008-01-20 Gabriel Dos Reis * algebra/syntax.spad.pamphlet (ElaboratedExpression): New. * algebra/any.spad.pamphlet: Rename ObjectProperty to Property. * algebra/exposed.lsp.pamphlet: Likewise. * algebra/Makefile.pamphlet (axiom_algebra_layer_5): Include ELABEXPR.o * share/algebra: Update databases. 2008-01-19 Gabriel Dos Reis * algebra/syntax.spad.pamphlet: Rename from algebra/syntax.spad. Add a new domain for constructor instantiation form. * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include CTORCALL.o (SYNTAX.NRLIB/code.$(FASLEXT)): Remove rule. Now implicit. * share/algebra: Update databases. 2008-01-19 Gabriel Dos Reis * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Now include SYNTAX.o * algebra/syntax.spad (buildSyntax$Syntax): Use CONS$Lisp to permit early bootstrap. 2008-01-19 Gabriel Dos Reis * algebra/any.spad.pamphlet (getProperty$Environment): New. (setProperty!$Environment): Likewise. (getProperties$Environment): Likewise. (setProperties!$Environment): Likewise. 2008-01-19 Gabriel Dos Reis * 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. 2008-01-17 Gabriel Dos Reis Fix SF/1849734 * interp/i-spec1.boot (upand): Don't insist on having operands of type Boolean. (upor): Likewise. * algebra/mkrecord.spad.pamphlet (Pair): New domain constructor. * algebra/exposed.lsp.pamphlet: Expose Pair, PropositionalLogic, PropositionalFormula. * algebra/boolean.spad.pamphlet (PropositionalFormula): New domain constructor. * algebra/Makefile.pamphlet (axiom_algebra_layer_4): Include PAIR.o. (axiom_algebra_layer_19): Include PROPFRML.o * share/algebra: Update databases. * testsuite/interpreter/1849734.input: New. 2008-01-16 Gabriel Dos Reis Fix SF/1848975 * interp/buildom.boot ($commonCategoryAncestors): New. ($commonCategoryDefaults): Likewise. (Record0): Use it. (Union): Likewise. (Mapping): Likewise. (Enumeration): Likewise. * testsuite/algebra/1848975.input: New. 2008-01-16 Gabriel Dos Reis Fix SF/1872564 * interp/compiler.boot (compPretend): Don't check for `new' compiler semantics. (compColonInside): Likewise. * testsuite/compiler/1872564.spad: New. 2008-01-15 Gabriel Dos Reis Fix SF/1850071 * algebra/syntax.spad (compound?$Syntax): New. 2008-01-15 Gabriel Dos Reis * algebra/boolean.spad.pamphlet (PropositionalLogic): New category. (Boolean): Assert as belonging to PropositionalLogic. Update cached Lisp translation. * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Add PROPLOG.o * src/algebra: Update databases. 2008-01-15 Gabriel Dos Reis * algebra/syntax.spad (autoCoerce$Syntax): Add overloads. * interp/compiler.boot (coerceExtraHard): Always coerce by autoCoerce. * testsuite/interpreter/case.spad: Likewise. * testsuite/interpreter/case.input: New. 2008-01-14 Gabriel Dos Reis * interp/compiler.boot (compSymbol): Don't handle possible case views here. (hasUniqueCaseView): Rename from getUniqueCaseView. Take the target mode as second argument. (compForm2): Use calling convention vector to determine infer flag parameter types. (compCase1): Uniformly handle `case-expressions'. Call genDeltaEntry for selected operator. (coerceExtraHard): Handle coercions from UnionType domains. (autoCoerceByModemap): Tidy. * interp/g-opt.boot (optCall): Be more verbose in diagnostics. * algebra/syntax.spad (Syntax): Rework. * algebra/coerce.spad.pamphlet (UnionType): New. * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include UTYPE.o * share/algebra: Update databases. 2008-01-13 Gabriel Dos Reis Fix SF/1852076 * algebra/domain.spad (reify$Domain): Specify target type of conversion. * interp/nrunfast.boot (newLookupInDomain): Tidy. (newLookupInCategories): Likewise. * testsuite/interpreter/1852076.input: New. 2008-01-13 Gabriel Dos Reis Fix SF/1867459 * interp/postpar.boot (postError): Fix thinko. * interp/parse.boot ($defOp): Define. * testsuite/compiler/1867459.spad: New. 2008-01-13 Ralf Hemmecke Gabriel Dos Reis * algebra/bags.spad.pamphlet (map!$Stack): Cache the result in the underlying reference. 2008-01-11 Gabriel Dos Reis * interp/msg.boot (getStFromMsg): Fix typo. 2008-01-10 Gabriel Dos Reis * algebra/syntax.spad (getOperator): Inject into the right Union branch. 2008-01-08 Gabriel Dos Reis * interp/msgdb.boot (brightPrint0): Disable highlightinh on Win32. * lib/cfuns-c.c (std_stream_is_terminal): Tidy. 2008-01-08 Gabriel Dos Reis * boot/Makefile.pamphlet (AXIOM_LOCAL_LISP): Use Lisp image with C bindings. * interp/msgdb.boot (brightPrint0): Don't highlight if the standard output is not attached to a terminal. * interp/sys-driver.boot (stdStreamIsTerminal): New. * lib/cfuns-c.c (std_stream_is_terminal): New. 2008-01-07 Gabriel Dos Reis * boot/ast.boot.pamphlet (Ast): Add ImportSignature, Signature, and Mapping. * boot/parser.boot.pamphlet (bpImport): Parse import declaration. (bpSignature): New. (bpMapping): Likewise. * boot/tokens.boot.pamphlet (shoeKeyWords): Add new keyword. * boot/translator.boot.pamphlet (genImportDeclaration): Translate import declaration. (shoeOutItem): Handle import declarations. 2008-01-06 Gabriel Dos Reis * sman/sman.c: Remove debug and dead codes. 2008-01-06 Gabriel Dos Reis * driver/main.c (main) [__WIN32__]: Fix off-by-one thinko. 2008-01-05 Gabriel Dos Reis * scripts/axiom.in: Remove. * driver: New directory. * driver/main.c: New. Now implement driver as native application.