diff options
author | Gabriel Dos Reis <gdr@acm.org> | 2015-12-22 10:31:37 -0800 |
---|---|---|
committer | Gabriel Dos Reis <gdr@axiomatics.org> | 2015-12-22 10:34:05 -0800 |
commit | 2c5d67a97f944c08f3408328d41e5b5fe309aff7 (patch) | |
tree | 651f74d481f0e1c64d9f7d738a0deb1ee513da00 /src/ChangeLog | |
parent | 195b1eb05b7f5d93dce92b68db543c025fb84ebd (diff) | |
download | open-axiom-2c5d67a97f944c08f3408328d41e5b5fe309aff7.tar.gz |
Consolidate ChangeLogs.
Diffstat (limited to 'src/ChangeLog')
-rw-r--r-- | src/ChangeLog | 18427 |
1 files changed, 18427 insertions, 0 deletions
diff --git a/src/ChangeLog b/src/ChangeLog index d4d89f1b..447fde62 100644 --- a/src/ChangeLog +++ b/src/ChangeLog @@ -144,3 +144,18430 @@ * lib/cfuns-c.c (make_c_str): New helper. (oa_acquire_temporary_pathname): Use it. Prefer mktemp. +2013-12-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + Fix SF/95. + * include/vm.H (internal_type): Adjust. + (internal_data): Likewise. + +2013-11-26 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/storage.H (Arena<T>::allocate): Adjust spelling of + alignment query operator. + (Arena<T>::Arena): Likewise. + (HashTableEntry<T>): Adjust spelling of alignment specifier. + +2013-11-03 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/Charset.H (OpenAxiom): New. + +2013-07-04 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/sys-driver.boot (initializeGlobalState): Tell GCL not to + use buggy fast links. + +2013-07-01 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/sys-utility.boot (makeFilename): Tidy. + +2013-07-01 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/g-util.boot (relativeDirname): New. Abstract differences + between Common Lisp semantics and traditional semantics (GCL). + * interp/c-util.boot (moveLibdirByCopy): Use it. + +2013-06-30 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * lisp/core.lisp.in (maxIndex): Provide function definition for + the benefit of rotted GCL systems. + +2013-06-29 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/sockio.h (accept_connection): Take no argument. + (server): Adjust type. + * lib/sockio-c.c: Implement changes. + * hyper/spadint.c (accept_menu_server_connection): Adjust use of + server. + * sman/session.c (manage_sessions): Likewise. + * sman/sman.c (manage_spad_io): Likewise. + +2013-06-28 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * gui/conversation.cc (accumulate_paragraphs): Remove. + (read_output): Remove. + (OutputTextArea::add_paragraph): Rewrite. + (Conversation::read_reply): Likewise. + +2013-06-27 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * src/rt: New directory. Move vm.cc and Lisp.cc here. + * rt/Database.cc: New. + * include/Database.H: Likewise. + * include/Constructor.H: Likewise. + * gui/server.h (Server): Cache database input souece. + * gui/gui.pro.in (LIBS): Add core runtime library. + * Makefile.am (oa_src_include_headers): Add Constructor.H and + Database.H. + +2013-06-27 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/Lisp.H: New. + * utils/Lisp.cc: Likewise. + * gui/server.h (Server::lisp): Give access to embedded Lisp evaluator. + * gui/main-window.cc (MainWind::read_databases): Use embedded Lisp + evaluator. + * include/vm.H: Move from src/utils/. + * Makefile.am (oa_src_include_headers): Include vm.H. + +2013-06-27 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/lisplib.boot (compDefineLisplib): Close the file + contained generated code before handing over to backend. + * interp/c-util.boot (moveLibdirByCopy): The inferred destination + directory is not absolute. + +2013-06-26 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/sexpr.H (Lexer): Remove. + (Parser): Likewise. + (Reader): New. + * syntax/sexpr.cc: Propagate changes. + * gui/main-window.h (MainWindow::read_databases): Declare. + (MainWindow::display_error): Likewise. + * gui/main-window.cc: Implement. + * gui/gui.pro.in (LIBS): Include syntax library. + * Makefile.am (oa_src_include_headers): Add sexpr.H. Fix build + failure from previous commit. + +2013-06-24 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/sexpr.H: Move from utils. + (UniqueAllocator): Remove. + (SyntaxComparator): Likewise. + * syntax/sexpr.cc: Move from utils. + +2013-06-24 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/cattable.boot (squeezeList): Remove. + (squeeze1): Likewise. + * interp/daase.lisp (*COMPRESSVECTOR*): Likewise. + (*COMPRESSVECTORLENGTH*): Likewise. + (*COMPRESS-STREAM*): Likewise. + (*COMPRESS-STREAM-STAMP*): Likewise. + (COMPRESSOPEN): Remove. Adjust callers. + (unsqueezeCopy): Likewise. + (WRITE-COMPRESS): Likewise. + (SQUEEZE): Likewise. + (UNSQUEEZE): Likewise. + (MAKE-DATABASES): Do not write out compress.daase. + * interp/database.boot (squeezeAll): Likewise. + +2013-06-24 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/sys-constants.boot ($BuiltinAttributes): Remove + finiteAggregate and shallowlyMutable. + * interp/daase.lisp (WRITE-COMPRESS): Do not push strings. + +2013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/token.H (token::base_type): Renam from class_type. + (token::value): Add unary, binary, and ternary overloads. + * utils/sexpr.H (Sexpr::Token): Use token::value. Clean up. + +2013-06-22 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/SourceFile.H: New. + +2013-06-21 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/FileMapping.H: New. + +2013-06-21 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/dialect.H: New. + * include/diagnostics.H: Likewise. + * include/storage.H: Move from utils/. + +2013-06-20 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/diagnostics.H: New. + * io/std-streams.cc: Likewise. + +2013-06-20 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * boot/scanner.boot (shoeToken): Allow inerts. + * boot/ast.boot (bfInert): New. + * boot/parser.boot (bpInert): New. + (bpConstTok): Use it. + +2013-06-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/compiler.boot (compHasFormat): Take a DB parameter. + Adjust callers. + * interp/define.boot (ICformat): Likewise. + * interp/lisplib.boot (predicateBitIndex): Likewise. + (predicateBitRef): Likewise. + (transHasCode): Likewise. + +2013-06-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/catdef.spad.pamphlet (CommutativeOperatorCategory): New. + (CommutativeOperation): Likewise. + * algebra/Makefile.am (oa_algebra_layer_0): Include them. + +2013-06-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (EltableAggregate): Weaken + requirement on first parameter. + (IndexedAggregate): Likewise. + +2013-06-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/catdef.spad.pamphlet (PartialDifferentialSpace): Weaken + requirement on parameter. + (PartialDifferentialRing): Likewise. + (PartialDifferentialModule): Likewise. + +2013-06-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/parsers.spad.pamphlet: New. + * algebra/script-parser.spad: Move content to parsers.spad.pamphlet. + Remove. + * algebra/spad-parser.spad: Likewise. + +2013-06-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/ht-util.boot (mkCurryFun): Import function name. + +2013-06-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * boot/tokens.boot (importSymbol): New builtin. + * interp/br-saturn.boot (htpMakeEmptyPage): Use it. + +2013-06-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/database.boot (dbConstructorDefault): New accessor. + (getCategoryConstructorDefault): New. + * interp/define.boot (makeCategoryAlist): Use it. + (hasDefaultPackage): Remove. + (mkCategoryPackage): First parameter is now a DB. Take + environment parameter too. Adjust caller. + * interp/lisplib.boot (writeCategoryDefault): New. + (finalizeLisplib): Call it when appropriate. + +2013-06-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (makeCategoryPredicates): Tidy. Adjust caller. + +2013-06-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/c-util.boot (extendsCategoryForm): Take a DB parameter. + Avoid special variables for current constructor form. Adjust callers. + * interp/define.boot (compDefineCategory2): Register current + constructor in environment. + +2013-06-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/lisplib.boot (writeSourceFile): Always write source file. + +2013-06-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/nruncomp.boot (NRTsetVector4Part1): Add environment parameter. + Adjust caller. + (NRTsetVector4a): Likewise. Avoid special variable for environment. + * boot/utility.boot: Add and export substSource, substTarget. + * interp/define.boot: Use them. + +2013-06-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/compiler.boot (categoryInstance?): New. + (compColon): Use it for category definitions. + * interp/c-util.boot: Add accessors for infovec parts. + * boot/utility.boot (invertSubst): New. Export. + * interp/Makefile.in ($(SAVESYS)): Remove --sysdb and --system-algebra. + +2013-06-13 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (getvalue): Rename from GetValue. + Take environment as second parameter. Adjust callers. + +2013-06-13 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/nruncomp.boot (listOfBoundVars): Take environment as + second parameter. Adjust callers. + (optDeltaEntry): Likewise. + +2013-06-05 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (substSlotNumbers): Remove redundant check. + * interp/lisplib.boot (NRTgenInitialAttributeAlist): Simplify. + * interp/showimp.boot (dc): Likewise. + +2013-06-02 Gabriel Dos Reis <gdr@integrable-solutions.net> + + Make parser non-dependent on constructor databases. + * interp/compiler.boot (instantiateNiladics!): New. + (compileParseTree): Use it to expand niladict constructors. + (instantiateNiladicsInList!): New. + * interp/c-doc.boot (instantiateNiladicsInDoc!): New. + (finalizeDocumentation): Use it. + +2013-06-01 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (addInfo): Remove. + (addinformation): Tidy. + +2013-06-01 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (NRTgetLookupFunction): Take a cache table. + Adjust caller. + (NRTextendsCategory1): Likewise. + (extendsCategory): Likewise. + (extendsCategoryBasic): Likewise. + (catExtendsCat?): Likewise. + (getCategoryObjectIfCan): New. + (getCategoryObject): Use it. + * interp/lisplib.boot (getSlot1): Remove as unused. + +2013-06-01 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/category.boot (SigListUnion): Take a cache table. Adjust + callers. + (mkOr): Likewise. + (mkOr2): Likewise. + (mkAnd): Likewise. + (mkAnd2): Likewise. + (FindFundAncs): Likewise. + (CatEval): Likewise. + (ancestors?): Likewise. + (descendant?): Likewise. + (filterConditionalCategories): Likewise. + * interp/functor.boot (ICformat): Likewise. + +2013-06-01 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (getCategoryObject): New. + * interp/functor.boot (InvestigateConditions): Use it. + (getViewsConditions): Likewise. + (getPossibleViews): Likewise. + +2013-06-01 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/category.boot (filterConditionalCategories): Fix thinko. + +2013-06-01 Gabriel Dos Reis <gdr@integrable-solutions.net> + + Support --output in compiler, for bootstrapping stage. + * lisp/core.lisp.in (directoryEntries): New. + * interp/lisplib.boot (compDefineLisplib): Tidy. Honor --output. + (initializeLisplib): Rewrite. + (lisplibDoRename): Likewise. + * interp/nlib.lisp (RSHUT): Tidy. + * interp/define.boot (getOutputPath): New. + (compDefineFunctor): Use it. + (compDefineCategory): Likewise. + * interp/c-util.boot (%Libstream): Add field for output pathname. + (dbOutputPath): New accessor. + (moveLibdirByCopy): New. + * include/cfuns.h (oa_acquire_temporary_pathname): Declare. + (oa_release_temporary_pathname): Likewise. + * lib/cfuns-c.c: Implement them. + * interp/sys-os.boot: Define acquireTemporaryPathname. + * boot/ast.boot (lispKey): New. + (bfApplication): Use it. + (bfExpandKeys): Likewise. + * algebra/Makefile.am: Simplify bootstrapping rules. + +2013-05-31 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/nlib.lisp (getIndexIOStreamAndTable): New. + +2013-05-30 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (knowInfo): Fix typo. + +2013-05-30 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/c-doc.boot (finalizeDocumentation): Take a DB parameter. + Adjust callers. + * interp/lisplib.boot (compileDocumentation): Likewise. + (writeSourceFile): New. + (writeInteractiveModemaps): Likewise. + (writeDocumentation): Likewise. + +2013-05-29 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/lisp-backend.boot (compileLispDefinition): Remove. + Adjust callers. + (printBackendDecl): Lose first parameter. Adjust callers. + * interp/slam.boot (compQuietly): Simplify. + * interp/sys-utility.boot (COMPILE-DEFUN): Remove. Adjust callers. + (EVAL-DEFUN): Likewise. + * interp/sys-macros.lisp (MACROEXPANDALL): Remove as no longer used.. + +2013-05-28 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (compDefineCategory1): Take DB parameter. + (compDefineCategory2): Likewise. + (compDefineFunctor1): Likewise. + * interp/lisplib.boot (compDefineLisplib): Likewise. + +2013-05-28 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/sys-globals.boot ($domainShell): Remove. + * interp/c-util.boot (%CompilationData): Add shell field. + (dbDomainShell): New accessor. Replace $domainShell variable. + +2013-05-27 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/compiler.boot(compNoStacking): Add DB parameter. + Adjust callers. + (comp2): Likewise. + (comp3): Likewise. + * interp/c-util.boot (currentDB): New. + (currentConstructor): Remove. Adjust callers. + +2013-05-27 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (compDefine): Take DB as first parameter. + Adjust callers. + +2013-05-27 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/sys-utility.boot ($ERASE): Remove. + +2013-05-27 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/nlib.lisp ($FINDFILE): Move to sys-utility.boot. + +2013-05-27 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/nlib.lisp (MAKE-INPUT-FILENAME): Move to sys-utility.boot. + * boot/ast.boot (bfIS1): Handle Lisp keywords. + +2013-05-26 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/nlib.lisp (GET-DIRECTORY-LIST): Move to sys-utility.boot. + +2013-05-26 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/lisplib.boot: Replace $FILEP with makeFullFilePath. + * interp/setvars.boot: Likewise. + * interp/nlib.lisp ($FILEP): Remove. + ($OUTFILEP): Likewise. + +2013-05-26 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/sys-os.boot (getWorkingDirectory): New. Define via FFI. + Replace all uses of GET-CURRENT-DIRECTORY. + * interp/daase.lisp (GET-CURRENT-DIRECTORY): Remove. + +2013-05-26 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/nlib.lisp (MAKE-FULL-NAMESTRING): Move to sys-utility.boot. + Rename to makeFullFilePath. Adjust callers. + +2013-05-26 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/boolean.spad.pamphlet (IndexedBits)[<]: Define in Spad. + * interp/bits.lisp: Remove. + +2013-05-26 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/sys-utility.boot (makeFilename): Move from nlib.lisp. + * interp/nlib.lisp (MAKE-FILENAME): Move to sys-utility.boot. + Adjust callers. + * boot/tokens.boot: Add new builtins: filePath, filePath?, + filePathDirectory, filePathName, filePathString, filePathType, + makeFilePath. + +2013-05-26 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/nlib.lisp (ADDOPTIONS): Move to sys-utility.boot. + * interp/sys-utility.boot (addCompilerOption): Rename from ADDOPTIONS. + +2013-05-25 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/logic.spad.pamphlet: New file. + * algebra/boolean.spad.pamphlet (Logic): Move there. + (BooleanLogic): Likewise. + (PropositionalLogic): Likewise. + (PropositionalFormula): Likewise. + (PropositionalFormulaFunctions1): Likewise. + (PropositionalFormulaFunctions2): Likewise. + (KleeneTrivalentLogic): Likewise. + +2013-05-25 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/cycles.spad.pamphlet (CycleIndicators) [spol]: Rename + from nniBump. Fix thinko. + +2013-05-25 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/cycles.spad.pamphlet (alternating): Accept non-negative input. + +2013-05-25 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * utils/command.cc (print_usage): Document --verbose. + +2013-05-25 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/indexedp.spad.pamphlet (IndexedDirectProductObject): + Define Rep, do not use base-domain form. + +2013-05-23 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/stream.spad.pamphlet (LazyStreamAggregate) [entries]: + Define unconditionally, even it it does not make much sense in general. + +2013-05-22 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/sys-utility.boot (%Libstream): New. + +2013-05-21 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (ShallowlyMutableAggregate): Extend + Aggregate only. Adjust users. + (BagAggregate): Explicitly extend HomogeneousAggregate. + (AssociationListAggregate): Extend ShallowlyMutableAggregate. + +2013-05-21 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (UnaryRecursiveAggregate) [map!]: + Implement default. + * algebra/list.spad.pamphlet (List) [map!]: Likewise. + +2013-05-20 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/database.boot (getConstructorAbbreviationFromDB): Use DB + data structure directtly. + (getConstructorKindFromDB): Likewise. + +2013-05-20 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (Collection) [find]: Move to + FiniteAggregate. + +2013-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/derham.spad.pamphlet: Use Functorial. + * algebra/equation2.spad.pamphlet: Likewise. + * algebra/fr.spad.pamphlet: Likewise. + * algebra/indexedp.spad.pamphlet: Likewise. + * algebra/ituple.spad.pamphlet: Likewise. + * algebra/mring.spad.pamphlet: Likewise. + * algebra/polycat.spad.pamphlet: Likewise. + * algebra/array2.spad.pamphlet: Remove redundant map export. + * algebra/exposed.lsp.pamphlet: Expose Functorial. + * algebra/matcat.spad.pamphlet: Likewise. + * algebra/xpoly.spad.pamphlet: Likewise. + +2013-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> + + Eradicate attribute shallowlyMutable. + * algebra/aggcat.spad.pamphlet: Use ShallowlyMutableAggregate. + * algebra/defaults.spad.pamphlet: Likewise. + * algebra/smith.spad.pamphlet: Likewise. + * algebra/solvelin.spad.pamphlet: Likewise. + +2013-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/matfuns.spad.pamphlet: Use ShallowlyMutableAggregate. + +2013-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/matcat.spad.pamphlet: Use ShallowlyMutableAggregate. + +2013-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat2.spad.pamphlet: Use ShallowlyMutableAggregate. + +2013-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/newdata.spad.pamphlet (SplittingTree): Include + ShallowlyMutableAggregate S in exports. + * algebra/polset.spad.pamphlet (GeneralPolynomialSet): Inlcude + ShallowlyMutableAggregate P. + * algebra/triset.spad.pamphlet (TriangularSetCategory): Likewise. + +2013-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> + + Eradicate attribute finiteAggregate. + * algebra/aggcat.spad.pamphlet (HomogeneousAggregate): Remove + exports conditional aatribute finiteAggregate. + (TableAggregate): Remove spirous definitions. + * algebra/stream.spad.pamphlet (LazyStreamAggregate): Put + definitions for FiniteAgregate exports under appropriate condition. + +2013-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (Aggregate) [#]: Remove export. + (UnaryRecursiveAggregate): Make definiton conditional. + * algebra/stream.spad.pamphlet (LazyStreamAggregate): Likewise. + +2013-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (compDefineFunctor1): Use the current + instantiation form when adding modemaps from category. + (partialSignature?): New. + (refineDefinitionSignature): Use full completion from getSignature. + * interp/compiler.boot (compIterator): Simplify. + +2013-05-19 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (sourceMatches): New. + (getDollarName): Likewise. + (getSignature): Them. Tidy. + (setDollarName): New. + (compDefineFunctor1): Use it. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (getSignature): Third parameter need not be fluid. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (getSignature): Tidy. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/cycles.spad.pamphlet (CycleIndicators) [nniBump]: New + local function. + [SFunction]: Use it. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/cycles.spad.pamphlet (CycleIndicators) + [complete,alternating]: Change input type to NonNegativeInteger. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (knownPred): Take a memo-table as third parameter. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (FiniteAgregate): Remove attribute + finiteAggregate. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (Collection) [reduce]: Remove. + Remove redundant defaults. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (HomogeneousAggregate): Move + defaults for = and coerce to FiniteAggregate. Remove the rest. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (FiniteAggregate) [reduce]: Add + overloads. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (HomogeneousAggregate) [parts]: Remove. + * algebra/permgrps.spad.pamphlet: Use members, not parts. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat2.spad.pamphlet: Use members, not parts. + * algebra/algcat.spad.pamphlet: Likewise. + * algebra/cden.spad.pamphlet: Likewise. + * algebra/clifford.spad.pamphlet: Likewise. + * algebra/divisor.spad.pamphlet: Likewise. + * algebra/galfact.spad.pamphlet: Likewise. + * algebra/lodof.spad.pamphlet: Likewise. + * algebra/naalgc.spad.pamphlet: Likewise. + * algebra/oderf.spad.pamphlet: Likewise. + * algebra/rule.spad.pamphlet: Likewise. + * algebra/space.spad.pamphlet: Likewise. + * algebra/view3D.spad.pamphlet: Likewise. + * algebra/zerodim.spad.pamphlet: Likewise. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array1.spad.pamphlet: Define members, not parts. + * algebra/array2.spad.pamphlet: Likewise. + * algebra/bags.spad.pamphlet: Likewise. + * algebra/list.spad.pamphlet: Likewise. + * algebra/lmdict.spad.pamphlet: Likewise. + * algebra/mset.spad.pamphlet: Likewise. + * algebra/polset.spad.pamphlet: Likewise. + * algebra/regset.spad.pamphlet: Likewise. + * algebra/sets.spad.pamphlet: Likewise. + * algebra/sregset.spad.pamphlet: Likewise. + * algebra/string.spad.pamphlet: Likewise. + * algebra/tree.spad.pamphlet: Likewise. + * algebra/triset.spad.pamphlet: Likewise. + * algebra/vector.spad.pamphlet: Likewise. + +2013-05-18 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet: Tidy. + +2013-05-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/mset.spad.pamphlet (Multiset) [unique]: Rename from + members to avoid semantics clash. + +2013-05-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet: Replace uses of parts by members. + +2013-05-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/attreg.spad.pamphlet (AttributeRegistry): Remove + shallowlyMutble. + * algebra/aggcat.spad.pamphlet (BagAggregate): Extend + ShallowlyMutableAggregate. + (ExtensibleLinearAggregate): Likewise. + * algebra/mset.spad.pamphlet (Multiset): Likewise. + * algebra/tree.spad.pamphlet (Tree): Likewise. + +2013-05-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/tree.spad.pamphlet(BinaryTreeCategory): Extend + ShallowlyMutableAggregate S. + (BinarySearchTree): Remove redundant shallowlyMutable attribute. + (BalancedBinaryTree): Likewise. + +2013-05-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (ShallowlyMutableAggregate): New. + +2013-05-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (FiniteAggregate): More defaults. + (Aggregate): Remove default implementation of empty? + +2013-05-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (FiniteAggregate): Add default + implementation for empty?. + +2013-05-17 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (TableAggregate): Now extend + FiniteAggregate Record(key:Key,entry:Entry). + * algebra/files.spad.pamphlet (KeyedAccessFile): Remove + finiteAggregate attribute. + * algebra/table.spad.pamphlet (HashTable): Likewise. + (InnerTable): Likewise. + (Table): Likewise. + +2013-05-16 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (KeyedDictionary): Now extend + IndexedAggregate too. Give default implementation for elt. + (TableAggregate): Simplify. + +2013-05-16 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/ffp.spad.pamphlet (FiniteFieldExtensionByPolynomial) + [tableForDiscreteLogarithm]: Don't use pretend where checked + coercion is intended. + * algebra/pf.spad.pamphlet (InnerPrimeField) + [tableForDiscreteLogarithm]: Likewise. + +2013-05-16 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (AssociationListAggregate) [assoc]: + Change return type to instance of Maybe. + * algebra/list.spad.pamphle (AssociationList): Reflect change. + +2013-05-16 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/sortpak.spad.pamphlet (SortPackage): Have second + parameter satisfy FiniteAggregate A instead of requiring attribute + finiteAggregate. + * algebra/array2.spad.pamphlet (TwoDimensionalArrayCategory): Now + extends FiniteAggregate. Remove finiteAggregate attribute. + +2013-05-16 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/polset.spad.pamphlet (GeneralPolynomialSet): Remove + redundant FiniteAggregate. + * algebra/triset.spad.pamphlet (TriangularSetCategory): Likewise. + +2013-05-16 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (FiniteAggregate): Temporarily + include attribute finiteAggregate. + (StackAggregate): Extend category FiniteAggregate instead of + attribute finiteAggregate. + (QueueAggregate): Likewise. + (PriorityQueueAggregate): Likewise. + (FiniteSetAggregate): Likewise. + * algebra/lmdict.spad.pamphlet (ListMultiDictionary): Likewise. + * algebra/matcat.spad.pamphlet (MatrixCategory): Likewise. + * algebra/mset.spad.pamphlet (Multiset): Likewise. + * algebra/newdata.spad.pamphlet (SplittingTree): Likewise. + * algebra/polset.spad.pamphlet (PolynomialSetCategory): Likewise. + * algebra/tree.spad.pamphlet (Tree): Likewise. + (BinaryTreeCategory): Likewise. + * algebra/triset.spad.pamphlet (TriangularSetCategory): Likewise. + * algebra/vector.spad.pamphlet (DirectProductCategory): Likewise. + +2013-05-16 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/data.spad.pamphlet (Byte): Remove redundant + finiteAggregate attribute. + * algebra/tree.spad.pamphlet (BinaryTreeCategory): Likewise. + (BinarySearchTree): Likewise. + (BalancedBinaryTree): Likewise. + +2013-05-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/aggcat.spad.pamphlet (FiniteAggregate): New. + * algebra/exposed.lsp.pamphlet: Expose it. + +2013-05-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/compiler.boot (unknownTypeError): Simplify. + * interp/define.boot (dbClearForCompilation!): Clear more fields. + +2013-05-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/compiler.boot (comp2): Leave categories alone. + +2013-05-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/compiler.boot (comp2): Don't test for $bootStrapMode. + +2013-05-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/daase.lisp (dbDocumentation): New accessor. + +2013-05-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (dbClearForCompilation!): New. + (compDefineFunctor1): Use it. + +2013-05-15 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/nruncomp.boot (NRTputInHead): Tidy. + +2013-05-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/g-opt.boot (quoteMode): New. + (optRetract): Use it. + (optPullback): Likewise. + +2013-05-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/define.boot (checkAndDeclare): Constructor parameter + shadowing. + * algebra/lodof.spad.pamphlet (SetOfMIntegersInOneToN): [enum]: + Lose last parameter. Adjust callers. + +2013-05-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/c-util.boot (cleanParameterList!): New. + * interp/define.boot (spadCompileOrSetq): Use it. + +2013-05-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array2.spad.pamphlet (TwoDimensionalArrayCategory): + Remove redundant declaration for parts. + +2013-05-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array2.spad.pamphlet (TwoDimensionalArrayCategory): Test + for BasicType satisfaction instead of existence of =. + +2013-05-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array2.spad.pamphlet (InnerTwoDimensionalArray) [map]: + Move implementation from TwoDimensionalArrayCategory. + +2013-05-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array2.spad.pamphlet (TwoDimensionalArrayCategory): Move + defaults to InnerTwoDimensionalArray. + +2013-05-14 Edi Meier <liste_franken@gmx.de> + + * graph/include/G.h (GCstruct::GCchar): Increase length to 12. + +2013-05-14 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array2.spad.pamphlet (InnerTwoDimensionalArray) + [row, column]: Fix off-by-one thinko. + +2013-05-13 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array2.spad.pamphlet (TwoDimensionalArrayCategory): Move + row column implementation to InnerTwoDimensionalArray. + (InnerTwoDimensionalArray): Simplify row and column implementation. + +2013-05-13 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array2.spad.pamphlet (InnerTwoDimensionalArray): Inherit + empty? and empty from base domain. + (TwoDimensionalArray): Attribute shallowlyMutable is already + specified by TwoDimensionalArrayCategory. + * algebra/matcat.spad.pamphlet (MatricCategory): Attributes + shallowlyMutable and finiteAggregate are already specified by + TwoDimensionalArrayCategory. + +2013-05-13 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array1.spad.pamphlet (IndexedOneDimensionalArray): Tidy. + +2013-05-13 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/g-opt.boot (%array2list): New side-effect free opcode. + * interp/lisp-backend.boot: Expand it. + * algebra/array1.spad.pamphlet (PrimitiveArray): Implement + maxIndex, parts, and members. + +2013-05-12 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/vector.spad.pamphlet (IndexedVector): Remove. + (Vector): Use OneDimensionalArray as base domain for implementation. + * algebra/Makefile.am: Update. + +2013-05-12 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/carten.spad.pamphlet (CartesianTensor): Use + PrimitiveArray in lieu of 0-based IndexedVector. + +2013-05-12 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/database.boot (getConstructorModemap): Revert previous change. + +2013-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/matrix.spad.pamphlet (RectangularMatrix) [ZERO]: Remove. + (SquareMatrix) [ZERO, ONE]: Likewise. + +2013-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net> + Waldek Hebisch <hebisch@math.uni.wroc.pl> + + * algebra/catdef.spad.pamphlet (OrderedRing): Extend + CharactericZero too. + +2013-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array2.spad.pamphlet (InnerTwoDimensionalArray): Rename + from InnerIndexedTwoDimensionalArray. Adjust users. + +2013-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/database.boot (getConstructorModemap): Try to load fresh + module first before looking into cached database data. + * algebra/Makefile.am (oa_algebra_layer_11): Remove IARRAY2. + * algebra/array2.spad.pamphlet (InnerIndexedTwoDimensionalArray): + Drop starting index parameters. Tidy. Adjust users. + (IndexedTwoDimensionalArray): Remove as unused. + +2013-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/array2.spad.pamphlet: Clean up. + +2013-05-11 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/indexedp.spad.pamphlet + (IndexedDirectProductAbelianMonoid) [opposite?]: Implement. + +2013-05-10 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/matrix.spad.pamphlet (IndexedMatrix): Remove as unused. + * algebra/Makefile.am (oa_algebra_layer_12): Remove IMATRIX. + +2013-05-10 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/g-opt.boot (optEmptyArray): New expander. Register. + (optSimpleArray): Likewise. + (optList2Array): Likewise. + * interp/lisp-backend.boot: Expand %elementType, %initialElement, + %initialContents, %array, %type2form opcodes. + * algebra/array1.spad.pamphlet (PrimitiveArray): Tidy. + +2013-05-10 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/indexedp.spad.pamphlet + (IndexedDirectProductOrderedAbelianMonoid) [<]: Rewrite iteratively. + +2013-05-10 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/catdef.spad.pamphlet (AbelianMonoid) [opposite?]: New. + (Rng)[annihilate?]: New. + (EntireRing) [annihilate?]: Implement. + * algebra/integer.spad.pamphlet (Integer): Implement new exports. + +2013-05-09 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/lexing.boot (Keywords): Add "do". + * interp/spad-parser.boot (parseBlock): New. + (parseDo): Likewise. Register for do-statements. + * interp/compiler.boot (compDo): New. Handle do-statements. + +2013-05-09 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/indexedp.spad.pamphlet (IndexedDirectProductObject) + [combineWithIf]: New. + +2013-05-09 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/i-special.boot (evalIF): Generate OIL intermediate + instruction %otherwise, not Lisp expression T. + * interp/slam.boot (isRecurrenceRelation): Likewise. + +2013-05-08 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/list.spad.pamphlet (List) [copy]: Simplify. + * interp/g-opt.boot (%lcopy): New side-effect free builtin. + * interp/lisp-backend.boot: Translate it. + +2013-05-08 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/c-util.boot (almostPure?): New. + (foldExportedFunctionReferences): Use it. + +2013-05-07 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/vector.spad.pamphlet (LinearElement) [corodinates]: Tidy. + (LineraForm) [coordinates]: Likewise. + +2013-05-07 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/indexedp.spad.pamphlet (IndexedDirectProductCategory): + Now extends ConvertibleFrom IndexedProductTerm(A,S). + (IndexedDirectProductObject): Simplify. + (IndexedDirectProductAbelianMonoid): Tidy. + (IndexedDirectProductOrderedAbelianMonoid): Likewise. + +2013-05-07 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/indexedp.spad.pamphlet (IndexedProductTerm): New domain. + +2013-04-07 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * gui/widget.h: Remove. Qt's meta object system does no play nice + with modern C++ idioms. + +2013-04-07 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * utils/command.cc (args_count): New. + (execute_core): Use it. Tidy. + (Arguments::Arguments): Tidy. + +2013-04-06 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * gui/server.h: New. + * gui/server.cc: Likewise.. + * gui/gui.pro.in (HEADERS): Update. + (SOURCES): Likewise. + +2013-04-05 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/token.H: New. + * syntax/token.cc: Likewise. + * syntax/Makefile.am: Likewise. + * Makefile.am (DIST_SUBDIRS): Add syntax. + (oa_src_include_headers): Add Input.H, token.H. + +2013-04-04 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * algebra/Makefile.am: New. + * algebra/Makefile.in: Generate content from Makefile.am. + +2013-04-03 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * include/Input.H: New. + * include/defaults.H: Likewise. + * include/iterator.H: Likewise. + * include/structure.H: Likewise. + * io/Input.cc: Likewise. + * Makefile.am (DIST_SUBDIRS): Include io. + (subdirs): Likewise. + (oa_src_include_headers): New. + (all-headers): New rule. + (mostlyclean-local): Remove target include directory too. + * gui/gui.pro.in: Update with new dependency. + +2013-04-02 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * gui/conversation.h (Question::leaveEvent): Remove. + (Question::focusOutEvent): Likewise. + * gui/conversation.cc: Remove corresponding definitions. + +2013-04-02 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * gui/conversation.cc (font_units): Rename from em_metrics. + Adjust callers. + (Answer::Answer): Use raised frame style. + +2013-03-31 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * lib/sockio-c.c (get_float): Remove unused local variable val. + * lib/pixmap.c (read_pixmap_file): Remove unused local variable status. + * lib/openpty.c (makeNextPtyNames): Guard declaration by CPP macro. + * lib/fnct_key.c (define_function_keys): Remove unused local + variable saved_echo. + * lib/XSpadFill.c (XInitSpadFill): Remove unused local variable + maxDither. + * graph/viewman/fun2D.c (funView2D): Remove declaration of unused + local variable code. + * graph/viewman/fun3D.c (funView3D): Likewise. + +2013-03-31 Gabriel Dos Reis <gdr@integrable-solutions.net> + + * interp/pile.boot (insertpile): Tidy. + (pilePlusComments): Likewise. + (pileTree): Likewise. + (eqpileTree): Likewise. + +2012-10-10 Igor Pashev <pashev.igor@gmail.com> + Andrey G, Grozin <A.G.Grozin@inp.nsk.su> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/command.cc (build_rts_options) [sbcl_runtime]: Inhibit + system-wide and user-supplied initialization files. + +2012-08-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/hthits.c (splitpage): Revert unintended change from last + commit. + * hyper/initx.c (is_it_850): Likewise. + +2012-08-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * graph/Gdraws/Gfun.c (GDrawLine): Make string parameter of type + const char*. + (GDrawPushButton): Likewise. + (GDrawString): Likewise. + (PSCreateContext): Likewise. + (centerX): Likewise. + * Makefile.am (all-graph): Require all-utils. + +2012-08-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-os.boot (flushStdout): Remove as unused. + * interp/i-toplev.boot (recordAndPrint): Do not print a newline + before formatting the result. + +2012-08-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/debug.lisp: Remove reference to TOK and CHR. + * interp/spad-parser.boot: Likewise. + * interp/g-error.boot: Likewise. + * interp/sys-globals.boot: Likewise. + * interp/br-saturn.boot: Replace TERSYSCOMAND by + terminateSystemCommand. + * interp/i-syscmd.boot: Likewise. + (terminateSystemCommand): Simplify. + * interp/spad.lisp (TERSYSCOMMAND): Remove. + +2012-08-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/sockio.h (init_purpose_table): Remove declaration. + (redirect_stdio): Likewise. + (init_socks): Likewise. + (flush_stdout): Likewise. + (print_line): Likewise. + (BaloonServer): Remove. + (DebugWindow): Likewise. + (Forker): Likewise. + (AV): Likewise. + * interp/server.boot (serverReadLine): Do not flushOutput. + * interp/sys-constants.boot ($MessageServer): Remove. + ($DebugWindow): Likewise. + ($Forker): Likewise. + * interp/sys-os.boot (printLine): Remove associated foreign import. + * lib/sockio-c.c (init_purpose_table): Do not export. + (init_socks): Likewise. + (get_socket_type): Simplify. Remove dead code. + (redirect_stdio): Remove. + (flush_stdio): Likewise. + (print_line): Likewise. + +2012-08-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-saturn.boot: Replace TERPRI with finishLine. + * interp/c-util.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/diagnostics.boot: Likewise. + * interp/format.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-error.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-toplev.boot: Likewise. + * interp/postpar.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/topics.boot: Likewise. + * interp/trace.boot: Likewise. + +2012-08-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-util.boot: Lose paramater. Unconditional flush the + output stream. Adjust callers. + +2012-08-24 Alfredo Portes <doyenatccny@gmail.com> + + * interp/setvars.boot ()version): Use *build-version* + instead of *yearweek*. + +2012-08-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot ($ffs): New. + (genImportDeclaration): Update it. + * boot/translator.boot (genModuleFinalization): Tidy. Generate + code to update $dynamicForeignFunctions where necessary. + (atLoadOrExecutionTime): New. + * lisp/core.lisp.in (UNBIND-FOREIGN-FUNCTION-SYMBOLS): New. + (saveCore): Use it. + ($dynamicForeignFunctions): New. Export. + +2012-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-search.boot (getTemporaryDirectory): Search TMPDIR first. + Ensure result has a trailing slash. + +2012-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-util.boot (htPred2English,gn): Tidy. + * interp/br-search.boot (pmPreparse): Do not apply pmPreparse,hn. + Tidy. + (pmPreparse,hn): Remove. + +2012-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad.lisp (SPAD): Remove obfuscated binding of OUT-STREAM. + * interp/spad-parser.boot (paarseEcho): Use $OutputStream in lieu + of OUT-STREAM. + * interp/server.boot (serverReadLine): Do not bind IN-STEEAM and + *EOF*. Tidy. + * interp/lexing.boot (IN-TREAM): Remove definition. + (OUT-STREAM): Likewise. + * interp/int-top.boot (runspad): Do not bind IN-STREAM and *EOF*. + (SpadInterpretStream): Remove $shoeReadLineFunction binding. + * interp/debug.lisp: Replace IN-STREAM with $InputStream and + OUT-STREAM with $OutputStream. + +2012-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.in: Simplify. + +2012-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * input/sint.input.pamphlet: Use /\$SingleInteger, not defunct + And$SingleInteger. + +2012-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-coerfn.boot: Do not import i-coerce. Import i-analy + and i-resolv intead. + ($CoerceTable): Fix embarrassing thinko. + * interp/i-coerce.boot: Import i-coerfn. + (coerceIntTableOrFunction): Tidy. + * boot/utility.boot (objectAssoc): Tidy. + +2012-08-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/util.lisp (BUILD-INTERPSYS): loadDelayedFFI early. + * interp/sys-driver.boot (%sysInit): Do not call + sys-osInitCLispFFI (no longer necessary.) + * boot/translator.boot (genModuleFinalization): Generate forms to + be evaluated at load and execution time, instead of a function call. + * interp/spad.lisp (process): Remove. + +2012-08-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (primitiveLoad): New. Export. + ($delayedFFI): Likewise. + * lisp/Makefile.in (oa_delay_ffi): New. + (edit): Update. + * interp/sys-utility.boot: import sys-constants instead of sys-os. + * interp/sys-driver.boot (%sysInit): Do not loadSystemRuntimeCore. + (loadDelayedFFI): New. + (executeSpadScript): Call it. + (compileSpadLibrary): Likewise. + (buildInitdbHandler): Likewise. + (systemMain): Likewise. + * interp/util.lisp (BUILD-INTERPSYS): Likewise. + * interp/Makefile.in (oa_target_moddir): New. + (OA_FFI_MOD): Likewise. + (OA_FFI_OBJ): Define conditionally. + (OBJS): Use it. + ($(oa_target_delayed)): New rule. + (oa_target_delayed): New. + (oa_target_ffi): Define conditionally. + (${SAVESYS}): Require it. + (${AXIOMSYS}): Likewise. + (sys-utility.$(FASLEXT)): Now require sys-constants.$(FASLEXT). + +2012-08-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (genSBCLnativeTranslation): Do no prepend an + underbar when WIN32 (no longer necessary.) + * include/open-axiom.h (OPENAXIOM_EXPORT): Fix thino. + +2012-08-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/sockio.h (connect_to_local_server): First parameter now + const char*. + * include/pixmap.h (zzopen): Second parameter now const char*. + * lib/pixmap.c: Propagate change. + * lib/sockio-c.c: Likewise. + * hyper/parse-types.c (parse_verbatim): Tidy. + * hyper/spadint.c (print_source_to_string1): Likewise. + * hyper/initx.h (init_top_window): Change parameter type to const + char*. + * hyper/initx.c: Propagate change. + * hyper/titlebar.c: Tidy. + (set_name_and_icon): icon_name is now of type const char*. + (get_border_properties): bwidth is not of type const char*. + (mergeDatabases): classname is now of type const char*. + (is_it_850): probtbl.name is now of type const char*. + +2012-08-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/util.H1 (getmemWithLine): Second argument is now const char*. + (saymemWithLine): First argument is now char*. + * lib/util.c: Propogate change. + * include/XSpadFill.h (SpadFillGC): Change last parameter type to + const char*. + * lib/XSpadFill.c (SpadFillGC): Likewise. + +2012-08-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (shoeOutParse): Fix thinko. + * lib/cfuns-c.c (oa_getcwd): Tidy. + (oa_spawn): Likewise. + * lib/sockio-c.c (send_string_len): Likewise. + * utils/command.cc (option_value): Likewise. + (execute_core): Likewise. + +2012-07-25 Aleksej Saushev <asau@inbox.ru> + + * hyper/htadd.c: Include <string.h> + * hyper/lex.c: Likewise. + +2012-06-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/io.boot (%SourceLine): New. + (%LoadUnit): Likewise. + (readLoadUnitSource): Likewise. + (%Reader): Remove input stream field. Include load unit and next + lines fields. Adjust users. + +2012-06-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/newaux.lisp (MAKEOP): Move to spad-parser.boot. + Remove file. + * interp/Makefile.in: Adjust. + +2012-06-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/newaux.lisp: Move Led property setting to spad-parser.boot. + +2012-06-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/newaux.lisp: Move Nud property setting to spad-parser.boot. + Import sys-utility. + * interp/Makefile.in: Adjust. + +2012-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad-parser.boot: Fix thinkos from previous commit. + +2012-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/preparse.lisp: Remove. + * interp/spad-parser.boot: Do not include. Import lexing instead. + * interp/Makefile.in: Adjust. + +2012-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/io.boot (%Reader): Add idx field. + * interp/preparse.lisp ($INDEX): Remove. Adjust users. + +2012-06-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot: Move %Line to io.boot. + * interp/debug.lisp (SPAD_LONG_ERROR): Take a reader parameter. Tidy. + +2012-06-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/io.boot (readePendingLines): Rename from readerLines. + Adjust callers. + +2012-06-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/io.boot (readerDeferLine): New. + * interp/preparse.lisp (preparse1): Use it. + * interp/spad-parser.boot (preparse): Likewise. + +2012-06-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad-parser.boot (preparse): Tidy. + +2012-06-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad-parser.boot (findCommentBlock): Lose last + parameter. Adjust callers. + +2012-06-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad.lisp (SPAD): Adjust. + * interp/spad-parser.boot: Add a reader parameter to all parsing + functions. Adjust callers. + * interp/newaux.lisp: Adjust form of specialized parsers. + * interp/lexing.boot: Add a reader parameter to all lexing + functions. Adjust Callers. + * interp/io.boot (%Reader): Add source line field. + * interp/debug.lisp: Adjust IO and lexer calls. + * interp/util.lisp (string2SpadTree): Remove as unused. + +2012-06-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/preparse.lisp ($LineList): Remove. + (INITIALIZE-PREPARSE): Do not set it. + (preparse1): Do not reference it. Do not test for ioTerminal? and + the input is always a disk file. + * interp/spad-parser.boot (findCommentBlock): Do not reference + $EchoLineStack. + (preparseReadLine1): Do not reference $LineList. + +2012-06-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/io.boot (%Reader): New data structure. + * interp/preparse.lisp (INITIALIZE-PREPARSE): Parameter is now a + reader. + (preparse1): Likewise. Tidy. + * interp/spad-parser.boot (preparseReadLine): Likewise. + (preparseReadLine1): Likewise. + (preparse): Likewise. + (parseSpadFile): Likewise. + * interp/spad.lisp (SPAD): Make it a unary function. Simplify. + (INITIALIZE): Remove. + +2012-06-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot (%Line): Now a record structure. + * boot/parser.boot (bpTypeName): Split out of bpTypeAliasDefinition. + (bpStruct): Use it. Support parameterized structures. + * boot/ast.boot (ctorName): New. + (bfEnum): Use it for parameterized enums. + (bfRecord): Use it for parameterized records. + +2012-06-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpSignatureTail): Split out of bpSignature. + (bpTyped): Use it. + (bpThrow): Lilkewise. + (bpRegularBVItemTail): Likewise. + (bpAssignLHS): Likewise. + (bpStoreName): Do not reference $typings. + * boot/ast.boot (%Ast): Remove %Pretend variant. + (bfSignature): Rename from bfLocal. Build %Signature variant. + (bfLET1): Handle assignment to typed variable. + (shoeCompTran): Do not reference $typings. + (shoeCompTran1): Do not translate assignment to typed variables. + (bindFluidVars): Handle them here. + (bfTagged): Remove. + (bfTry): Tidy. + * boot/translator.boot (shoeOutParse): Do not reference $typings + and $returns. + * interp/c-util.boot (isAlmostSimple): Initialize $assignmentList. + +2012-06-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot: Remove DEFUSE, $booDefined, + $bootDefinedTwice, $bootUsed, $lispWordTable, shoeDfu, shoeReport, + shoeDefUse, defuse, defuse1, defSeparate, unfluidlist, + defusebuiltin, bootOut, CLESSP, SSORT, bootOutLines, XREF, + shoeXref, shoeXreport. + +2012-06-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (%LoadUnit): Add field for enclosing function. + Remove references to $op. + +2012-06-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (%LoadUnit): Add fields for side conditions. + * boot/parser.boot: Adjust. + +2012-05-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (%LoadUnit): Add fields for let var and is var + sequence numbers. + Eliminate $letGenVarCounter and $isGenVarCounter. + +2012-05-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Add a %LoadUnit parameter to most functions. + Adjust callers. + * boot/translator.boot: Tidy. + +2012-05-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot: Replace references to $ttok. + +2012-05-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (%ParserState): Add field for current token. + Replace references to $stok. + +2012-05-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfSpecificErrorHere): New. + (bfISReverse) Use it. Don't use bpTrap. + (bfIS1): Likewise. + (bfParameterList): Likewise. + (bfHandlers): Likewise. + * boot/parser.boot (bpTrap): Take a parser state argument. + Adjust callers. + +2012-05-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot: Remove references to $bpCount. + * boot/translator.boot (shoeOutParse): Likewise. + +2012-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot: Remove references to $bpParentCount. + * boot/translator.boot (shoeOutParse): Likewise. + +2012-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot: Remove references to $stack. + * boot/translator.boot: Likewise. + +2012-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot: Add parser state argument to more functions. + Remove references to $inputStream. + * boot/translator.boot (shoeOutParse): Remove $inputStream. + +2012-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (%ParserState): New. + (makeParserState): Likewise. + (%Translator): Likewise. + (makeTranslator): Likewise. + Make all parsing functions take a parser state argument. + * boot/translator.boot (shoeOutParse): Adjust. + * interp/spad-parser.boot (stringPrefix?): Remove redudant definition. + +2012-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot: Use makeToken directly. + (tokenInstall): Remove. + (getSpadIntegerToken): Lose parameter. Adjust callers. + (getNumberToken): Likewise. + (getArgumentDesignator): Likewise. + (getToken): Likewise. + (getSpadString): Likewise. + (getSpecial): Likewise. + (getGliph): Likewise. + (getIdentifier): Likewise. + * lisp/core.lisp.in ($stdio): New. + * boot/includer.boot: Use it. + * boot/translator.boot: Likewise. + * boot/utility.boot (stringPrefix?): New. + +2012-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/io.boot (findChar): Do not define here. + * interp/match.boot (charPosition): Likewise. + * boot/utility.boot (charPosition): Now return argument string + length if no match. + (findChar): New. + * boot/scanner.boot (lexerCharPosition): Adjust. + (shoeAccumulateLines): Use findChar. + +2012-05-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfMDef): Simplify. + (backquote): Do not quote integer and string literals. + +2012-05-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: freshLine, functionSymbol?, and symbolGlobal? + are now builin. + * boot/ast.boot: Tidy. + * interp/c-util.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/sys-utility.boot: Likewise. + * interp/sys-driver.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/lisp-backend.boot: Likewise. + +2012-05-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($compCount): Remove. + * interp/spad.lisp (knownEqualPred): Move to buildom.boot + (hashable): Likewise. + Remove junk. + * interp/debug.lisp: Remove junk. + * interp/vmlisp.lisp: Likewise. + +2012-05-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.in (initdb.$(FASLEXT)): Add --syslib to fix thinko. + +2012-05-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/scanner.boot: Eliminate fluid variable $n. + (lexerRefresh?): New. + (lexerSetLine!): Likewise. + (lexerSkipBlank!): Likewise. + (lexerSkipToEnd!): Likewise. + (lexerAdvancePosition!): Likewise. + (lexerCharCountToCompleteTab): Likewise. + (lexerCurrentChar): Likewise. + (lexerCharPosition): Likewise. + (lexerCharacterAt): Likewise. + (lexerEol?): Likewise. + +2012-05-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/scanner.boot (lexerLineLength): New. + (shoeNextLine): Use it in replacement of $sz. + (shoeLineToks): Likewise. + (shoeLispEscape): Likewise. + (shoeEsc): Likewise. + (shoeStartsComment): Likewise. + (shoeStartsNegComment): Likewise. + (shoeNegComment): Likewise. + (shoeComment): Likewise. + (shoePossFloat): Likewise. + (shoeSpace): Likewise. + (shoeS): Likewise. + (shoeW): Likewise. + (shoeInteger1): Likewise. + (shoeNumber): Likewise. + (shoeExponent): Likewise. + +2012-05-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/scanner.boot (%Lexer): New record structure. + Add a lexer parameter to all lexing functions that need one. + Adjust their callers. + +2012-05-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: "@" is now a new keyword. + * boot/ast.boot (bfRestrict): New. + (bpTyped): Rename from bpTagged. Accept type restriction. + * boot/utility.boot (drop): Restrict the result to a %List. + +2012-05-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/database.boot (%Constructor): New. + (makeConstructor): Likewise. + (makeInitialDB): Tidy. + * interp/daase.lisp (makeDB): Take two more parameters. Build a + %Constructor structure object too. + +2012-05-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (initializeDatabases): Load initidb if + specified. + * interp/database.boot (populateDFFromFile): Remove. + (printAllInitdbInfo): Write as as Lisp file. + * algebra/Makefile.in (COMPILE_SPAD): initdb is now a FASL. + (BOOTSTRAP): Likewise. + (strap-2/%.$(FASLEXT)): Likewise. + (initdb.$(FASLEXT)): New. + +2012-05-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (MAKE-CVEC): Remove. + (GETSTR): Likewise. + * interp/sys-macros.lisp (INTERNL): Likewise. + * interp/macros.lisp: Move content to vmlisp.lisp. Remove. + * interp/Makefile.in: Adjust. + * interp/debug.lisp: Now import sys-macros + * interp/fname.lisp: Likewise. + * interp/format.boot: Likewise. + * interp/g-timer.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/htcheck.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/monitor.lisp: Likewise. + * interp/newaux.lisp: Likewise. + * interp/newfort.boot: Likewise. + * interp/nlib.lisp: Likewise. + * interp/postpar.boot: Likewise. + * interp/profile.boot: Likewise. + * interp/server.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/setvart.boot: Likewise. + * interp/sfsfun.boot: Likewise. + * interp/simpbool.boot: Likewise. + * interp/spad.lisp: Likewise. + * interp/termrw.boot: Likewise. + * interp/topics.boot: Likewise. + +2012-05-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/includer.boot (%SourceLine): New datatype. + (makeSourceLine): New. + Use source line macro accessors. + * boot/pile.boot: Likewise. + * boot/scanner.boot: Likewise. + +2012-05-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-search.boot: Use findChar and findString in lieu of STRPOS. + * interp/database.boot: Likewise. + * interp/format.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/match.boot: Likewise. + * interp/scan.boot: Likewise. + * interp/trace.boot: Likewise. + +2012-05-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot (%Token): New datatype. + (makeToken): New. + * boot/includer.boot: Use %token accessors. + * boot/parser.boot: Likewise. + * boot/pile.boot: Likewise. + * boot/scanner.boot: Likewise. + * boot/utility.boot: Export subString. + +2012-05-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot (%Token): Now an actual type defined as a + record structure. + (copyToken): Adjust. + (tokenSymbol): Remove as now automatically generated. + (tokenType): Likewise. + (tokenNonblank?): Likewise. + * boot/ast.boot (bfRecordDef): Specify a name for a copier function. + +2012-05-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (translateToplevel): Handle record structures. + * boot/tokens.boot: "with" is now a keyword in Boot. + * boot/parser.boot (bpSignature): The typing is required afte the + colong. + (bpFieldList): New. + (bpGlobalAccessors): Likewise. + (bpAccessorDefinitionList): Likewise. + (bpAccessorDefinition): Likewise. + (bpFieldSection): Likewise. + (bpSelectField): Likewise. + (bpRecord): Likewise. + (bpStruct): Use it to implement record structures. + * boot/ast.boot (%Ast): Add %Record and %AccessorDef. + (bfRecordDef): New. + +2012-05-21 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * boot/ast.boot (needsPROG): Remove. + (shoePROG): Likewise. + (declareLocalVars): New. + (maybeAddBlock): Likewise. + (hasReturn?): Likewise. + (shoeCompTran): Tidy. + +2012-05-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parsing.lisp: Remove. + * interp/spad-parser.boot (floatExponent): New. + (parseFloatExponent): Use it instead of FLOATEXPID. + * interp/lexing.boot (nextLinesClear!): New. + (ioClear!): Likewise. + (OUT-STREAM): Define here. + * interp/debug.lisp: Import lexing instead of parsing. Tidy. + * interp/preparse.lisp: Likewise. + * interp/spad.lisp: Likewise. + * interp/util.lisp: Likewise. + * interp/Makefile.in (OBJS): Do not include parsing.$(FASLEXT). + (parsing.$(FASLEXT)): Remove. Adjust dependents. + +2012-05-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad-parser.boot (addParensAndSemisToLine): Drop 'drop', + avoiding awakening GCL bug and quadratic traversal of lines. + (parsePiles): Simplify. + +2012-05-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad.lisp (S-PROCESS): Rename to translateSpad and move + to spad-parser.boot. + * interp/parsing.lisp (MATCH-ADVANCE-SPECIAL): Remove. + (MATCH-SPECIAL): Likewise. + (MATCH-KEYWORD-NEXT): Likewise. + (INITIAL-SUBSTRING-P): Likewise. + (TERMCHR): Likewise. + (dollarTran): Simplify and move to spad-parser.boot. + +2012-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot (getDecimalNumberToken): New. + (getIntegerInRadix): Likewise. + (getSpadIntegerToken): Likewise. + (getToken): Use it. + * interp/Makefile.in (bootlex.$(FASLEXT)): Remove rule. + (OBJS): Do not include it. + * interp/bootlex.lisp: Remove. + +2012-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad-parser.boot (parseSexpr1): Simplify. + (parseDara): Likewise. Do not set LABLASOC. + * interp/bootlex.lisp (PRINT-DEFUN): Remove. + (TRANSLABEL): Likewise. + (TRANSLABEL1): Likewise. + * interp/preparse.lisp (LABLASOC): Likewise. + +2012-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (SETANDFILE): Remove. + (LAM,EVALANDFILEACTQ): Likewise. + * interp/sys-utility.boot (PRINT-AND-EVAL-DEFUN): Likewise. + * interp/slam.boot (reportFunctionCompilation): Tidy. + * interp/lisp-backend.boot (evalAndPrintBackendDecl): New. + * interp/c-util.boot (backendCompileSPADSLAM): Use it in lieu of + SETANDFILE. + (compAndDefine): Use evalAndPrintBackendDecl in lieu of + PRINT-AND-EVAL-DEFUN. + * interp/hypertex.boot: Clean up. + * interp/nhyper.boot: Likewise. + * interp/word.boot: Likewise. + +2012-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (EVALANDFILEACTQ): Second argument is no + longer optional. Adjust callers. + (LAM\,EVALANDFILEACTQ): Likewise. + * interp/slam.boot (compQuietly): Use printBackendDecl. + * interp/spad.lisp (SPAD): Likewise. + * interp/sys-utility.boot (PRINT-AND-EVAL-DEFUN): Likewise. + * interp/macros.lisp (SETANDFILE): Move to vmlisp.lisp. + * interp/lisp-backend.boot (printBackendStmt): New. + (evalAndPrintBackendStmt): Likewise. + (printBackendDecl): Likewise. + * interp/c-util.boot (registerFunctionReplacement): Use + evalAndPrintBackendStmt. + (registerRedexForm): Likewise. + (proclaimCapsuleFunction): Use printBackendStmt. + * interp/Makefile.in (lisp-backend.$(FASLEXT)): Require nlib.$(FASLEXT) + +2012-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parsing.lisp (CONVERSATION): Remove. + (CONVERSATION1): Likewise. + (MAKE-PARSE-FUNCTION): Likewise. + (MAKE-PARSE-FUNCTION1): Likewise. + (MAKE-PARSE-FUNC-FLATTEN): Likewise. + (MAKE-PARSE-FUNC-FLATTEN-1): Likewise. + (TRANSPGVAR): Likewise. + (GETRULEFUNLISTS): Likewise. + (REDUCTION-PRINT): Likewise. + (TRACEMETA): Likewise. + (TRMETA): Likewise. + (TRMETA1): Likewise. + (/MDEF): Likewise. + * interp/macros.lisp (EXPAND-TABS): Likewise. + * interp/spad.lisp (READ-SPAD): Likewise. + (READ-INPUT): Likewise. + (READ-SPAD0): Likewise. + (READ-SPAD1): Likewise. + (READ-SPAD-1): Likewise. + (New,ENTRY,1): Likewise. + (New,ENTRY,2): Likewise. + * interp/bootlex.lisp (SPAD_SYNTAX_ERROR): Move to debug.lisp. + (SPAD_LONG_ERROR): Likewise. + (SPAD_SHORT_ERROR): Likewise. + (SPAD_ERROR_LOC): Likewise. + * interp/c-util.boot (COMP370): Move to lisp-backend.boot. + (compQuietly): Move to slam.boot. + +2012-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/utility.boot (strinSuffix?): New. + * boot/translator.boot (shoeRemovebootIfNec): Use it. + +2012-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix build breakage with CLozure CL. + * lisp/core.lisp.in ($stdin): Demote to DEFPARAMETER. + ($stdout): Likewise. + +2012-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (shoeCompTran): Simplify. + (shoeCompTran1): Partially defer translation of fluid variable + definition. + (bindFluidVars!): New. Complete translation. + (groupFluidVars): New. + * interp/newfort.boot (fortFormatIntrinsics): Remove redundant return. + +2012-05-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (shoeCompTran1): Take variable sets by reference. + Remove globals. Adjust caller. + (shoeCompTran): Replace fluid variables by references. + +2012-05-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: symbolBinding is now builtin. + * boot/ast.boot (%Ast): Add %Dynamic variant. + (bfColonColon): Use symbolBinding instead of FIND-SYMBOLS. + (compFluid): Return a %Dynamic form. Adjust callers. + (shoeCompTran): Tidy. + * boot/translator.boot (BOOTLOOP): Tidy. + (BOOTPO): Likewise. + +2012-05-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Miscellaneous cleanup. + * interp/compiler.boot: Likewise. + * interp/database.boot: Likewise. + * interp/debug.lisp: Likewise. + * interp/format.boot: Likewise. + * interp/g-timer.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/macros.lisp: Likewise. + * interp/monitor.lisp: Likewise. + * interp/msgdb.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/nlib.lisp: Likewise. + * interp/parsing.lisp: Likewise. + * interp/pf2atree.boot: Likewise. + * interp/pf2sex.boot: Likewise. + * interp/posit.boot: Likewise. + * interp/sfsfun.boot: Likewise. + * interp/util.lisp: Likewise. + +2012-05-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/io.boot (findString): New. + * interp/preparse.lisp: Use it instead of SEARCH. + +2012-05-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/io.boot (findChar): New. + * interp/preparse.lisp (preparse1): Use it instead of POSITION. + +2012-05-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/preparse.lisp (PARSEPRINT): Move to spad-parser.boot. + Rename as parsePrint. + +2012-05-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/preparse.lisp (ADD-PARENS-AND-SEMIS-TO-LINE): Move to + spad-parser.boot Rename as addParensAndSemisToLine. + (PARSEPILES): Move spad-parser.boot. Rename as parsePiles. + +2012-05-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/preparse.lisp (preparseReadLine1): Move to spad-parser.boot. + +2012-05-10 Igor Pashev <pashev.igor@gmail.com> + + * hyper/initx.c: Fixed spelling errors. + * hyper/macro.c (parse_macro): Likewise. + * sman/sman.c (manage_spad_io): Likewise. + +2012-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/io.boot (carriageRetChar?): New. + (trimCarriageReturn): Likewise. + (expandLeadingTabs): Likewise. + * interp/preparse.lisp: Use it. + * interp/incl.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + +2012-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/preparse.lisp (PREPARSE): Move to spad-parser.boot. + Rename as preparse. + +2012-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/preparse.lisp (FINCOMBLOCK): Move to spad-parser.boot. + Rename as findCommentBlock. + +2012-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/preparse.lisp (PREPARSE-ECHO): Move to spad-parser.boot. + Rename as preparseEcho. + * lisp/core.lisp.in (formatToStream): New. + +2012-05-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Export char. Do not rename maxIndex. + * lisp/core.lisp.in (maxIndex): Define and export. + * interp/bootlex.lisp: Adjust. + * interp/parsing.lisp: Likewise. + * interp/macros.lisp: Likewise. + (DROPTRAILINGBLANKS): Remove. + (BLANKP): Likewise. + (NONBLANKLOC): Likewise. + * interp/io.boot (trimTrailingBlank): New. + (firstNonblankCharPosition): Likewise. + * interp/preparse.lisp: Use them. Adjust. + * interp/sys-macros.lisp (char): Remove. + * interp/vmlisp.lisp (MAXINDEX): Likewise. + * interp/br-search.boot (pmTransFilter): Fix bogus uses of char. + * interp/debug.lisp: Likewise. + * interp/g-util.boot: Likewise. + * interp/ht-root.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + +2012-05-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad.lisp (INIT-BOOT/SPAD-READER): Don't set FILE-CLOSED. + (SPAD): Tidy. + * interp/spad-parser.boot (parseSpadFile): Do not test for *EOF* + or FILE-CLOSED. + * interp/preparse.lisp (INITIALIZED-PREPARSE): Use readLine. + (preparseReadLine1): Likewise. + * interp/parsing.lisp (FILE-CLOSED): Remove. + (GET-A-LINE): Likewise. + (CURRENT-FRAGMENT): Likewise. + (INPUT-CLEAR): Likewise. + (READ-A-LINE): Likewise. + (IOSTREAMS-CLEAR): Don't set FILE-CLOSED. + (IOCLEAR): Don't call INPUT-CLEAR. + +2012-05-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (ioTerminal?): Rename form IS-CONSOLE. + * interp/bootlex.lisp: Adjust. + * interp/diagnostics.boot: Likewise. + * interp/macros.lisp: Likewise. + * interp/msgdb.boot: Likewise. + * interp/parsing.lisp: Likewise. + * interp/preparse.lisp: Likewise. + * interp/server.boot: Likewise. + +2012-05-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/preparse.lisp (SKIP-IFBLOCK): Move to spad-parser.boot. + Renamed skipIfBlock. + (SKIP-IF-BLOCK): Move to spad-parser.boot. Renamed skipToEndif. + (PREPARSEREADLINE): Move to spad-parser.boot. Renamed + preparseReadLine. + +2012-05-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($insideCompTypeOf): Remove. + * interp/preparse.lisp (INITIAL-SUBSTRING): Remove. + * interp/g-util.boot (stringPrefix?): Remove. + * interp/compiler.boot (compTypeOf): Remove. + (comp3): Don't call it. + +2012-05-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot (indentationLocation): New. + * interp/macros.lisp (expand-tabs): Use it in lieu of NDENT-POS. + * interp/preparse.lisp (PREPARSE1): Likewise. + +2012-05-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.in (OBJS): Include io.$(FASLEXT). + (io.$(FASLEXT)): New rule. + * interp/io.boot: New. + * interp/preparse.lisp: Use storeBlanks!. + (STOREBLANKS): Remove. + +2012-05-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/preparse.lisp (ADDCLOSE): Move to spad-parser.boot. + Renamed addClose. + (ESCAPED): Move to spad-parser.boot. Renamed escaped?. + (INFIXTOK): Move spad-parser.boot. Renamed infixToken?. + +2012-05-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/clam.boot (HGETandCount): Remove as unused. + (clearHashReferenceCounts): Likewise. + (remHashEntriesWithCount): Likewise. + (initCache): Likewise. + (assocCache): Likewise. + (assocCacheShift): Likewise. + (assocCacheShiftCount): Likewise. + (hputNewProp): Likewise. + (lassocShift): Likewise. + (lassocShiftQ): Likewise. + (globalHashtableStats): Likewise. + (constructor2ConstructorForm): Likewise. + +2012-05-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/clam.boot (compHash): Rework. + * interp/spad.lisp ($reportCounts): Remove. + +2012-05-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/clam.boot (compClam): Remove. + (compHash): Simplify. Now take only 3 parameters. + * interp/c-util.boot (compileQuietly): Remove as unused. + * interp/sys-globals.boot ($clamList): Move to clam.boot. + * interp/define.boot (compileConstructor1): Call compHash in lieu + of compClam. + * share/doc/msgs/s2-us.msgs: Remove unused diagnostics, due to + compClam removal and compHash simplification. + +2012-05-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compileConstructor1): Don't call + clearConstructorCache here. Simplify. + (compileConstructor): Call clearConstructorCache here. + * interp/c-util.boot (backendCompile2): Do not test for membership + of $clamList. + * interp/clam.boot (compHash): Use compQuietly instead of + compileQuietly. + +2012-05-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/clam.boot (compHash): Use compQuietly in lieu of + compileInteractive. + +2012-05-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisp-backend.boot (assembleCode): New. + * interp/c-util.boot (backendCompileSPADSLAM): Use it. + (backendCompile2): Likewise. + +2012-05-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/clam.boot ($hashNode): Remove. + (compHashGlobal): Likewise. + +2012-05-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/clam.boot (compHash): Avoid unnecessary gensyms. + +2012-05-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (lookupDisplay): Tidy. + * interp/clam.boot (compHash): Likewise. + +2012-05-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (THROW-PROTECT): Remove. + (MDEF): Likewise. + (NUM2CHAR): Likewise. + (CHAR2NUM): Likewise. + +2012-05-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp ($lamName): Remove. + (LAM): Likewise. + (*LAM): Likewise. + (ISQUOTEDP): Likewise. + (QUOTESOF): Likewise. + (DDQUOTE): Likewise. + * interp/lisp-backend.boot (COMPILE1): Simplify. + +2012-05-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Use LAMBDA type in lieu of LAM. + * interp/clam.boot: Likewise. + * interp/define.boot: Likewise. + * interp/lisp-backend.boot (COMPILE1): Tidy. + * interp/slam.boot: Likewise. + +2012-05-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($AbstractionOperator): Remove SLAM. + * interp/c-util.boot (backendCompileSLAM): Remove. + (backendCompileSPADSLAM): Tidy. + (backendCompile2): Adjust. + +2012-05-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineFunctor1): Use LAMBDA for the + resulting functor if not cachable. + * interp/clam.boot (compClam): Tidy. + (compHash): Likewise. + (compHashGlobal): Likewise. + * interp/i-eval.boot (evalForm): Use LAMBDA, not LAM. + * interp/i-coerce.boot (getSubDomainPredicate): Use %lambda not LAM. + +2012-05-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (makeWorkerName): New. + (backendCompileSLAM): Use it. + (backendCompileSPADSLAM): Likewise. + * interp/clam.boot (compHash): Likewise. + Do not synthetize new parameter for unary constructors. + +2012-05-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Use APPLY, not APPLX. + * interp/clam.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/vmlisp.lisp (APPLX): Remove. + +2012-05-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (backendCompileSPADSLAM): Do not devaluate + argument list. Tidy. + +2012-05-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (backendCompileSPADSLAM): Tidy. Do not + devaluate argument of unary constructors. + +2012-05-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (COMPILE1): Move to lisp-backend.boot. + ($lamName): Rename from *LAM-NAME*. + +2012-05-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (REMOVE-FLUIDS): Move to lisp-backend.boot. + Rename to removeFluids. + (SIMPLE-ARGLIST): Move to lisp-backend.boot. Rename to + simpleParameterList?. + +2012-05-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (COMP370): Move to c-util.boot + (compileLispDefinition): Move to lisp-backend.boot. + +2012-05-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-special.boot (interpREPEAT): Use CATCH directly. + * interp/int-top.boot (intloopSpadProcess): Likewise. + * interp/sys-macros.lisp (funcall): Remove. + (Catch): Likewise. + (Throw): Likewise. + (UnwindProtect): Likewise. + (SPADCATCH): Likewise. + (SPADTHROW): Likewise. + (YIELD): Likewise. + +2012-04-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/integer.spad.pamphlet (Integer): Use %iaddmod, %isubmod, + %imulmod. + * algebra/si.spad.pamphlet (SingleInteger): Likewise. + * interp/c-util.boot (devaluate): Use # in lieu of QVSIZE. + * interp/g-opt.boot: %ilfshift and %irshift are now builtin + side-effect free operations. + * interp/lisp-backend.boot: Translate them. + * interp/g-util.boot (mergeSort): Avoid QSDIFFERENCE. + * interp/slam.boot: Likewise. + * interp/sys-macros.lisp: Likewise. + * interp/macros.lisp: Avoid QVMAXINDEX. + * interp/vmlisp.lisp (QSDIFFERENCE): Remove. + (QSGREATERP): Likewise. + (QSLEFTSHIFT): Likewise. + (QSLESSP): Likewise. + (QSMAX): Likewise. + (QSMIN): Likewise. + (QSMINUS): Likewise. + (QSMINUSP): Likewise. + (QSODDP): Likewise. + (QSABSVAL): Likewise. + (QSPLUS): Likewise. + (QSZEROP): Likewise. + (QVMAXINDEX): Likewise. + (QVSIZE): Likewise. + (ZERO?): Likewise. + +2012-04-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/si.spad.pamphlet (SingleInteger): Use %iaddmod, + %isubmod, and %imulmod. + * interp/g-opt.boot: These are now builtin side-effect free operators. + (optIaddmod): New optimizer. Register. + (optIsubmod): Likewise. + (optImulmod): Likewise. + * interp/sys-macros.lisp (QSADDMOD): Remove. + (QSDIFMOD): Likewise. + (QSMULMOD): Likewise. + +2012-04-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot: Use float? in lieu of FLOATP. + * interp/fortcall.boot: Likewise. + * interp/i-object.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/i-analy.boot: Compare to 0 in lieu of ZEROP. + * interp/i-special.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/sfsfun.boot: Likewise. + * interp/sys-driver.boot: Likewise. + * interp/macros.lisp: Directly use 1+ instead of QADD1. + * interp/preparse.lisp: Likewise. + * interp/slam.boot: Likewise. + * interp/sys-macros.lisp: Likewise. + * interp/sys-constants.boot ($BasicPredicates): Remove as unused. + * interp/vmlisp.lisp (ADD1): Remove. + (QSADD1): Likewise. + (QSSUB1): Likewise. + (QSTIMES): Likewise. + +2012-04-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/fortcall.boot: Use copyTree, not COPY-TREE. + * interp/i-intern.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/i-output.boot: Use abstractChar, not EBCDIC. + * interp/i-util.boot: Likewise. + * interp/vmlisp.lisp (EBCDIC): Remove. + (CALLBELOW): Likewise. + (RE-ENABLE-INT): Likewise. + (QUOREM): Likewise. + +2012-04-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (fixnum?): New. + * algebra/sex.spad.pamphlet: Use %float? instead of RNUM. + Use %integer? instead of INTP. + * interp/g-timer.boot: Use float? instead of RNUMP. + * interp/i-coerce.boot: Use fixnum? instead of SINTP or SMINTP. + * interp/i-intern.boot: Likewise. + * interp/lisp-backend.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/vmlisp.lisp: Likewise. + (INTP): Remove. + (BINTP): Likewise. + (LESSP): Likewise. + (LINTP): Likewise. + (MAKESTRING): Likewise. + (MAPELT): Likewise. + (NUMP): Likewise. + (RNUMP): Likewise. + (SINTP): Likewise. + (SMINTP): Likewise. + +2012-04-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/debug.lisp: ident? in lieu of IDENTP. + * interp/macros.lisp: Likewise. + * interp/parsing.lisp: Likewise. + * interp/sys-macros.lisp: Likewise. + * interp/vmlisp.lisp: Likewise. + (IDENTP): Remove. + +2012-04-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfNumber?): Rename from bfSmintable. Check for + floating point literals too. Adjust callers. + (bfLessp): Check for integer or floating pointer numbers. + * interp/vmlisp.lisp (complex?): New. + (complex): Likewise. + (realPart): Likewise. + (imagPart): Likewise. + (conjugate): Likewise. + (sqrt): Likewise. + +2012-04-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (finishLambdaExpression): Tidy. + (compWithMappingMode): Use %lambda not LAMBDA. + * interp/g-opt.boot (changeVariableDefinitionToStore): Handle %closure. + +2012-04-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/boot-pkg.lisp (gensym?): Check for non-null object. + * interp/clammed.boot: Use it in lieu of GENSYMP. + * interp/debug.lisp: Likewise. + * interp/g-opt.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/vmlisp.lisp (GENSYMP): Remove. + +2012-03-02 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * algebra/catdef.spad.pamphlet (MonoidOperation): Noew CoercibleTo + SemiGroupOperation T. + +2012-02-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (markOperation): New. + (optDeltaEntry): Implement better patch for last change. + * interp/compiler.boot (compFormWithModemap): Undo last change. + +2012-02-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compFormWithModemap): Mark implementation + resolution as appropriate. + +2012-02-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (emitLocalCallInsn): Mark external + operators as such, and local functions as such. + (freeVarUsage): Do not count external and local functions. + (extractCode): Tidy. Handle closure literals. + * interp/g-opt.boot (optCall): Optimize external calls where + possible. + %external is a side-effect free operator. + +2012-02-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (usedSymbol?): Remove. + (bindingForm?): New. + (usesVariable?): Likewise. + * interp/compiler.boot (declareUnusedParameters): Use it. + * interp/g-opt.boot (inlineLocals): Likewise. + (optClosure): Likewise. + (optBind): Likewise. + * interp/define.boot (compContained): Remove. + +2012-02-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (numOfOccurencesOf): Tidy. + * interp/compiler.boot (compUnnamedMapping): Fix thinko. + * interp/g-opt.boot (semiSimpleRelativeTo?): Likewise. + +2012-02-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compTopLevel): Do not bind $killOptimizeIfTrue. + (compWithMappingMode): Likewise. + (compUnnamedMapping): Likewise. + (extractCode): Simplify. + * interp/g-opt.boot (optClosure): New. Register. + (semiSimpleRelativeTo?): An abstraction is always semisimple. + * interp/nruncomp.boot ($killOptimizeIfTrue): Remove. + (optDeltaEntry): Don't test for it. + +2012-02-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (extractCode): Rename from + extractCodeAndConstructTriple. Change Arity. Tidy. Adjust callers. + +2012-02-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (finishLambdaExpression): Use %closure. + (extractCodeAndConstructTriple): Likewise. + * interp/g-opt.boot (optCall): Adjust. + +2012-02-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (genDeltaEntry): Fix thinko. + +2012-02-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (BinaryOperatorCategory): New. + (BinaryOperation): Likewise. + (IdempotentOperatorCategory): Likewise. + (SemiGroupOperatorCategory): Likewise. + (SemiGroupOperation): Likewise. + (MonoidOperatorCategory): Likewise. + (MonoidOperation): Likewise. + * algebra/exposed.lsp.pamphlet: Expose them. + * algebra/Makefile.in (oa_algebra_layer_0): Include IDEMOPC, + SGPOPC, SPGOP, MONOPC, BINOPC. + (axiom_algebra_layer_1): Include MONOP. + +2012-02-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot: "assume" is now also a keyword for the compiler. + * interp/spad-parser.boot (parseCategory): Accept exported properties. + (parseFormula): New. + +2012-02-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (genDeltaEntry): Replace applyFun with %apply. + * interp/lisp-backend.boot (expandApply): Remove. + Unregister expander. + * interp/g-opt.boot (optCall): applyFun is not longer an opcode. + Look for %apply. + * interp/compiler.boot (applyMapping): Generate ['%call,['%apply,.]] + form, not ['%apply,..] form. + (extractCodeAndConstructTriple): Tidy. + (compApplication): Likewise. + +2012-02-19 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * interp/lexing.boot (getNumberToken): New. + (getArgumentDesignator): Likewise. + (getToken): Use it. + * interp/parsing.lisp (GET-NUMBER-TOKEN): Remove. + * interp/bootlex.lisp (INIT-BOOT/SPAD-READER): Move to spad.lisp. + (SPAD): Likewise. + (READ-SPAD1): Likewise. + (TEST): Remove. + (GET-ARGUMENT-DESIGNATOR-TOKEN): Likewise. + +2012-02-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compBuiltinDomain): Compute the exports + from parentsOfBuiltinInstance. + * interp/buildom.boot (parentsOfBuiltinInstance): Tidy. + +2012-02-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compBuiltinDomain): Rename from compCat. + +2012-02-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-data.boot (libConstructorSig): Rename T$ to T for + external name printing. Do not call ncParseFromString. + +2012-02-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (Ring): Extends SemiRing. + (Dioid): New. Extend OrderedAbelianMonoid and SemiRing. + * algebra/exposed.lsp.pamphlet: Expose Dioid. + +2012-02-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (stripTags): Rename from stripUnionTags. + Adjust callers. + * interp/database.boot (genericInstanceForm): New. + * interp/buildom.boot (parentsOfBuiltinInstance): New. + (builtinInstanceForm): Likewise. + * interp/br-data.boot (genericParentsOf): New. + (parentsOfForm): Use it, + (ancestorsRecur): Likewise. + * interp/br-con.boot (originInOrder): Use parentsOfForm. + +2012-02-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (getCatAncestors): Remove. Adjust caller. + (depthAssoc): Tidy. + (NRTmakeCategoryAlist): Tidy. + +2012-02-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (NRTcatCompare): Remove. + (NRTmakeCategoryAlist): Don't call NRTcatCompare. Tidy. + +2012-02-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (depthAssocList): Take the cache as second + argument. Avoid globals. Adjust Callers. + (depthAssoc): Likewise. Adjust Caller. + (NRTmakeCategoryAlist): Remove uses of $depthAssocCache. + +2012-02-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/coerce.spad.pamphlet (Type): Redefine as empty Join. + * interp/category.boot (Join): Handle empty argument list. + +2012-02-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (getParentsFor): Lose second parameter. Tidy. + Adjust callers. + * interp/br-data.boot (getParentsForDomain): Remove. + (parentsOf): Call getParentsFor in lieu of getParentsForDomain. + (folks): Move to define.boot. + +2012-02-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-data.boot (ancestorsRecur): Tidy. + * interp/define.boot (compDefineCategory2): Likewise. + +2012-02-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-data.boot (getParentsFor): Move to define.boot. + (explodeIfs): Likewise. + (getParentsForDomain): Tidy. + (ancestorsRecur): Likewise. + +2012-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (mkEvalableCategoryForm): Compile only + CATEGORY and SubsetCategory forms. + +2012-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/database.boot (categoryConstructor?): New. + * interp/define.boot (mkEvalableCategoryForm): Use it. Tidy. + +2012-02-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCall): Simplify SPADCALL of atomic + function expressions. + ($VMsideEffectFreeOperators): Don't include %funcall. + ($simpleVMoperators): Include it. + +2012-02-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.in (oa_algebra_layer_0): Include FINITE-. + +2012-02-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (dbLocateModule): New. + (findModule): Use it. Simplify. + (loadLib): Tidy. + (genericLoadDB): New. + (loadDB): Use it. + (loadDBIfCan): New. + * interp/c-util.boot (lookupDefiningFunction): Give up gracefully + if the domain of computation is not compiled yet. + * algebra/Makefile.in ($(OUT)/SPADAST.$(FASLEXT)): Require + $(OUT)/SUCHTAST.$(FASLEXT). + +2012-02-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (getLocalIndex): Fast track niladic + constructors. + * algebra/syntax.spad.pamphlet: Miscellaneous cleanup. + +2012-02-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/vm.H: Add more VM data structures. + * utils/vm.cc (BasicContext::make_operator): Define. + * algebra/Makefile.in (SPADFILES): Include syntax.spad and + spad-parser.spad. + +2012-01-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (Finite) [random]: Provide default + implementation. + * algebra/boolean.spad.pamphlet (KleeneTrivalentLogic): Now + satisfy Finite. Use Maybe Boolean as representation. + +2012-01-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-util.boot ($intTopLevel): Move to sys-constants.boot. + * interp/g-error.boot (returnToTopLevel): Tidy. + * interp/macros.lisp (applyWithOutputToString): Likewise. + +2012-01-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spaderror.lisp: Move convent to spad.lisp. Remove. + +2012-01-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/patches.lisp: Move content to msgdb.boot. Remove. + +2012-01-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/word.boot: Add import and scope statements. Include in + final executables. + (infix?): Remove as duplicate in match.boot. + (prefix?): Likewise. + (suffix?): Likewise. + * interp/g-error.boot (returnToTopLevel): Tidy. + * interp/debug.lisp (/D-2): Use spadThrow in lieu of UNWIND. + * interp/patches.lisp (CATCHALL): Remove. + (DBRINIT): Likewise. + (TOPLEVEL): Likewise. + (TOP-LEVEL): Likewise. + (UNWIND): Likewise. + (RESUME): Likewise. + (booFind): Likewise. + +2012-01-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (mkIntArray): New. Export. + * interp/patches.lisp (/RF): Move to cparse.boot. + (/RQ): Likewise. + (/RQ,LIB): Likewise. + (/RF-1): Likewise. + (/EF): Move to spad.lisp. + (construct): Remove. + (READSPADEXPR): Likewise. + (SHAREDITEMS): Likewise. + (installStandardTestPackages): Likewise. + (spadtestValueHook): Likewise. + (testError): Likewise. + ($TestOptions): Likewise. + (rebuild): Likewise. + ($ViewportProcessToWatch): Likewise. + (setViewportProcess): Likewise. + (waitForViewport): Likewise. + * interp/i-analy.boot (pushDownOp?): Use mkIntArray in place of + GETZEROVEC. + * interp/i-funsel.boot (argCouldBelongToSubdomain): Likewise. + * interp/i-intern.boot (flagArguments): Likewise. + +2012-01-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot: Rename AncestorP to ancestor?. + Rename DescendantP to descendant?. + * interp/define.boot: Likewise. + * interp/functor.boot: Likewise. + +2012-01-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpFunction): New. + (bpConstTok): Include it. + * boot/ast.boot (bfFunction): New. + * boot/tokens.boot: `function' is now a keyword. + +2012-01-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot (keywordId): New. + * boot/parser.boot (bpSexpKey): Use it. + * interp/i-map.boot (mapPredTran): Fix thinko. + +2012-01-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpRequire): New. Use it throughout this module. + +2012-01-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfEnum): New. + * boot/translator.boot (translateToplevel): Use it to translate + enumeration definitions. + * interp/types.boot (%ConstructorKind): Use new syntax. + +2012-01-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (evalCategoryForm): New. + (mkCategoryPackage): Use it. + (compMakeCategoryObject): Likewise. + * interp/nruncomp.boot (NRTsetVector4a): Likewise. + +2011-12-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/fraction.spad.pamphlet (Localize): Tidy. + +2011-12-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (SORTBY): Remove. + (QSORT): Likewise. + * interp/c-util.boot (formal?): Rename from isFormal. Avoid POSITION. + * interp/sys-utility.boot (sortBy): New. + * interp/br-op1.boot: Use it. + * interp/clam.boot: Likewise. + * interp/define.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/showimp.boot: Likewise. + * boot/tokens.boot: "<-" is now a token. + * boot/ast.boot (bfKeyArg): New. + (bfExpandKeys): Likewise. + (bfApplication): Use it. + * boot/parser.boot (bpKeyArg): New. + (bpAssign): Use it. Parse named arguments. + +2011-12-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Remove redundant renaming of REM. + loopBody and loopExit are not selectors. + * interp/i-output.boot: Include sys-utility. + * interp/sys-utility.boot (last): New macro. + (loopBody): Likewise. + * interp/vmlisp.lisp (LASTNODE): Remove. + (LASTPAIR): Likewise. + (last): Do not define here. + +2011-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Do not rewrite drop and take. + * boot/utility.boot (drop): Define and export. + (take): Likewise. + * interp/br-con.boot: Use take, not TAKE; use drop, not DROP. + * interp/br-data.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/clammed.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/database.boot: Likewise. + * interp/define.boot: Likewise. + * interp/guess.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/i-eval.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-special.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-toplev.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/parse.boot: Likewise. + * interp/record.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/word.boot: Likewise. + * interp/macros.lisp (DROP): Remove. + (TAKE): Likewise. + +2011-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (coagulateWhenSeries): Simplify. + (packWhen!): Likewise. + (unnestWhen!): Tidy. + (removeScope!): Handle %when forms. + +2011-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (exitScope?): Now return an expression or nil. + (cancelScopeLeave!): Tidy. + +2011-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/prs.spad.pamphlet (PseudoRemainderSequence): Tidy. + +2011-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (changeVariableDefinitionToStore): Tidy. + Remove handling of IF forms as no longer relevant. + * algebra/matfuns.spad.pamphlet + (MatrixLinearAlgebraFunctions) [rank]: Tidy. + +2011-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/matfuns.spad.pamphlet + (InnerMatrixLinearAlgebraFunctions) [rank]: Tidy. + +2011-12-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (unnestWhen!): Recurse into more control + structures. + +2011-12-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/rep2.spad.pamphlet (RepresentationPackage2) + [areEquivalent?]: Tidy. + +2011-12-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (unnestWhen!): New. + (packWhen!): Simplify. + (optimize!): Run before changeVariableDefinitionToStore. + +2011-12-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (removeScope!): New. + (optimize!): Call it. + (optimizeFunctionDef): Simplify. + +2011-12-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compColon): Handle multiple declarations + properly. + +2011-12-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (finishVectorCollect): Rename from + optCollectVector. Move here. + (compRepeatOrCollect): Use it. + +2011-12-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (freeIteratorFirstValues): New. + (cleanLoop!): Use it. + * interp/lisp-backend.boot ($freeVarName): Remove. + (loopVarInit): Do not generate initializer for free iterators. + Adjust callers. + (massageFreeVarInits): Remove. Adjust caller. + +2011-12-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (finishListCollect): New. + (compRepeatOrCollect): Use it. + * interp/g-opt.boot (optCollectVector): Likewise. + * interp/lisp-backend.boot (expandCollect): Likewise. + +2011-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (prefixWalk!): New. + * interp/g-opt.boot (cleanLoop!): Rename from removeLoopExitTag!. + Adjust caller. Rewrite as a prefix walk. + +2011-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (removeLoopExitTag!): New. + (optimize!): Run it first. + * interp/compiler.boot (nullifyTargetingLeaves): Remove. + (massageLoop): Likewise. + (compRepeatOrCollect): Don't call it anymore. + +2011-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot: Rename %loop to %repeat. Propagate. + * interp/g-opt.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-special.boot: Likewise. + * interp/lisp-backend.boot: Likewise. + * interp/slam.boot: Likewise. + +2011-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (modified?): Tidy. + +2011-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in: Do not require SB-SPROF or SB-POSIX on Windows. + +2011-12-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (packWhen!): Tidy. + +2011-12-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (exitScope?): New. + (packWhen!): Use it. + (coagulateWhenSeries): Tidy. + (cancelScopeLeave!): Likewise. + +2011-12-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (removeNeedleesLeave): Remove. + (optScope): Adjust. + (removeLeave!): New. + (optimize!): Run it at the very beginning. + +2011-12-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optSeq): Remove. Adjust callers. + +2011-12-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (replaceableTemporary?): Remove. + (optSeq,getRidOfTemps): Likewise. + (optSeq): Rewrite. + * interp/slam.boot (compileRecurrenceRelation): Tidy. + +2011-12-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (removeJunk!): Rename from removeSeq! + (cancelScopeLeave!): New. + (inlineLocals!): Tidy. + (optimize!): Run cancelScopeLeave! right after removeJunk!. + +2011-12-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot: Rework. Schedule conditional splitting + before changing %LETs to %stores. Run beta reduction and + condtional splitting afterward, one more time. + (optimizeFunctionDef): Simplify. + +2011-12-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (packWhen!): Tidy. + (spliceSeq!): New. + (optimize!): Run splice! packWhen! twice. + +2011-12-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (liftAassignments!): New. + (splitAssignments!): Use it. + * algebra/multpoly.spad.pamphlet (SparseMultivariatePolynomial): + Fix thinko. + +2011-12-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (inlineLocals!): Single-used temporaries should go. + (spliceSeqArgs): Splice sequences drapped in %scope cloths too. + +2011-12-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compColon): Give initial %undefined value + to local variable declarations which are not definitions. + * interp/lisp-backend.boot (expandToVMForm): Translate %undefined. + +2011-12-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optSeq): Remove splicePROGN as redundant. + * interp/functor.boot (optFunctorBody): Generate %seq form, not PROGN. + (DescendCode): Likewise. + * interp/c-util.boot (displayComp): Fix thinko. + +2011-12-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optSeq): Remove seqToCOND as now redundant + with packWhen!. + +2011-12-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpArgtypeList): Accept mapping types. + * boot/ast.boot (bfType): New. + * boot/translator.boot (genDeclaration): Use it. + * boot/utility.boot (every?): New. Export. + (any?): Likewise. + (takeWhile): Lilkewise. + +2011-12-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (mkDefault): New. + (coagulateWhenSeries): Likewise. + (packWhen!): Likewise. Use them. + (optimize!): Call it. Tidy. + +2011-12-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisp-backend.boot (loopVarInit): Generate VM forms, not Lisp. + (expandIN): Likewise. + (expandON): Likewise. + (expandSTEP): Likewise. + (expandUNTIL): Likewise. + (expandWHILE): Likewise. + (expandSUCHTHAT): Likewise. + (expandInit): Likewise. + (expandIterators): Likewise. + (massageFreeVarInits): Likewise. + (expandLoop): optimize! then expand. + +2011-12-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (packWehn!): New. + (optimize!): Use it. + +2011-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (tranformIF!): New. + (optimize!): Likewise. Abstract from optimizeFunctionDef. + (optimize): New. + (optimizeFunctionDef): Use optimize!. + (simplifyVMForm): Do not call optIF2COND. + (optIF2COND): Remove. + * interp/compiler.boot (compHasFormat): Use optimize! in lieu of + simplifyVMForm. + * interp/nruncomp.boot (NRTencode): Use optimize. + (NRTsetVector4a): Likewise. + +2011-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot: %writeString, %writeNewline and %writeLine + are side-effect full. + (removeSeq!): Tidy. Skip side-effectfree statements. + +2011-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (removeSeq!): New. + (inlineLocals!): Likewise. + (optimizeFunctionDef): Use them. + (optSeq): Tidy. + * interp/buildom.boot (seteltRecordFun): Tidy. + * interp/clam.boot (compHash): Likewise. + +2011-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (groupTranscients!): New. + (reduceXLAM!): Likewise. + (optimizeFunctionDef): Call them before simplifyVMForm. + * interp/g-util.boot (mkSeq): New. + (abstraction?): Likewise. + (walkWith!): Likewise. + +2011-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compReduce1): Tidy. + * interp/define.boot (compDefineCategory2): Likewise. + * interp/nruncomp.boot (buildFunctor): Likewise. + * interp/slam.boot (compileRecurrenceRelation): Likewise. + * interp/lisp-backend.boot (expandSeq): Use PROGN in absence of EXIT. + +2011-12-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (setqMultipleExplicit): Introduced + temporary variables are local to the assignment. + +2011-12-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compResolveCall): Update description. + (compRetractGuard): Tidy. + (compRecoverDomain): Likewise. + (compRecoverGuard): Likewise. + (compAlternativeGuard): Likewise. + (compMatchAlternative): Likewise. + (compMatch): Likewise. + +2011-12-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (splitAssignments): Rework. + (spliceSeqArgs): Tidy. + * algebra/gdpoly.spad.pamphlet + (GeneralDistributedMultivariatePolynomial): Fix thinko. + +2011-12-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (changeVariableDefinitionToStore): Separately + handle %bind and LET forms. + * interp/g-util.boot (spliceSeqArgs): Recurse into %seq forms. + +2011-12-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (freeVarUsage): Handle %bind and LET. + +2011-12-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (splitAssignments): New. + (spliceSeqArgs): Use it. + +2011-12-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisp-backend.boot (hasNoExit?): New. + (expandSeq): Likewise. Use it. Expand %seq forms. + +2011-12-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot: Use %seq in lieu of PROGN. + * interp/g-util.boot (spliceSeqArgs): New. + * interp/g-opt.boot (changeVariableDefinitionToStore): Call it + before recursing on %seq forms. + +2011-12-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (setqMultiple): Handle lhs and rhs of type + Cross instance. + * interp/g-util.boot ($DomainNames): Include Cross. + * interp/cattable.boot (genCategoryTable): Do not eval Cross. + It is bogus to prepopulate the table with builtin functors anyway. + * algebra/triset.spad.pamphlet + (PolynomialSetUtilitiesPackage)[removeRedundantFactors]: Do not + define `c' and `d' in conditional. Make the initializer conditional. + +2011-12-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (washFunctorBody) [clean]: Clean %when + forms too. + +2011-12-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot: Replace %labelled with %scope. + * interp/define.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/g-util.boot: Likewise. Rename mkLabelled to mkScope. + +2011-12-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (groupVariableDefinitions): Simplify a bit. + (optimizeFunctionDef): Likewise. Change %LET to %store before + simplification. + (simplifyVMForm): Do not call changeVariableDefinitionToStore. + +2011-12-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (hasNoLeave?): Move from g-opt.boot. + (mkLabelled): New. + (mkBind): Likewise. + * interp/g-opt.boot (groupVariableDefinitions): Use them. + * algebra/aggcat.spad.pamphlet (ListAggregate) [merge!]: Declare + local variables `r' and `s' before assigning to them. + +2011-12-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (iteratorName): New. + (changeLoopVarDefsToStore): Likewise. + (changeVariableDefinitionToStore): Use it. Tidy. + (groupVariableDefinitions): Tidy. + +2011-12-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (seteltRecordFun): Change EXIT to %exit. + * interp/clam.boot (compHash):Likewise. + * interp/g-opt.boot (changeVariableDefinitionToStore): Likewise. + (jumpToToplevel?): Likewise. + (groupVariableDefinitions): Likewise. + (changeLeaveToExit): Likewise. + (optLabelled): Likewise. + (optSeq): Likewise. + * interp/lisp-backend.boot: Translate %exit to EXIT. + +2011-12-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (setelt): Change SEQ to %seq. + * interp/clam.boot (compHash): Likewise. + * interp/compiler.boot (freeVarUsage): Likewise. + (canReturn): Likewise. + * interp/i-special.boot (compileIs): Likewise. + * interp/g-opt.boot (changeVariableDefinitionToStore): Likewise. + (jumpToToplevel?): Likewise. + (groupVariableDefinitions): Likewise. + (changeLeaveToExit): Likewise. + (optLabelled): Likewise. + (optSeq): Rename from optSEQ. Adjust callers. + * interp/lisp-backend.boot: Translate %seq to SEQ. + +2011-12-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/3448433 + * interp/br-util.boot (bcPred): Do not compare pred against a string. + +2011-12-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (modified?): Examine the rhs too. + +2011-12-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (changeVariableDefinitionToStore): Handle SEQ + forms too. + (groupVariableDefinitions): Handle %bind and %loop forms. + * interp/lisp-backend.boot (expandLoop): Special code for case + where there is explicit exit condition, for better pretty-printing. + +2011-12-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (groupVariableDefinitions): Look through + %labelled and %lambda. + (optimizeFunctionDef): Use copyTree, not COPY. Simplify. + (simplifyVMForm): Perform changeVariableDefinitionToStore and + groupVariableDefinitions on abstraction forms. + +2011-12-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineCategory): Lose prefix parameter. + It is always nil. Adjust caller. + (compDefineCategory1): Likewise. + (compDefineCategory2): Likewise. + (compDefineFunctor): Likewise. + (compDefineFunctor1): Likewise. Bind it to nil. + * interp/lisplib.boot (compDefineLisplib): Likewise. + +2011-12-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compSeq1): Generate %labelled forms. + (coerceExit): Likewise. + (compRepeatOrCollect): Likewise. + (replaceExitEtc): Tidy. + (canReturn): Likewise. + (compIterate): Generate %lave form. + (nullifyTargetingLeaves): Move out of massageLoop. + (massageLoop): Adjust. + * interp/define.boot (compDefineCapsuleFunction): Generate + %labelled form for the body. + * interp/g-opt.boot: Now handle %labelled and %leave forms. + (optLabelled): Rename from optCatch. + +2011-12-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (UnionEqual): Use %lambda, not %lam. + (coerceUn2E): Likewise. + * interp/compiler.boot (massageLoop): %leave now takes a label as + first argument. + * interp/lisp-backend.boot (expandLeave): New. Expand accordingly. + +2011-11-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (registerInlinableDomain): Lose last argument. + Recursively nominate constructor argument for inlining. Adjust callers. + * interp/c-util.boot: Tidy. + * algebra/Makefile.in: Tidy. + +2011-11-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (clearReplacement): Clear redex replacement. + (registerRedexForm): New. + (redexForm): Likewise. + (inlineDirectCall): Inline functions with known redex forms. + (foldExportedFunctionReferences): Compute redex forms. + (backendCompileILAM): Remove as unused. + (backendCompile2): Adjust. + (massageBackendCode): Likeiwse. + * interp/define.boot (compDefineCapsuleFunction): Clear + replacement info. + +2011-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot (absKind, absParms, absBody): New selectors. + * interp/compiler.boot (canReturn): Handle %lambda forms. + (compUnnamedMapping): Generate %lambda forms. Don't optimize them + yet. + * interp/g-opt.boot: %lambda forms are side-effect free. + * interp/lisp-backend.boot: Translate them. + +2011-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (isSimpleForm): Remove as unused. + (floatableVMForm?): New. + (modified?): Rename form varIsAssigned. + (canInlineVarDefinition): Tidy. Allow intermediate temporaries + initialized from variables to be inlined if not modified. + (optBind): Tidy. + +2011-11-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (genDeltaEntry): Use $ for the domain of + computation it if is the expanded form of the current domain. + +2011-11-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (inlineDirectCall): Inline a non-side effect + free argument in a unary pure function call if it is used exactly once. + * algebra/integer.spad.pamphlet (Integer) [reducedSystem]: Fix typo. + +2011-11-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (encodeCatform): Handle $ here. + * interp/nruncomp.boot (deltaTran): assocIndex now handles $. + (getLocalIndex): Likewise. + (NRTencode): Handle $ before calling assocIndex. + (assocIndex): Handle $. + +2011-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (genDeltaEntry): Replace Rep with its value + if it is the domain of computation. + +2011-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/database.boot (dbDefaultPackage?): New. + * interp/define.boot (compDefine1): Avoid encodeItem when + symbolName is meant. + (mkRepititionAssoc): Move from functor.boot + (encodeItem): Likewise. + (getCaps): Likewise. Tidy. + (encodeFunctionName): Likewise. + +2011-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (assignCapsuleFunctionSlot): Slot original + signature too. + * interp/nruncomp.boot (genDeltaEntry): Likewise. + (getLocalIndex): Tidy. + (changeDirectoryInSlot1): Tidy. + (vectorLocation): Add a kind of operation as fourth argument. + Adjust caller. Do not reconstruct the signature. + (NRTsubstDelta): Remove as no longer used. + +2011-11-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (assocIndex): Rename from NRTassocIndex. + Adjust callers. + +2011-11-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (assignCapsuleFunctionSlot): Do not call + NRTisExported?. Determine operation kind locally. Do not store + implement slot on the used entity list. + * interp/nruncomp.boot (genDeltaEntry): Likewise. + (deltaTran): Simplify. + (NRTisExported?): Remove. + (vectorLocation): Adjust. + +2011-11-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/indexedp.spad.pamphlet: Avoid direct use or RPLACD. + * algebra/poly.spad.pamphlet: Likewise. + * interp/define.boot (spadCompileOrSetq): Tidy replacement info. + * interp/i-output.boot ($BinaryOperators): New. + (binaryInfix?): Tidy. + +2011-11-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (genDeltaEntry): Split first argument into + separate arguments (operation and modemap). Adjust callers. + +2011-11-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (updateCapsuleDirectory): Simplify. + * interp/define.boot (compDefineCapsuleFunction): Call it from here. + * interp/functor.boot (DescendCode): Not here. + +2011-11-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot ($NRTdeltaList): Remove. + ($NRTdeltaListComp): Likeewise. + (compDefineFunctor1): Do not bind them. + (assignCapsuleFunctionSlot): Use dbUsedEntities. + * interp/nruncomp.boot (NRTaddDeltaCode): Likewise. + (dbEntitySlot): New. + (NRTassocIndex): Use it. + (genDeltaEntry): Use dbUsedEntities. + (getLocalIndex): Likewise. + (vectorLocation): Likewise. + (NRTsubstDelta): Likewise. + +2011-11-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-con.boot (conOpPage1): Fix typo. + * interp/c-util.boot (registerConstructor): New. + (currentConstructor): Likewise. + (makeCompilationData): Initialize dbEntityBuffer. + (dbEntityBuffer): New. + (dbUsedEntities): Likewise. + (dbEntityCount): Likewise. + * interp/compiler.boot: Adjust call to getLocalIndex, NRTassocIndex + * interp/define.boot: Likewise. + ($NRTdeltaLength): Remove. + * interp/nruncomp.boot: Likewise. + +2011-11-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (processDefinitionParameters): New. Abstract + from compDefineCapsuleFunction. + (compDefineCapsuleFunction): Use it. Tidy. + +2011-11-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot: Rearrange order of some definitions. + (getArgumentMode): Tidy. + (hasSigInTargetCategory): Likewise. + (refineDefinitionSignature): New. Abstract from + compDefineCapsuleFunction. + (compDefineCapsuleFunction): Use it. Tidy. + +2011-11-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot ($suffix): Remove toplevel declaration. + (localOperation?): New. + (compDefineCapsuleFunction): Increment $suffix. Check for local + and exported function definition here. + (compile): Move capsule-local function processing out. + +2011-11-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot: Tidy. + * interp/functor.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/topics.boot: Likewise. + * interp/trace.boot: Likewise. + +2011-11-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (changeDirectoryInSlot1,sigloc): Add first + parameter as a DB. Adjust caller. + (NRTsubstDelta): Tidy. + +2011-11-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/functor.boot (findOperatorImplementations): Rename from + LookUpSigSlots. Tidy. Adjust caller. + (makeMissingFunctionEntry): Remove as unused. + +2011-11-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot ($CheckVectorList): Remove. + (compDefineFunctor1): Do not bind it. + (reportOnFunctorCompilation): Do not call displayMissingFunctions. + (displayMissingFunctions): Remove as useless. + * interp/functor.boot (SetFunctionSlots): Do not set slot in the + first vector of $catvecList. + * interp/nruncomp.boot (buildFunctor): Remove makeCatvecCode, + emptyVector, domainShell. Do not call NRTcheckVector. + (NRTcheckVector): Remove as useless. + +2011-11-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (NRTaddDeltaCode): Do not guard the loop by + the values in the first vector in $catvecList. It is pointless. + +2011-11-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/functor.boot (SigSlotsMatch): Remove. Adjust caller. + (LookUpSigSlots): Tidy. + +2011-11-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compile): Take the signature as third argument. + Adjust callers. + (compDefineFunctor1): Do not bind $functionLocations. + (compDefineCapsuleFunction): Do not update. + * interp/lisplib.boot (transformOperationAlist): Do not consult + $functionLocations. + +2011-11-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (assignCapsuleFunctionSlot): Move from + nruncomp.boot. Rename from NRTassignCapsuleFunctionSlot. Take + first parameter as a DB. Adjust callers. + (compDefineCapsuleFunction): Tidy. + +2011-11-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (getLocalIndex): Rename from NRTgetLocalIndex. + Adjust callers. + * interp/compiler.boot: Adjust. + * interp/define.boot: Likewise. + +2011-11-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (FindFundAncs): Tidy. Access input in + accordance with documented abstract structure. + +2011-11-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-eval.boot (evaluateType): Handle % and and signatures. + (evaluateFormAsType): Handle builtin constructor instantiations. + +2011-11-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (mkCategory): Tidy. + (SigListUnion): Likewise. The last argument is not a vector buffer. + (JoinInner): Use a vector buffer for scratch space to compute the + initial principal ancestor. Simplify copy logic. + * interp/g-util.boot (mkBuffer): New. + (bufferData): New. + (buffeLength): Likewise. + (resizeBuffer): Likewise. + (bufferToVector): Likwise. + * lisp/core.lisp.in (mkVector): New. Export. + +2011-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (JoinInner): Remove effective dead code + controlled by originalvector which has non-changing value false. + +2011-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (JoinInner): Use idiomatic Boot for loops. + +2011-11-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot ($NewCatVec): Remove. + (SigListUnion): Take the principal ancestor + as third argument. Use it instead of $NewCatVec. Adjust caller. + (JoinInner): Do not bind $NewCatVec. Introduce local variable + principal. Tidy. + +2011-11-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (filterConditionalCategories): Split out of + JoinInner. + (JoinInner): Call it. + +2011-11-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (SigListMember): Remove as deadcode. + (SigEqual): Remove. + (predicateImplies): Rename from PredImplies. Rework it to match + documentation. Adjust callers. + (CondAncestorP): Adjust arguments in call to predicateImplies. + (JoinInner): Likewise. + +2011-11-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in: Export %sysInit. + * interp/sys-driver.boot (%sysInit): Don't redefine. Reset + function binding. + +2011-11-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (JoinInner): Tidy. + +2011-11-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/3436999 + * utils/storage.H: Revert accidental commit of unfinished changes. + +2011-11-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (initializeDatabases): Honor --initial-db. + (initializeGlobalState): Don't bind $compileDefaultsOnly. + * interp/sys-globals.boot ($compileDefaultsOnly): Remove. + * interp/define.boot (compDefineCategory): Adjust. + (compDefineCategory1): Likewise. + (compDefineFunctor1): Clear dbCapsuleDefinitions. + * interp/lisplib.boot (compDefineLisplib): Tidy. + * interp/daase.lisp (BROWSEOPEN): Use dbSourceFile. + (GETDATABASE): Likewise. + (LOCALNRLIB): Likewise. + (WRITE-BROWSEDB): Likewise. + * algebra/Makefile.in (COMPILE_SPAD): Specifiy initial DB. + (BOOTSTRAP): Likewise. + +2011-11-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-data.boot (buildLibdbConEntry): Exit early if argument + is a builtin constructor. + (mkDependentsHashTable): Filter out builtin constructors. + * interp/cattable.boot (genCategoryTable): Likewise. + * interp/database.boot (getConstructorModemap): Load the + contructor if necessary and try again before failing. + * interp/define.boot (NRTgetLookupFunction): Handle multiple + inheritance of domains. + (getBaseExports): Rename from getExportCategory. Adjust caller. + Handle multiple inheritance of domains. + (extendsCategory): Do not reference $functorForm. Take it from + the DB argument. + (getTargetFromRhs): Do not optimize codegen. + +2011-11-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (getTargetFromRhs): Do not try to record + references to used entities. + +2011-11-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineCapsuleFunction): Take first + argument as a DB for the current constructor. Adjust callers. + (compile): Likewise. + (spadCompileOrSetq): Likewise. + (compileConstructor): Likewise. + (compileConstructor1): Likewise. + +2011-11-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-data.boot: Change NRTEVAL to %eval. + * interp/c-util.boot: Likewise. + * interp/define.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/showimp.boot: Likewise. + +2011-11-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (dbByteList): New accessor macro. + * interp/define.boot ($byteVec): Remove. + (getInfovecCode): Do not bind it. + (makeGoGetSlot): Take DB as first parameter. Adjust caller. + Update dbByteList. + (NRTmakeCategoryAlist): Adjust. + +2011-11-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (applyMapping): Emit special call for + domain producing mapping variables. + (compWithMappingMode): Coerce constructors to function objets. + (compFormWithModemap): Constructor calls are direct calls. + Everything else is ordinary indirect call. + * interp/g-opt.boot (optCall): Handle function objects. + * interp/nruncomp.boot (NRTencode): Encode the elaboration of + atomic forms, not the source level form. + * testsuite/compiler/ctor-mapping.spad: New. + +2011-11-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (IndexedBits) [Not, Or, And]: Remove. + Implement ~. \/, and /\ instead. + * algebra/si.spad.pamphlet (SingleInteger): Likewise. + * algebra/pattern.spad.pamphlet (Pattern): Adjust. + * algebra/string.spad.pamphlet (CharacterClass): Likewise. + +2011-11-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp (dbLookupFunction): New accessor macro. + * interp/c-util.boot (lookupDefiningFunction): Use it. Tidy. + * interp/define.boot ($lookupFunction): Remove. + (getInfovecCode): Use dbLookupFunction. + (compDefineFunctor1): Set it. Do not emit %incomplete anymore. + * interp/lisplib.boot (writeLookupFunction): New. + (finalizeLisplib): Use it. + +2011-11-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineFunctor1): Clear dbTemplate before + compilation starts. + * interp/lisplib.boot (writeLoadInfo): New. + (writeTemplate): Likewise. + (finalizeLisplib): Use it to write template. + +2011-11-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compFunctorBody): First argument is now a DB. + Adjustt caller. + (incompleteFunctorBody): Likewise. + * interp/bc-matrix.boot: Use toString instead of STRINGIMAGE where + appropriate. + * interp/bc-solve.boot: Likewise. + * interp/bc-util.boot: Likewise. + * interp/br-con.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/format.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-timer.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-special.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/msg.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/parse.boot: Likewise. + * interp/pathname.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/showimp.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/trace.boot: Likewise. + +2011-11-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (isDomainForm): Tidy. + +2011-11-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (getConstructorOpsAndAtts): Fold content in + called. Remove. + (getFunctorOpsAndAtts): Simplify. + (getSlotFromFunctor): Rework. + * interp/define.boot (getInfovecCode): Bind $byteVec and + $byteAddress here. + (compDefineFunctor1): Not here. + +2011-11-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot ($compileOnlyCertainItems): Remove. + * interp/define.boot ($NRTslot1Info): Likewise. + (getInfovecCode): Add additional environment argument. Adjust caller. + Call NRTmakeSlot1Info here. + (NRTgetLookupFunction): Lose second and third arguments. They are + derivable from the DB argument. Adjust caller. + (compDefineFunctor1): Do not bind $NRTslot1Info. + (compDefineCapsuleFunction): Adjust. + (compile): Likewise. + * interp/i-syscmd.boot (compilerDoitWithScreenedLisplib): + Remove. Adjust caller. + * interp/nruncomp.boot (NRTmakeSlot1Info): Tak a DB argument. + Adjust caller. + (mkSlot1sublis): Remove. + +2011-11-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/vm.H: Redefine value representation. + +2011-11-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-doc.boot (checkBalance): Fix a latent logic bug. + * algebra/Makefile.in: Tidy. + +2011-11-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.in: Rework bootstrap dependency. + +2011-11-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/functor.boot (compCategories): Take second parameter as + environment. Adjust callers. + (compCategories1): Likewise. + (NewbFVectorCopy): Remove as deadcode. + (worthlessCode): Tidy. + (DescendCode): Take additional environment parameter. Adjust callers. + * interp/define.boot (isMacro): Simplify. + (wrapDomainSub): Remove. Adjust callers. + * algebra/Makefile.in (strap-2/%.$(FASLEXT)): Fix typo. + +2011-11-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (findModule): Tidy. + (loadLib): Exit early on builtin constructors. + (loadDB): Likewise. + +2011-11-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad-parser.boot (parseSpadFile): Use $lineStack not + BOOT-LINE-STACK. Use try/finally to ensure streams are closed. + * interp/spad.lisp (New,ENTRY,2): Use parseNewExpr. + * interp/util.lisp (string2SpadTree): Likewise. + +2011-11-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (dbSubstituteAllQuantified): New. + * interp/define.boot (NRTmakeCategoryAlist): Use it. + (compDefineFunctor1): Likewise. + +2011-11-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add compiler support for implicit parameters. + * interp/compiler.boot (bindPredicateExistentials): Rename from + constructorCondition. Now return a substitution on success, + otherwise failure. + (solveEquation): New. + (solveSubsumption): Likewise. + (deduceImplicitParameters): Likewise. + (evaluateConstructorModemap): Use it. Tidy. + +2011-10-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add interpreter support for implicit parameters. + * interp/i-funsel.boot (evalMmCond0): Tidy. Call evalMmGuard to + validate modemap evaluation. + (evalMmGuard): New. + (evalMmCat): Do not call orderMmCatStack here. The stack is + already ordered by evalMmGuard, sole caller. + (hasCate): Handle domain query variables. + (unifyStruct): Call unifyQueryStruct for query variables. + (unifyQueryStruct): New. + * interp/g-util.boot (postComposeSubst): New. + (queryVar?): Likewise. + +2011-10-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (evaluateConstructorModemap): Rename from + substituteInfoFunctorModemap. + (constructorCondition): New. + * interp/define.boot (compDefineCategory2): Compute dual signature + early on. + (compDefineFunctor1): Likewise. + (typingKind): New. + (deduceImplicitParameters): Use it. + * interp/database.boot (modemapsFromCategory): Take a first + argument as a DB. Tidy. Adjust caller. Add constructor condition. + (modemapsFromFunctor): Likewise. Lose last argument. + (mkDatabasePred): Remove. + (formal2Pattern): Likewise. + +2011-10-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-macros.lisp (MKPF1): Tidy. + * interp/sys-constants.boot ($QueryVariables): New. + * interp/define.boot ($whreDecls): Remove. + (checkRepresentation): Take a DB as first parameter. Adjust Callers. + (buildConstructorCondition): New + (deduceImplicitParameters): Likewise + (compDefineCategory2): Use it. + (compDefineFunctor1): Likewise. + (typeDependencyPath): Remove. + (inferConstructorImplicitParameters): Likewise. + * interp/compiler.boot (compTopLevel): Do not bind $whereDecls. + (recordDeclarationInSideCondition): Take additional reference + parameter to the list of processed decls. Adjust callers. + (compWhere): Record any side decls in compilation environment. + * interp/c-util.boot (makeCompilationData): Initialize implicit data. + (dbParameters): New. + (dbImplicitData): New accessor macro. + (dbImplicitParameters): New. + (dbImplicitConstraints): Likewise. + (dbSubstituteFormals): Likewise. + (dbSubstituteQueries): Likewise. + * interp/database.boot (fixUpPredicate): Tidy. + * boot/utility.boot (applySubst): Early exit on identity substitution. + (applySubst!): Likewise. + (applySubstNQ): Likewise. + * boot/ast.boot (bfIS1): Accept pattern matching against Boolean + constant true. + +2011-10-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp (dbCompilerData): New accessor macro. + (dbBeingDefined?): Adjust. + * interp/c-util.boot (makeCompilationData): New. + (dbFormalSubst): New accessor macro. + (dbSubstituteFormals): New. + * interp/define.boot ($pairlis): Remove. + (NRTmakeCategoryAlist): Use dbSubstituteFormals. + (NRTgetLookupFunction): Likewise. + (compDefineCategory2): Likewise. Set dbCompilerData and dbFormalSubst. + (compDefineFunctor1): Likewise. + * interp/functor.boot (ProcessCond): Use dbSubstituteFormals. + * interp/lisplib.boot (NRTgenInitialAttributeAlist): Likewise. + (makePredicateBitVector): Likewise. + (finalizeLisplib): Do not set $pairlis. + +2011-10-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (NRTaddDeltaCode): Take a DB parameter. + Adjust callers. + (NRTdescendCodeTran): Likewise. + * interp/define.boot (makeDomainTemplate): Lose second argument. + Adjust callers. + (NRTgetLookupFunction): Take a DB as first argument. Adjust callers. + (NRTextendsCategory1): Likewise. + (extendsCategory): Likewise. + (compDefineFunctor1): Do not find $template. Set dbTemplate. + +2011-10-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot ($atList, $sigList): Remove. + (compSignature): Take a fourth parameter. + (compCategoryItem): Take two more parameters. + (compCategory): Create references to signature and attribute lists + and pass them to callees. + +2011-10-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (makePredicateBitVector): Take a DB argument. + Set dbPredicates. + (compConLib1): Set dbPredicates to nil. + (compDefineLisplib): Likewise. + (finalizeLisplib): Write dbPredicates. + * boot/tokens.boot (copyTree): Do not translate. + * boot/utility.boot (topyTree): Implement. Export. + +2011-10-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (getInfovecCode): Take a DB argument. Pass + it to callees. Adjust caller. + * interp/database.boot (getConstructorPredicates): If contructor + is being defined, return the predicates as currently known. + * interp/daase.lisp (INITIAL-GETDATABASE): Remove + (fillDatabasesInCore): Adjust. + +2011-10-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compHasFormat): Simplify type form. + +2011-10-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (mkDomainCatName): Remove. + * interp/daase.lisp (DATABSE): Add new field TEMPLATE. + (dbTemplate): New macro accessor. + * interp/clam.boot (clearCategoryCaches): Clear dbTemplate. + * interp/define.boot (DomainSubstitutionFunction): Generate code + to access or set dbTemplate. + +2011-10-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp (DATABASE): Add new field CAPSULE-DEFINITIONS. + (dbCapsuleDefinitions): New macro accessor. + * interp/functor.boot (encodeFunctionName): Set it. + * interp/lisplib.boot ($lisplibVariableAlist): Remove. + ($lisplibSignatureAlist): Likewise. + (writeCapsuleLevelDefinitions): New. + (finalizeLisplib): Use it. + (mergeSignatureAndLocalVarAlists): Remove. + * interp/clam.boot (clearCategoryCaches): Use mkDomainCatName. + * interp/define.boot (DomainSubstitutionFunction): Likewise. + +2011-10-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/database.boot (orderPredTran): Tidy. + (interactiveModemapForm): Likewise. + (getDCFromSystemModemap): Likewise. + (getDomainFromMm): Likewise. + (getAllModemapsFromDatabase): Likewise. + (getModemapsFromDatabase): Likewise. + (getSystemModemaps): Likewise. + (getInCoreModemaps): Likewise. + (flattenSignatureList): Likewise. + +2011-10-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot ($lisplibCategory): Remove. + (compDefineCategory1): Adjust. + (compDefineCategory2): Likewise. + (compDefineCategory): Likewise. + (compDefineFunctor1): Likewise. + * interp/lisplib.boot (finalizeLisplib): Likewise. + * interp/br-data.boot (getParentsFor): Lose last paramater. + +2011-10-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($lisplibModemapAlist): Remove. + * interp/lisplib.boot (compileConstructorLib): Do not bind + $lisplibModemapAlist. + (compDefineLisplib): Likewise. + * interp/database.boot (modemapsFromCategory): Rename from + augLisplibModmapsFromCategory. Tidy. Avoid use of special + variable $lisplibModemapAlist. + (modemapsFromFunctor): Rename from augmentLisplibFromFunctor. + Tidy. Avoid use of special variable $lisplibModemapAlist. + * interp/define.boot (compDefineCategory2): Adjust. + (compDefineFunctor1): Likewise. + +2011-10-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/stream.spad.pamphlet (Stream): Tidy accessors. + +2011-10-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Support use of any natural number literal as constant name. + * interp/postpar.boot (postNormalizeName): Remove. + (postLhsOfDefinition): New. + (postDef): Use it. + (postMDef): Likewise. + (postForm): Remove dead code. + (postSignature): Internalize names of exported operators. + * interp/i-intern.boot (mkAtree2): For package call resolution, + use internal names. + * interp/compiler.boot (compAtomWithModemap): Use externalName for + name reported in diagnostic. + (compIntegerLiteral): New. + (compAtom): Use it. + (compElt): Look up modemaps for internal names. + (getModemapList): Likewise. + * interp/g-util.boot (normalizeName): New. + (internalName): Likewise. + (externalName): Likewise. + +2011-10-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/postpar.boot (postSignature): Tidy. + * interp/parse.boot (transCategoryItem): Remove as dead code. + * interp/lisplib.boot (finalizeLisplib): Remove use of removeZeroOne. + * interp/cattable.boot (categoryParts): Tidy. + +2011-10-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (AxiomCore) [CCL]: Import and export + FFI-related symbols. + +2011-10-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (getFormModemaps): Tidy checking of "elt" + and "setelt" modemaps. + +2011-10-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/modmon.spad.pamphlet (ModMonic): Rename second parameter + from Rep to P. Addd capsule-level definition for Rep. + [setPoly]: Adjust parameter type. + [coerce]: Likewise. + [UnVectorise]: Restrict reduction to %, then coerce to Rep. + [monomial]: Add appropriate coercion to Rep. + +2011-10-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/perman.spad.pamphlet (Permanent): Specify type of local + variable j. + * algebra/patmatch1.spad.pamphlet (PatternMatchTools): Tidy. + * algebra/padic.spad.pamphlet: Restrict type of literal constants. + * algebra/sttf.spad.pamphlet: Likewise. + * algebra/puiseux.spad.pamphlet: Likewise. + * algebra/odealg.spad.pamphlet (SystemODESolver) [applyLodo0]: + Specify type of local variable ans. + * algebra/numtheor.spad.pamphlet (IntegerNumberTheoryFunctions): Tidy. + * algebra/naalgc.spad.pamphlet (MonadWithUnit) [rightPower]: + Specify type of local variable res. + [leftPower]: Likewise. + * algebra/lodop.spad.pamphlet (NonCommutativeOperatorDivision) + [leftLcm]: Specify type of local variable v. + * algebra/intfact.spad.pamphlet (IntegerRoots) [approxSqrt]: + Specify type of local variables old and new. + * algebra/elfuts.spad.pamphlet + (EllipticFunctionsUnivariateTaylorSeries): Restrict types of + literal constants. + * algebra/ffnb.spad.pamphlet + (FiniteFieldNormalBasisExtensionByPolynomial): Likewise. + * algebra/fnla.spad.pamphlet (FreeNilpotentLie): Likewise. + * algebra/intaux.spad.pamphlet (IntegrationResult): Likewise. + * algebra/defintef.spad.pamphlet + (ElementaryFunctionDefiniteIntegration) [checkSMP]: Specify type + in the definition of local variable n. + * algebra/combinat.spad.pamphlet (IntegerCombinatoricFunctions): + Tidy definition of local variables. + * algebra/clifford.spad.pamphlet (CliffordAlgebra): Specify type in + the definition of local variables k, exchanges, bz. + * algebra/catdef.spad.pamphlet (CartesianTensor): Specify type in the + definition of local varibles rx and offz. + Remove useless variables zol, xol, oly, and zoly. + +2011-10-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compArgumentsAndTryAgain): Fail only if + elaboration of all arguments fails. + +2011-10-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compOrCroak1): Drop last argument. Tidy. + (mostSpecificTriple): New. + (compAtomWithModemap): Use it to resolve ambiguous constants. + (formatConstantCandidates): New. + (compForm1): Do try to compile constants 0 and 1 with compToApply. + * algebra/polycat.spad.pamphlet (FiniteAbelianMonoidRing) + [binomThmExpt]: Tidy. + (UnivariatePolynomialCategory) [pseudoDivide]: Likewise. + * algebra/float.spad.pamphlet (Float) [log]: Specificy type for + local variable `l'. + * interp/format.boot (formatUnabbreviatedSig): Handle constants. + +2011-10-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %fdecode. + * interp/lisp-backend.boot: Expand it. + * algebra/sf.spad.pamphlet (DoubleFloat): Remove %fmanexpr import. + Use %fdecode to access Lisp-level double-float decoding. + [mantissa]: Rewrite. + [exponent]: Likewise. + [negative?]: Likewise. + [positive?]: Likewise. + [manexp]: Likewise. + * algebra/view2D.spad.pamphlet (TwoDimensionalViewport): Tidy. + +2011-10-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compForm2): Simplify. Don't bother with + subsumption. Exit early on empty modemap candidate list. + +2011-10-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compAtomWithModemap): Handle code-gen here. + +2011-10-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-op2.boot (htSayExplicitExports): Don't forget possible + constant marker in exported signatures. + * interp/cattable.boot (simpHas): Likewise. + * interp/format.boot (form2String1): Likewise. + * interp/i-eval.boot (evaluateSignature): Likewise. + * interp/i-funsel.boot (hasCaty): Likewise. + (hasAttSig): Likewise. + * interp/define.boot (extendsCategory): Likewise. + (extendsCategoryBasic): Likewise. + (catExtendsCat?): Likewise. + (mkExportFromDescription): New. + (mkCategoryPackage): Use it. + * boot/tokens.boot: Add new selectors: mapOpsig, mapOperation, + mapPredicate, and mapImpl. + +2011-10-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Add new selectors: mapOperation, mapSignature, + mapTarget, mapSource, mapKind. + * algebra/data.spad.pamphlet (SystemInteger) [min, max]: Disambiguate + with explicit type annotation. + (SystemNonNetativeInteger) [min, max]: Likewise. + * algebra/color.spad.pamphlet (Color) [sample]: Remove parenthesis. + * algebra/ffnb.spad.pamphlet + (FiniteFieldNormalBasisExtensionByPolynomial) [sizeOfGroundField]: + Likewise. + * algebra/matrix.spad.pamphlet (SquareMatrix) [dimension]: Likewise. + * algebra/view3D.spad.pamphlet: Likewise. + * algebra/viewDef.spad.pamphlet: Likewise. + * algebra/regset.spad.pamphlet (RegularTriangularSetCategory) + [unitIdealIfCan]: Remove, was useless. + * algebra/sregset.spad.pamphlet (SquareFreeRegularTriangularSet) + [unitIdealIfCan]: Likewise. + * algebra/triset.spad.pamphlet (GeneralTriangularSet) + [unitIdealIfCan]: Likewise. + +2011-10-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (Boolean) [sample]: Remove + definition, as it is not exported. + +2011-10-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Workaround proclamation bug in GCL + * boot/utility.boot (firstNonblankPosition): Do not declare. + +2011-10-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineCapsuleFunction): Reimplement + signature inference. + (hasSigInTargetCategory): Implement what the documentation says: + infer the signature from the target category, not local declaration. + +2011-10-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (checkRepresentation): Prepare for general + constant definition syntax. + (compDefine1): Likewise. + (compDefineCategory1): Likewise. + (compDefineFunctor1): Likewise. + (compDefineCapsuleFunction): Likewise. + (doIt): Likewise. + (isMacro): Tidy. + +2011-10-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (isDomainForm): Handle conditionals. + +2011-10-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/postpar.boot (postDef): Do not include list of nil forms + as special cases. + * interp/parse.boot (parseDEF): Tidy. + * interp/define.boot (checkRepresentation): Likewise. + (compDefine1): Likewise. + (macroExpand): Likewise. + (compDefineCategory1): Likewise. + (compDefineCategory2): Likewise. + (compDefineFunctor1): Likewise. + (compDefWhereClause): Likewise. + (compDefineCapsuleFunction): Likewise. + (isMacro): Likewise. + +2011-10-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/postpar.boot (postNormalizeName): New. + (postAtom): Use it. + (postMDef): Do not generate artificial list of nils. + Leave left-hand-side as written in source code. + * interp/compiler.boot (compMacro): Tidy. + * interp/define.boot (checkRepresentation): Likewise. + * interp/parse.boot (parseMDEF): Likewise. + * algebra/syntax.spad.pamphlet (MacroAst): Adjust. + +2011-10-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/property.lisp: Move output-related content to i-output.boo. + Remove. + +2011-10-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/postpar.boot (displayPreCompilationErrors): Dot not check + for interactive mode. + (postBigFloat): Likewise. + (postDef): Likewise. + (postMDef): Likewise. + (tuple2List): Likewise. + (postReduce): Likewise. + (postQUOTE): Remove. + (postQuot): Likewise. + (postOp): Likewise. + (postTran): Adjust. + * interp/newaux.lisp: Replace %LET with ':='. + * interp/property.lisp: Likewise. + * interp/g-util.boot (getTypeOfSyntax): Likewise. + * interp/define.boot (checkRepresentation): Likewise. + (doIt): Likewise. + * interp/compiler.boot (compSetq): Likewise. + (compRecoverGuard): Likewise. + (compReduce1): Likewise. + * interp/c-util.boot (lhsOfAssignment): Likewise. + (isAlmostSimple): Likewise. + * interp/c-doc.boot (recordAttributeDocumentation): Likewise. + * interp/parse.boot (parseLeftArrow): Remove. + (parseLETD): Likewise. + (parseAssign): Rename from parseLET. + * algebra/syntax.spad.pamphlet (SpadAst): Handle both cases. + +2011-10-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad-parser.boot (parseSegmentTail): Tidy. + * interp/postpar.boot (postSEGMENT): Remove. + (postTupleCollect): Likewise. + (postBootNotEqual): Likewise. + * interp/parsing.lisp (CHAR-EQ): Remove. + (CHAR-NE): Likewise. + (getToken): Likewise. + * interp/newaux.lisp: Remove "^=" as legitimate operator. + * interp/lexing.boot (geToken): Rename from getSpadToken. + * interp/i-intern.boot (mkAtree3): Check for new form of universal + segment. + * interp/parse.boot (parseSegment): Likewise. + * algebra/seg.spad.pamphlet (Segment): Use .. instead of SEGMENT. + (SegmentFunctions2): Likewise. + (UniversalSegment): Likewise. + +2011-10-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in: Add ref and deref to support references. + * interp/sys-constants.boot ($OperatorFunctionNames): Add "by" and + "..". + * interp/spad.lisp: Tidy. + * interp/spad-parser.boot: New parsers. + * interp/preparse.lisp: Remove dead codes. + * interp/parsing.lisp (MATCH-ADVANCE-KEYWORD): Remove. + * interp/parse.boot (doParseCategory): Rename from parseCategory. + * interp/newaux.lisp: Tidy. + * interp/lexing.boot (getSpadToken): New. + (Keywords): Remove 'when'. + (matchKeywordNext): New. + (matchSpecial): Likewise. + (matchAdvanceSpecial): Likewise. + (matchAdvanceGlyph): Likewise. + * interp/fnewmeta.lisp: Move variable definitions to preparse.lisp. + Remove Lisp based parsers. + Remove file. + * interp/c-doc.boot (recordAttributeDocumentation): Fix thinko. + * interp/bootlex.lisp (GET-BOOT-TOKEN): Remove. + * interp/Makefile.in: Adjust dependencies. + * boot/parser.boot (bpChar): New. + (bpPattern): Allow character constants. + +2011-10-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (Boolean): Implement default + Boolean operators in terms of Logic operators. + (PropositionalFormula): Implement Logic operators instead of + Boolean operators. + * algebra/exposed.lsp.pamphlet: Expose + PropositionalFormulaFunctions1 and PropositionalFormulaFunctions2. + +2011-10-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad-parser.spad: New parsing functions. + * interp/fnewmeta.lisp: Use them, + (PARSE-Return): Remove. + (PARSE-Throw): Likewise. + (PARSE-Jump): Likewise. + (PARSE-Exit): Likewise. + (PARSE-Leave): Likewise. + (PARSE-ElseClause): Likewise. + (PARSE-Label): Likewise. + +2011-10-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (Reference) [elt]: Remove. + [setelt]: Likewise. + * algebra/lodof.spad.pamphlet: Adjust use. + * algebra/float.spad.pamphlet: Likewise. + * algebra/divisor.spad.pamphlet: Likewise. + * algebra/curve.spad.pamphlet: Likewise. + * algebra/card.spad.pamphlet: Likewise. + * algebra/algext.spad.pamphlet: Likewise. + * algebra/op.spad.pamphlet: Likewise. + * algebra/suls.spad.pamphlet: Likewise. + * algebra/sups.spad.pamphlet: Likewise. + * algebra/supxs.spad.pamphlet: Likewise. + * algebra/suts.spad.pamphlet: Likewise. + * algebra/symbol.spad.pamphlet: Likewise. + * algebra/view3D.spad.pamphlet: Likewise. + * algebra/viewDef.spad.pamphlet: Likewise. + +2011-10-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot (matchAdvanceKeyword): New. + * interp/spad-parser.boot: New parsing functions. + * interp/fnewmeta.lisp: Use them. + (PARSE-NewExpr): Remove. + (PARSE-Command): Likewise. + (PARSE-SpecialKeyWord): Likewise. + (PARSE-TokenOption): Likewise. + (PARSE-PrimaryOrQM): Likewise. + (PARSE-InfixWith): Likewise. + (PARSE-With): Likewise. + (PARSE-Inline): Likewise. + (PARSE-Quanifier): Likewise. + (PARSE-QuantifiedVariable): Likewise. + (PARSE-Infix): Likewise. + (PARSE-Prefix): Likewise. + (PARSE-Suffix): Likewise. + (PARSE-TokTail): Likewise. + (PARSE-Qualification): Likewise. + (PARSE-Primary): Likewise. + (PARSE-PrimaryNoFloat): Likewise. + (PARSE-Quad): Likewise. + +2011-10-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot (matchAdvanceString): New. + * interp/spad-parser.boot: New parsing functions. + * interp/fnewmeta.lisp: Use them. + (PARSE-VarForm): Remove. + (PARSE-Scripts): Likewise. + (PARSE-ScriptItem): Likewise. + (PARSE-AnyId): Likewise. + * interp/parsing.lisp (PARSE-OperatorFunctionName): Remove. + (MATCH-ADVANCE-STRING): Likewise. + +2011-10-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot (matchString): New. + * interp/fnewmeta.lisp: Use it. + * interp/parsing.lisp: Likewise. + (MATCH-STRING): Remove. + +2011-10-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/metalex.lisp (DEFUN-PARSE-TOKEN): Remove. + Move remaining to parsing.lisp. + * interp/fnewmeta.lisp (PARSE-IntegerTok): Remove. + (PARSE-FloatTok): Likewise. + (PARSE-FormalParameter): Likewise. + (PARSE-FormalParameterTok): Likewise. + (PARSE-String): Likewise. + (PARSE-Name): Likewise. + +2011-10-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/postpar.boot: Remove functions and references to Scripts. + +2011-10-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot: New tokenizer functions. + * interp/parsing.lisp: Use them. + * interp/metalex.lisp: Likewise. + (GET-SPECIAL-TOKEN): Remove. + * interp/bootlex.lisp: Likewise. Remove old tokenizers, + +2011-10-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot: Include sys-macros. + Add more tokenizer functions. + * interp/fnewmeta.lisp: Use them. + * interp/parsing.lisp: Likewise. + * interp/bootlex.lisp: Likewise. + * interp/spad.lisp: Likewise. + (NEXT-BOOT-LINE): Remove. + * interp/metalex.lisp: Remove old lexing routines. + * interp/Makefile.in (lexing.$(FASLEXT)): Adjust dependency. + * boot/tokens.boot: newString is no longer builtin library function. + (shoeDictCons): Use makeString not newString. + * lisp/core.lisp.in (listToString): Fix typo. + +2011-10-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (eof?): New. + (listToString): Likewise. + (formatToString): Likewise. + * boot/tokens.boot: Add fifth as builtin library function. + +2011-10-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot: Add support for Token abstract datatype. + * interp/bootlex.lisp: Use it. + * interp/fnewmeta.lisp: Likewise. + * interp/metalex.lisp: Likewise. Remove old token structure and + associated functions. + +2011-10-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot (stackClear!): Fix typo. + Add new grammar reduction abstract datatype facility. + * interp/fnewmeta.lisp: Use it. + * interp/parsing.lisp: Likewise. + * interp/bootlex.lisp (SPAD): Use popStack1. + * interp/spad-parser.boot (parseSpadFile): Likewise. + * interp/metalex.lisp: Remove REDUCTION and associated functions. + +2011-10-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lexing.boot: New. + * interp/metalex.lisp: Include it. Use new stack datatype support. + * interp/parsing.lisp: Use new stack datatype support. + * interp/Makefile.in: Adjust. + +2011-10-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/utility.boot (symbolAssoc): Rename from assocSymbol. Export. + * interp/functor.boot: Remove getAbbreviation, mkAbbrev, addsuffix. + * interp/sys-utility.boot (symbolAssoc): Remove as redundant. + (scalarTarget): New. + * interp/bc-matrix.boot: Use symbolTarget instead of symbolLassoc. + * interp/br-con.boot: Use QLASSQ instead of symbolTarget. + * interp/br-data.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-prof.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/buildom.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/define.boot: Likewise. + * interp/format.boot: Likewise. + * interp/g-timer.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/i-intern.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-object.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/profile.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/vmlisp.lisp (assoc): Tidy. + +2011-10-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/comp.lisp: Remove. + * interp/setvart.boot: Remove setting of 'compiler' options. + * interp/setvars.boot (setAsharpArgs): Remove. + (describeAsharpArgs): Likewise. + (setInputLibrary): Likewise. + (setOutputLibrary): Likewise. + (describeInputLibraryArgs): Likewise. + (describeOutputLibraryArgs): Likewise. + +2011-10-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in: Do not use CCL in AxiomCore. + * boot/translator.boot (packageBody): Tidy. + * boot/scanner.boot (shoeOrdToNum): Remove. + * boot/includer.boot (shoeBiteOff): Remove. + (shoeFileName): Likewise. + (shoeFnFileName): Likewise. + +2011-10-01 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * boot/utility.boot (objectAssoc): New. Export. + * boot/ast.boot: Use it. instead of ASSOC. + * boot/translator.boot (packageBody): Tidy. + * interp/astr.boot: Use objectAssoc instead of ASSQ. + * interp/br-con.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/buildom.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/category.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/define.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-object.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-special.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/int-top.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/msg.boot: Likewise. + * interp/posit.boot: Likewise. + * interp/termrw.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/sys-utility.boot (upwardCut): New. + * interp/spad.lisp: Use it. + * interp/util.lisp: Likewise. + * interp/spaderror.lisp: Likewise. + * interp/vmlisp.lisp (ASSEMBLE): Remove. + (ASSQ): Likewise. + (MEMQ): Likewise. + (NAMEDERRSET): Likewise. + (ORADDTEMPDEFS): Likewise. + * interp/macros.lisp (QLASSQ): Move to vmlisp.lisp. + (LASSQ): Remove. + +2011-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpImport): Accept long names for used namespaces. + * boot/translator.boot (packageBody): Tidy. + (translateToplevel): Likewise. + (getIntermediateLispFile): Likewise. + * interp/sys-os.boot: Import System.Foreign. + +2011-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/utility.boot: Define BOOTTRAN namespace. + (setUnion): New. + (setDifference): New. + * boot/translator.boot (packageBody): New. + (translateToplevel): Use it. Translate namespace definition. + * boot/tokens.boot: Replace bitmask with bitref. + Do not translate setDifference and setUnion. + * boot/parser.boot (bpDef): Now include namespace definition. + (bpComma): Remove namespace rule as subsumed by Where rule. + * boot/Makefile.in: Remove dependencies on initial-env.lisp. + (AXIOM_LOCAL_LISP_sources): Remove as unused, + (boot_sources): Remove as redundant with boot_SOURCES. + * boot/initial-env.lisp: Remove. + +2011-09-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/utility.boot (firstNonblankPosition): New. + (firstBlankPosition): Likewis. + * boot/translator.boot (reallyPrettyPrint): New. + (genOptimizeOptions): Use it. + (evalBootFile): Tidy. + (shoePPtoFile): Remove as deadcode. + (shoeAddbootIfNec): Rewrite. + (shoeAddStringIfNec): Remove. + * boot/scanner.boot (shoeNextLine): Use firstNonblankPosition. + (shoeEsc): Likewise. + (shoePossFloat): Likewise. + * boot/initial-env.lisp ($IEEE): Remove. + (*LISP-BIN-FILETYPE*): Likewise. + (*LISP-SOURCE-FILETYPE*): Likewise. + (SHOEPRETTYPRINT1): Likewise, + (REALLYPRETTYPRINT): Likewise. + (SHOENOPRETTYPRINT): Likewise. + (STRPOS): Likewise. + (STRPOSL): Likewise. + (shoeReadLisp): Likewise. + +2011-09-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-data.boot (lefts): Iterate directly over table. + (mkUsersHashTable): Likewise. + (mkDependentsHashTable): Likewise. + (domainsOf): Likewise. + * interp/br-op1.boot (dbShowOpAllDomains): Likewise. + * interp/cattable.boot (showCategoryTable): Likewise. + (displayCategoryTable): Likewise. + (simpTempCategoryTable): Likewise. + (simpCategoryTable): Likewise. + (genTempCategoryTable): Likewise. + (compressHashTable): Likewise. + (updateCategoryTableForCategory): Likewise. + (clearTempCategoryTable): Likewise. + * interp/clam.boot (displayHashtable): Likewise. + (reportHashCacheStats): Likewise. + (reportInstantiations): Likewise. + (globalHashtableStats): Likewise. + * interp/guess.boot (buildWordTable): Likewise. + * interp/i-syscmd.boot (writify): Likewise. + * interp/scan.boot (scanDictCons): Likewise. + (scanPunCons): Likewise. + * interp/slam.boot (hashCount): Likewise. + * interp/topics.boot (mkTopicHashTable): Likewise. + (addTopic2Documentation): Likewise. + (topics): Likewise. + (listOfTopics): Likewise. + * interp/word.boot (buildWordTable): Likewise. + (writeFunctionTables): Likewise. + (bootSearch): Likewise. + +2011-09-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfTableIteratorBindingForm): New. + (bfExpandTableIters): Use it. + * boot/initial-env.lisp (HKEYS): Remove. + * boot/tokens.boot (shoeDictCons): Iterate directly over shoeKeyTable. + (shoePunCons): Likewise. + * boot/translator.boot (shoeReport): Iterate directly over $bootUsed. + (shoeXReport): Likewise. + +2011-09-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfFor): Tidy. Handle hashtable iterator forms. + (bfIterateTable): New. + (separateIterators): Likewise. + (bfExpandTableIters): Likewise. + (bfLp1): Use them. + +2011-09-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/annacat.spad.pamphlet: Remove. + * algebra/routines.spad.pamphlet: Likewise. + * algebra/functions.spad.pamphlet: Likewise. + * algebra/tools.spad.pamphlet: Likewise. + * algebra/cont.spad.pamphlet: Likewise. + * algebra/fortran.spad.pamphlet: Likewise. + * algebra/fortmac.spad.pamphlet: Likewise. + * algebra/fortpak.spad.pamphlet: Likewise. + +2011-09-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/asp.spad.pamphlet: Remove. + * algebra/c02.spad.pamphlet: Likewise. + * algebra/c05.spad.pamphlet: Likewise. + * algebra/c06.spad.pamphlet: Likewise. + * algebra/d01.spad.pamphlet: Likewise. + * algebra/d02.spad.pamphlet: Likewise. + * algebra/d03.spad.pamphlet: Likewise. + * algebra/e01.spad.pamphlet: Likewise. + * algebra/e02.spad.pamphlet: Likewise. + * algebra/e04.spad.pamphlet: Likewise. + * algebra/f01.spad.pamphlet: Likewise. + * algebra/f02.spad.pamphlet: Likewise. + * algebra/f04.spad.pamphlet: Likewise. + * algebra/f07.spad.pamphlet: Likewise. + * algebra/s.spad.pamphlet: Likewise. + * algebra/d01Package.spad.pamphlet: Likewise. + * algebra/d02Package.spad.pamphlet: Likewise. + * algebra/d03Package.spad.pamphlet: Likewise. + * algebra/e04Package.spad.pamphlet: Likewise. + * algebra/d01agents.spad.pamphlet: Likewise. + * algebra/d01routine.spad.pamphlet: Likewise. + * algebra/d01transform.spad.pamphlet: Likewise. + * algebra/d01weights.spad.pamphlet: Likewise. + * algebra/d02agents.spad.pamphlet: Likewise. + * algebra/d02routine.spad.pamphlet: Likewise. + * algebra/d03agents.spad.pamphlet: Likewise. + * algebra/d03routine.spad.pamphlet: Likewise. + * algebra/e04agents.spad.pamphlet: Likewise. + * algebra/e04routine.spad.pamphlet: Likewise. + +2011-09-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/axtimer.as.pamphlet: Remove. + * algebra/ffrac.as.pamphlet: Likewise. + * algebra/herm.as.pamphlet: Likewise. + * algebra/interval.as.pamphlet: Likewise. + * algebra/invnode.as.pamphlet: Likewise. + * algebra/invrender.as.pamphlet: Likewise. + * algebra/invtypes.as.pamphlet: Likewise. + * algebra/invutils.as.pamphlet: Likewise. + * algebra/iviews.as.pamphlet: Likewise. + * algebra/ndftip.as.pamphlet: Likewise. + * algebra/nepip.as.pamphlet: Likewise. + * algebra/noptip.as.pamphlet: Likewise. + * algebra/nqip.as.pamphlet: Likewise. + * algebra/nrc.as.pamphlet: Likewise. + * algebra/nsfip.as.pamphlet: Likewise. + +2011-09-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/alql.spad.pamphlet (IndexCard): Now satisfies + CoercibleFrom String. Remove explicit coerce export. + * algebra/carten.spad.pamphlet (CartesianTensor): Remove explicit + coerce export. Add satisfaction of CoercibleFrom appropriate + domains. + * algebra/color.spad.pamphlet (Palette): Relace explicit coerce + export with CoercibleTo %. + * algebra/constant.spad.pamphlet (InnerAlgebraicNumber): Likewise. + * algebra/dpolcat.spad.pamphlet (DifferentialVariableCategory): + Likewise. + +2011-09-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/Makefile.in (libOpenAxiom_HEADERS): Include vm.H. + (libOpenAxiom_SOURCES): Include vm.cc + * utils/vm.cc: New. + * utils/vm.H: Likwise. + +2011-09-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optList): Tidy. + +2011-09-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (finishLambdaExpression): Tidy. + (extractCodeAndConstructTriple): Likewise. + * interp/g-opt.boot (optCall): Likewise. + ($VMsideEffectFreeOperators): Include %function + * interp/lisp-backend.boot: Translate %function. + +2011-09-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (isFunctor): Noe recognize Mapping as a functor. + * interp/g-opt.boot (doInlineCall): Tidy one more time. + ($VMsideEffectFreeOperators): Move %aplly to $simpleVMoperators. + (optLET): Remove as unused. + * interp/lisp-backend.boot (expandApply): New. Register as + expander for %apply forms. + * interp/define.boot (getXmode): New. + (displayMissingFunctions): Use it instead of getmode. + (compDefineCapsuleFunction): Likewise. + (addDomain): Likewise. + (getSignature): Likewise. + (compile): Likewise. + (compJoin): Likewise. + * interp/compiler.boot (comp3): Likewise. + (compWithMappingMode): Likewise. + (applyMapping): Generate %apply form. + (compApplication): Likewise. + (autoCoerceByModemap): Likewise. + (extractCodeAndConstructTriple): Handle %apply forms. + (setqSingle): For domain variables, put corresponding macro forms + in the environment. + * algebra/ore.spad.pamphlet (Automorphism): Define Rep as a constant. + Adjust; include explicit uses of rep and per. + +2011-09-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Remove IndexedList. + * algebra/list.spad.pamphlet (IndexedList): Fold definition into + List. Remove. + * algebra/exposed.lsp.pamphlet: Don't expose ILIST. + * algebra/Makefile.in: Adjust. + +2011-09-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (doInlineCall): Tidy. + (canInlineVarDefinition): Likewise. + +2011-09-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/macros.lisp (COERCE-FAILURE-MSG): Remove. + (check-subtype): Likewise. + (check-union): Likewise. + (MAKE-REASONABLE): Move to diagnostic.boot. Rename. + (assert): Move to sys-macros.lisp. + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %retract + and %pullback. + (optRetract): Tidy. + (optPullback): New. + * interp/diagnostics.boot (makeReasonable): New. + (moanRetract): Likewise. Use it. + * interp/buildom.boot (mkNewUnionFunList): Simplify. + (mkUnionFunList): Likewise. + +2011-09-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (doInlineCall): New. + (optCall): Use it to implement inline functions. + ($VMsideEffectFreeOperators): Include %apply and STRINGIMAGE. + ($simpleVMoperators): STRINGIMAGE is promoted. + (canInlineVarDefinition): Tidy. + (optBind): Likewise. + +2011-09-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optXLAMCond): Remove as useless. + (optCONDtail): Likewise. + +2011-09-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optIadd): Remork. + (optIsub): Likewise. + (optIdec): New. + * algebra/string.spad.pamphlet (IndexedString): Fold definition + into String. Remove. + (Character): Tidy. + (CharacterClass): Likewise. + * algebra/exposed.lsp.pamphlet: Do not expose ISTRING. + +2011-09-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (Identifier): Remove + CoercibleTo Symbol and CoercibleTo String properties. + * algebra/symbol.spad.pamphlet (Symbol): Make RetractableTo Identifier. + +2011-09-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/op.spad.pamphlet (BasicOperator): Use string$String + instead of coercion from Identifier to String. + +2011-09-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/string.spad.pamphlet (String) [string]: New overload to + convert from Identifier. + +2011-09-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (builtinCategoryName?): Move to g-util.boot. + (builtinFunctorName?): Likewise. + (builtinConstructor?): Likewise. + (superType): Exit early if builtin functor or non-domain form. + * algebra/Makefile.in: Flesh out bootstrap dependencies. + +2011-09-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($clamList): Do not include hasFileProperty. + * interp/database.boot (loadDBIfnecessary): Tidy. + * interp/clammed.boot (hasFileProperty): Remove as unused. + * interp/lisplib.boot (putFileProperty): Likewise. + (getLisplib): Likewise. + (getLisplibNoCache): Likewise. + (getFileProperty): Likewise. + (hasfilePropertyNoCache): Likewise. + (unInstantiate): Likewise. + (killNestedInstantiations): Likewise. + (isNestedInstantiations): Likewise. + (loadFunctor): Likewise. + (getLisplibVersion): Likewise. + (Operators): Likewise. + (compDefineLisplib): Don't LOCALDATABASE if building system algebra. + +2011-09-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (finalizeLisplib): Finalize documentaion + only if not bootstrapping. + (isFunctor): Tidy. + * interp/g-util.boot (superType): Tidy. + * interp/database.boot (getDualSignature): Rename from + getDualSignatureFromDB. Adjust callers. + * interp/c-util.boot (isKnownCategory): Remove. + (diagnoseUnknownType): Use isCategoryForm. + * interp/bootlex.lisp (GET-INTEGER-IN-RADIX): Use SPAD_SYNTAX_ERROR. + * interp/metalex.lisp (GET-STRING-TOKEN): Likewise. + * interp/parsing.lisp (MUST): Likewise. + * algebra/boolean.spad.pamphlet (Refrence) [coerce]: Bypass + conversion to Identifier. + * algebra/domain.spad.pamphlet (ContructorKind): Tidy. + +2011-09-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (NRTaddInner): Use the dual signature. + * interp/lisplib.boot (writeDualSignature): New. + (finalizeLisplib): Likewise. + * interp/define.boot (compDefineCategory2): Compute dual signature. + (compDefineFunctor1): Likewise. + * interp/daase.lisp (LOCALNRLIB): Juts read dual signature info; + don't compute it. + +2011-09-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineFunctor1): Augment the envionment + with current instantiation. + * interp/c-util.boot (isSubset): Accept values of current + instantiation as values of the current domain. + +2011-09-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compImport): Don't do anything if + bootstrapping: there is no much to import for now. + * interp/define.boot (getOperationAlist): Get the isFunctor + property directly. + (addDomain): Call isDomainForm. + +2011-09-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (isFunctor): Tidy. + +2011-09-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineFunctor1): Set + dbConstructorModemap before compiling functor body. + +2011-09-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot: Use DB for current constructor. + (mkCategoryPackage): Category defaults are packages, not domains. + * interp/functor.boot (encodeFunctionName): Use current + constructor DB. First argument is now a DB. Adjust caller. + * algebra/domain.spad.pamphlet (DomainConstructo) [functorData]: + Use getInfovec. + +2011-09-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Stop using LOADED symbol property of constructors. + * interp/daase.lisp (DATABASE) [LOAD-PATH]: New field. + (dbLoadPath): New accessor. + (INITIAL-GETDATABASE): Tidy. + * interp/database.boot: Use dbLoadPath and dbLoaded?. + * interp/lisplib.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/showimp.boot: Likewise. + * interp/br-util.boot (isLoaded?): Remove as unused. + +2011-09-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot: Remove $LISPLIB. + * interp/functor.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/patches.lisp: Likewise. + * interp/sys-globals.boot: Likewise. + +2011-09-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineFunctor1): Do not set + $lisplibFunctions. + * interp/lisplib.boot: Remove $lisplibOpAlist. + * interp/nruncomp.boot: Likewise. + +2011-09-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (updateSlot1DataBase)e: Remove. + (newLookupInCategories1): Remove. + (newLookupInCategories): Do not call it. + * interp/define.boot ($isOpPackageName): Remove. + (compDefinFunctor1): Do not emit slot1 database info for category + defaulta. + ($lisplibSlot1): Remove. + * interp/lisplib.boot: Likewise. + (finalizeLisplib): Do not write slot1 info. + +2011-09-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (writeCategory): New, + (finalizeLisplib): Use it. Write category bodies in generated + Lisp code file. + * interp/daase.lisp (GETDATABASE) [CONSTRUCTORCATEGORY]: Don't + bother with package and domain constructors. + * interp/database.boot (getConstructorCategory): Rename from + getConstructorCategoryFromDB. Reimplement, Adjusr callers. + +2011-09-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp (GETDATABASE): Do not handle PREDICATES and + ATTRIBUTES selectors anymore. + * interp/database.boot (getConstructorPredicates): Rename from + getConstructorPredicatesFromDB. Adjust callers. + (getConstructorAttributes): Rename from getConstructorAttributesFromDB. + Adjust callers. + +2011-09-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (writeAbbreviation): New. + (writePredicates): Likewise. + (finalizeLisplib): Use them. + * interp/daase.lisp (squeezeCopy): New, + Use it in place of SQUEEZE. + +2011-09-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot: Likewise. + * interp/define.boot: Remove $lisplibAncestors. + +2011-09-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-data.boot: Don't use $lisplibParents. + * interp/define.boot: Likewise. + * interp/lisplib.boot: Likewise. + +2011-09-03 Igor Pashev <pashev.igor@gmail.com> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/pixmap.c: Include standard header. + * include/xpm.h: Remove. + +2011-09-03 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * interp/property.lisp: Remove unused codes. + * interp/g-util.boot (superType): If domain is $ then use current + information. + * interp/daase.lisp: Tidy. + * interp/c-util.boot (extendsCategoryForm): Temporarily disable + uses of information not coming from on-the-fly category compilation. + * interp/br-data.boot (getParentsFor): Change first parameter to a DB. + Adjust callers. + * algebra/Makefile.in: Adjust dependencies. + +2011-08-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.in: Simplify bootstrap rules. Build + initdb.daase before bootstrap. + +2011-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (laodIfNecessaryAndExists): Remove as unused. + (loadLibIfnecessary): Fold definition into loadIfNecessary. + (loadDB): New. + (writeAttributes): Likewise. + (finalizeLisplib): Use it. + * interp/daase.lisp (MAKE-DATABASES): Fix SQUEEZE snafu. + * interp/c-util.boot (extendsCategoryForm): Prefer existing + translation of category definition to re-evaluation on the fly. + +2011-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (loadLib): Remove deadcode. + (isDomainForm): Tidy. + (isFunctor): Likewise. + (compDefineExports): Remove as no longer used. + * interp/sys-utility.boot (loadExports): Likewise. + * interp/g-util.boot (get0, get1, get2): Tidy. + +2011-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (writePrincipals): New. + (finalizeLisplib): Use it. + +2011-08-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineCategory2): Mark begining and end + of definition processing. + (compDefineFunctor1): Likewise. + * interp/daase.lisp (dbPrincipals): New accessor. + * interp/br-data.boot (getDefaultPackageClients): Fix thinko. + * interp/lisplib.boot (writeAncestors): New. + (finalizeLisplib): Use it + +2011-08-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (writeInstanceCache): Remove. + (finalizeLisplib): Don't call it. + +2011-08-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp (DATABASE): Add new field BEING-DEFINED. + (dbBeingMacro?): New accessor. + (GETDATABASE): Tidy. + +2011-08-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Remove $lisplibAttributes. + * interp/define.boot (compDefineFunctor1): Tidy. + (compCapsuleInner): Add a DB first parameter. Adjust callers. + * interp/lisplib.boot (NRTgenInitialAttributeAlist): Likewise. + (simplifyAttributeAlist): Likewise. + * interp/nruncomp.boot (changeDirectoryInSlot1): Likewise. + (buildFunctor): Change first parameter to DB. Adjust caller. + +2011-08-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (autoLoad): Lose first parameter. + Adjust callers. + (unloadOneConstructor): Likewise. + * interp/category.boot (isCategoryForm): Rewrite. + * interp/patches.lisp (mkAutoLoad): Move to lisplib.boot. + +2011-08-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compHasFormat): Take environment + argument. Adjust callers. + * interp/define.boot (NRTmakeCategoryAlist): Likewise. + * interp/functor.boot (ProcessCond): Likewise. + * interp/lisplib.boot (NRTgenFinalAttributeAlist): Likewise. + (predicateBitIndex): Likewise. + (predicateBitRef): Likewise. + (makePredicateBitVector): Likewise. + (transHasCode): Likewise. + +2011-08-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/hashcode.boot: Remove. + *interp/interop.boot: Move OpenAxiom relevant code to define.boot + and nrunfast.boot. Remove. + +2011-08-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot ($mutableDomain): Remove. Adjust users. + ($mutableDomains): Likewise. + * interp/database.boot (dbMutable?): Remove. + * interp/clam.boot (addToclam): Remove as unused. + * algebra/modmon.spad.pamphlet: Do not make MoMonic mutable. + * algebra/defaults.spad.pamphlet: Do not make RepeatedSquaring and + RepeatedDoubling, FiniteLinearAggregateSort mutable. + +2011-08-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp (dbArity, dbInstanceCache): New accessors. + * interp/database.boot (loadDBIfnecessary): New. + (dbMutable?): Likewise. + * interp/lisplib.boot (finalizeLisplib): Record mutable property. + +2011-08-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.in: Support construction initial DB profile. + * interp/database.boot (printInitdbInfo): New. + (printAllInitdbInfo): Likewise. + * interp/sys-driver.boot (initializeDatabases): Exit early if + constructing initial DB profile. + (buildInitdbHandler): New. Handle --build-initdb. + * utils/command.cc (driver_table): Add map for --build-initdb. + +2011-08-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (initializeDatabases): New. + (initializeGlobalState): Use it. + * interp/spad-parser.boot (parseSpadFile): Tidy. + * interp/g-cndata.boot (installConstructor): Exit early it global + table not initialized. + * interp/database.boot (makeInitialDB): New. + (populateDBFromFile): Likewise. + * interp/daase.lisp: Introduce more DB accessors. + * interp/br-util.boot (dbSourceFile): Remove. + * interp/br-con.boot (kdPageInfo): Use + getConstructorSourceFileFromDB instead of dbSourceFile. + (kPage): Likewise. + * algebra/Makefile.in (SPADFILES): Include domain.spad + +2011-08-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (initializeGlobalState): Construct + database tables if algebra is not complete yet. + * interp/Makefile.in (${SAVESYS}): Simplify. + * algebra/Makefile.in (strap-stamp): Make the destination directory. + +2011-08-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/metalex.lisp (LINE-HANDLER, NEXT-LINE, XCAPE): Remove. + (XTOKENREADER, GET-TOKEN, NEXT-META-LINE): Likewise. + (META_ERROR_HANDLER, META-SYNTAX-ERROR, META-META-ERROR-HANLER): + Likewise. + * interp/debug.lisp: Do not set /XCAPE property. + * interp/bootlex.lisp (INIT-BOOT/SPAD-READER): Do not set + XTOKENRADER, LINE-HANDLER, META_ERROR_HANDLER. + +2011-08-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp: Remove NILADIC field from DATABASE structure. + (dbNiladic?): Remove. Adjust users. + (WRITE-INTERP): Don't write NILADIC field. + +2011-08-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (substNames): Lose second parameter. Adjust + callsers. + (evalAndSub): Likewise. + (augModmapsFromCategory): Likewise. + (genDomainView): Likewise. + (augModemapsFromCategoryRep): Remove as deadcode. + (genDomainOps): Lose first parameter. Adjust callers. + +2011-08-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/database.boot (getConstructorModemap): Rename from + getConstructorModemapFromDB. Adjust callers. + +2011-08-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/database.boot (niladicConstructor?): Rename from + niladicConstructorFromDB. Use getConstructorFormFromDB. + Adjust callers. + +2011-08-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot ($lisplibAbbreviation): Remove. Adjust users. + ($lisplibForm): Likewise. + * interp/c-doc.boot (finalizeDocumentation): Take constructor's + name as parameter. Adjust callers. + * interp/lisplib.boot (compileDocumentation): Likewise. + (WriteKind): New. + (writeConstructorForm): Likewise. + (writeOperations): Likewise. + (WriteConstructorModemap): Likewise. + (finalizeLisplib): Use them. + +2011-08-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (leaveIfErrors): Take kind as argument. + (writeInfo): New. + (writeSuperDomain): Likewise. + (finalizeLisplib): Use it. Take constructor as argument. + * interp/define.boot ($lisplibSuperDomain): Remove. Adjust users. + ($lisplibKind): Remove Adjust users. + (emitSubdomainInfo): Set dbSuperDomain. + (incompleteFunctorBody): Likewise. + * interp/daase.lisp: Add new database accessors. + (GETDATABASE): Fix handling of superDomain property. + * interp/br-util.boot (dbConstructorKind): Remove. + * interp/br-con.boot: Remove deadcode. + (dbShowCons1): Adjust. + * interp/br-saturn.boot (dbShowConsKinds): Likewise. + +2011-08-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($compileExportOnly): Remove. + * interp/sys-driver.boot (initializeGlobalState): Don't set it. + * interp/define.boot (skipCategoryPackage?): Adjust. + (compDefineFunctor): Likewise. + (compDefineFunctor1): Likewise. + (incompleteFunctorBody): New. + (compFunctorBody): Use it. + +2011-08-20 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * interp/sys-utility.boot (constructorDB): New. + * interp/daase.lisp (dbNiladic?): New. Use it to access niladic + property. of a constructor. + * interp/database.boot: Import daase. + (niladicContructorFromDB): Use it. + * interp/define.boot (compDefineCategory): Don't write + compilerInfo garbage. + (compDefineFunctor1): Likewise. + (compDefineCategory2): Set niladic property. + (compDefineFunctor): Likewise. + * interp/lisplib.boot (loadLib): Do not set niladic property. It + is now a side-effect of loading. + (loadLibNoUpdate): Do not check for version. + (makeConstructorAutoload): Do not set niladic property. + (initializeLisplib): Do not emit code to check version. + (mkCtorDBForm): New. + (writeNiladic?): Likewise. + (finalizeLisplib): Do not set niladic property. + * interp/patches.lisp: Remove deadcode. + * interp/sys-constants.boot (MAJOR-VERSION): Remove. + +2011-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/polycat.spad.pamphlet (UnivariatePolynomialCategory) + [divide]: Tidy. + * algebra/Makefile.in (strap-0/%.$(FASLEXT)): Copy generated Lisp + files if keeping intermediate files. + +2011-08-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (mkOr): Taken environment as parameter. + Adjust callers. + (mkOr2): Likewise. + (mkAnd): Likewise. + (mkAnd2): Likewise. + (FindFundAncs): Likewise. + (CatEval): Likewise. + (AncestorP): Likewise. + (CondAncestorP): Likewise. + (DescendantP): Likewise. + * interp/compiler.boot (compMapCond): Likewise. + (compMapCond'): Likewise. + * interp/define.boot (formatPred): Likewise. + (formatInfo): Likewise. + (addInfo): Likewise. + (knownPred): Likewise. + * interp/functor.boot (InvestigateConditions): Likewise. + (ICformat): Likewise. + +2011-08-18 Alfredo Portes <doyenatccny@gmail.com> + + * sman/sman.c: Do not try to start graphic components + if binaries are not present. + * include/cfuns.h: Make writeablep and readablep + arguments const. + * lib/cfuns-c.c: Likewise. + +2011-08-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/momdemap.boot: Fold content into compiler.boot and + define.boot. Remove. + * Makefile.in: Adjust dependencies. + +2011-08-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Use category accessors. + * interp/category.boot: Likewise. + * interp/modemap.boot: Likewise. + +2011-08-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (categoryAssociatedTypes): Rename from + categoryHierarchy. Adjust callers. + (categoryPrincipals): New. + (categoryAncestors): Likewise. + (categoryLocals): Likewise. + (categoryParameters): Likewise. + (extendsCategoryForm): Use them. + * interp/category.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/define.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/database.boot (getCategoryAttributes): Remove. + (getPrincipalAncestors): Likewise. + (getCategoryParents): Likewise. + * algebra/domain.spad.pamphlet (Category): Adjust. + +2011-08-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (categoryPrincipals): New. + (categoryAncestors): Likewise. + * interp/functor.boot (DescendCodeAdd): Tidy. + (DescendCodeVarAdd): Fix thinko. Iterator over $domainShell. + Don't pretend constants have ELT implementations. + * interp/nruncomp.boot (buildFunctor): Tidy. + +2011-08-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/modemap.boot (addModemap0): Don't special-case + CategoryDefaults. + * interp/define.boot (processFunctor): Fold into caller. Remove. + * interp/clam.boot (recordInstantiation1): Do not special case + CategoryDefaults and RepeatedSquaring. + * interp/functor.boot (DescendCode): Lose last argument, for it is + always $. Adjust body. Adjust caller. + * interp/nruncomp.boot (buildFunctor): $catNames should not be a + fluid variable. Rename to viewNames. + +2011-08-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/functor.boot (setVector0, setVector12, setVector3, + mkDomainFomer, setVector5, mkVectorWithDeferral): Remove as dead + codes. + +2011-08-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCollectVector): Generate VM forms. + (optIinc): New. Register as new transformer. + * interp/c-util.boot ($middleEndMacroList): Remove. + (middleEndExpand): Don't check for Lisp-level macros anymore. + +2011-08-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compSeq1): Tidy. + (cpmpSeqItem): Likewise. + (replaceExitEtc): Likewise. + (massageLoop): Don't check for TAGGEDexit anymore. + +2011-08-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisp-backend.boot ($freeVarName): New global constant. + (loopVarInit): New. + (expandIN): Use it. + (expandON): Likewise. + (expandSTEP): Likewise. + (massageFreeVarInits): New. + (expandLoop): Use it. + * interp/fnewmeta.lisp (PARSE-QuantifiedVariable): Tidy. + (PARSE-AnyId): Likewise. + (PARSE-Variable): New. Allow scope-of-type specification for + loop variable. + (PARSE-Iterator): Use it. + * interp/compiler.boot (massage_llop): Don't check + $mayHaveFreeIteratorVariables. + (compRepeatOrCollect): Don't bind it. + (classifyIteratorVariable): New. + (complainIfShadowing): Remove as no longer needed. + (compStepIterator): Use it. Tidy. + (compONIterator, compINIterator): New. Split out of compIterator. + (compIterator): Refactor. + * interp/functor.boot (optFunctorBody): Fix thinko. + * interp/g-opt.boot (optCollectVector): A STEP iterator may have a + storage class. + + * algebra/clip.spad.pamphlet: Fix loop variable scope. + * algebra/ffpoly.spad.pamphlet: Likewise. + * algebra/fparfrac.spad.pamphlet: Likewise. + * algebra/gdpoly.spad.pamphlet: Likewise. + * algebra/ghensel.spad.pamphlet: Likewise. + * algebra/groebsol.spad.pamphlet: Likewise. + * algebra/intfact.spad.pamphlet: Likewise. + * algebra/matfuns.spad.pamphlet: Likewise. + * algebra/moddfact.spad.pamphlet: Likewise. + * algebra/numtheor.spad.pamphlet: Likewise. + * algebra/permgrps.spad.pamphlet: Likewise. + * algebra/pfbr.spad.pamphlet: Likewise. + * algebra/pgcd.spad.pamphlet: Likewise. + * algebra/pleqn.spad.pamphlet: Likewise. + * algebra/pseudolin.spad.pamphlet: Likewise. + * algebra/radeigen.spad.pamphlet: Likewise. + * algebra/radix.spad.pamphlet: Likewise. + * algebra/regset.spad.pamphlet: Likewise. + * algebra/rep2.spad.pamphlet: Likewise. + * algebra/sgcf.spad.pamphlet: Likewise. + * algebra/smith.spad.pamphlet: Likewise. + * algebra/sregset.spad.pamphlet: Likewise. + * algebra/syssolp.spad.pamphlet: Likewise. + * algebra/zerodim.spad.pamphlet: Likewise. + * algebra/crfp.spad.pamphlet: Remove capsule-level declaration of + local variables. + * algebra/galfact.spad.pamphlet: Likewise. + * algebra/mathml.spad.pamphlet: Likewise. + * algebra/numode.spad.pamphlet: Likewise. + * algebra/tex.spad.pamphlet: Likewise. + * algebra/updecomp.spad.pamphlet: Likewise. + +2011-08-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compRepeatOrCollect): Set $loopKind directly. + (complainIfShadowing): Don't complain when collecting. + * algebra/contfrac.spad.pamphlet: Remove capsule-level declaration + of local variables. + * algebra/cycles.spad.pamphlet: Likewise. + * algebra/cyclotom.spad.pamphlet: Likewise. + * algebra/ddfact.spad.pamphlet: Likewise. + * algebra/fortpak.spad.pamphlet: Likewise. + * algebra/lingrob.spad.pamphlet: Likewise. + * algebra/numode.spad.pamphlet: Likewise. + * algebra/numquad.spad.pamphlet: Likewise. + * algebra/out.spad.pamphlet: Likewise. + * algebra/perman.spad.pamphlet: Likewise. + * algebra/view2D.spad.pamphlet: Likewise. + +2011-08-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/integer.spad.pamphlet (Integer): Remove attribute infinite. + +2011-08-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (instantiationArgs): New. + (domainDirectory): Likewise. + (domainLookupFunction): Likewise. + (domainOperatorTable): Likewise. + (domainAttributes): Likewise. + (domainPredicates): Likewise. + (domainData): Likewise. + * interp/buildom.boot: Use new domain accessors. + * interp/functor.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunfast.boot: Likewise. + +2011-08-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (shoeCompTran1): Translate extended vector-forms. + * interp/c-util.boot: Use vector instead of LIST2VEC. + * interp/define.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-special.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/slam.boot: Likewise. + +2011-08-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nrunfast.boot (newLookupInTable): Compare domain and + dollar as objects, not as value. + (newLookupInCategories): Remove deadcode. + (newExpandGoGetTypes): Remove as unused. + +2011-08-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (NRTgetLookupFunction): Handle the case where + the base domain is a parameter. + * interp/g-util.boot (formalVarNumber): New. + * lisp/core.lisp.in (readIntegerIfCan): Likewise. + +2011-08-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (extendsCategoryBasic): Handle attribute + third argument too. + +2011-08-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisp-backend.boot (expandBytevec2str): Use MAP instead of + COERCE. Eliminate second argument. + (expandStr2bytevec): Use MAP instead of COERCE. + * algebra/data.spad.pamphlet (ByteBuffer) [coerce]: Adjust call to + %bytevec2str. + +2011-08-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/float.spad.pamphlet (Float): Tidy. + * algebra/fortmac.spad.pamphlet (MachineInteger): Likewise. + * algebra/fspace.spad.pamphlet (FunctionSpace): Likewise. + * algebra/integer.spad.pamphlet (Integer): Likewise. + * algebra/mkfunc.spad.pamphlet (InputForm): Likewise. + * algebra/newpoly.spad.pamphlet (RecursivePolynomialCategory): + Likewise. + * input/knot.input.pamphlet: Likewise. + * input/knot2.input.pamphlet: Likewise. + * input/mult3d.input.pamphlet: Likewise. + * input/multKnot.input.pamphlet: Likewise. + * input/r21bugsbig.input.pamphlet: Likewise. + * input/tutchap2.input.pamphlet: Likewise. + +2011-08-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.in (oa_strap_0_sources): Don't include OM. + (axiom_algebra_layer_0): Don't include OM, OMCONN, OMDEV. + (axiom_algebra_layer_4): Don't include OMENC. + (axiom_algebra_layer_14): Don't include OMPKG. + (axiom_algebra_layer_19): Don't include OMERR, OMERRK. + (axiom_algebra_layer_20): Don't include OMEXPR. + * algebra/omcat.spad.pamphlet: Remove. + * algebra/omdev.spad.pamphlet: Remove. + * algebra/omerror.spad.pamphlet: Remove. + * algebra/omserver.spad.pamphlet: Remove. + * algebra/openmath.spad.pamphlet: Remove. + +2011-08-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/setvart.boot: Remoe OpenMath description. + * interp/setvars.boot (setOutputOpenMath): Remove. + (describeOutputOpenMath): Likewise. + * algebra/Makefile.in (axiom_algebra_layer_14): Don't include OMSERVER. + * algebra/float.spad.pamphlet (Float): Remove OpenMath exports. + * algebra/fraction.spad.pamphlet (Fraction): Likewise. + * algebra/gaussian.spad.pamphlet (Complex): Likewise. + * algebra/integer.spad.pamphlet (Integer): Likewise. + * algebra/list.spad.pamphlet (List): Likewise. + * algebra/sf.spad.pamphlet (DoubleFloat): Likewise. + * algebra/si.spad.pamphlet (SingleInteger): Likewise. + * algebra/string.spad.pamphlet (String): Likewise. + * algebra/symbol.spad.pamphlet (Symbol): Likewise. + +2011-08-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (NRTgetLookupFunction): Take an environment + argument. Adjust caller. + (NRTextendsCategory1): Likewise. + (extendsCategory): Likewise. + (extendsCategoryBasic): Likewise. + (catExtendsCat?): Likewise. + +2011-08-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (categoryHierarchy): New. + * interp/category.boot (mkCategory): Use it. + * interp/define.boot (NRTgetLookupFunction): Tidy. + (catExtendsCat?): Lose last argument. Adjust callers. + +2011-08-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (templateVal): Fold into expantTypeArgs. Remove. + +2011-08-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (extendsCategoryBasic0): Fold into + extendsCategoryBasic. Remove. + +2011-08-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Remove unused and antiquated tokens. + * interp/i-output.boot: Escape caret. + +2011-08-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (Boolean) [test]: Remove. + +2011-08-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfFlattenSeq): Rewrite. + (bfMKPROGN): Tidy. + +2011-08-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfSTEP): Synthetize artificial variable for + unnamed loop index. + +2011-07-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfIS1): Tidy test for cons cells. + +2011-07-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/functor.boot (CategoryPrint): Move from category.boot. + (DomainPrint1): Tidy. + (PacPrint): Likewise. + (DomainPrintSubst): Likewise. + +2011-07-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: copyString, copyTree, and copyVector are now + builtin library functions. + * interp/br-util.boot: Use copyVector instead of COPY-SEQ. + * interp/category.boot: Likewise. + * interp/define.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/newfort.boot: Likewise. + +2011-07-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot: Remove dead codes. + * interp/define.boot (hasFullSignature): Tidy. + +2011-07-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (categoryExports): New. + * interp/category.boot (mkCategory): Use it. + (DropImplementations): Tidy. + +2011-07-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * gui/debate.cc (start_interpreter): Do not forget core command + line options. Separate them from options to the base Lisp runtime + system. + +2011-07-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-util.boot ($charUnderscore): Move to br-search.boot + where it is used. + * interp/br-search.boot (pmPreparse): Tidy. + (mkGrepPattern1): Likewise. + (genSearch): Don't try to remove default operations; they have + already been left out by grepSplit. + (docSearch): Likewise. + * interp/br-con.boot (dbShowConsDoc1): Don't confusingly enclose a + straightline documentation in a list. + * interp/br-op1.boot (dbShowOpDocumentation): Remove redundant test. + * interp/br-op2.boot (kFormatSlotDomain): Call isConstructorName + only on identifiers. + * interp/br-saturn.boot (displayDomainOp): Tidy. + (bcConform1): Likewise. + +2011-07-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * gui/gui.pro.in [Mac OS X]: Don't build application bundle. + +2011-07-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * graph/view2D/process2d.c: Include "cfuns.h? before other local + headers. + * graph/view2D/control2d.c: Likewise. + * graph/view2D/main2d.c: Likewise. + * graph/view3D/process3d.c: Likewise. + * graph/view3D/main3d.c: Likewise. + * graph/view3D/surface3d.c: Likewise. + +2011-07-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/setvars.boot: Remove support for script formula. + * interp/setvart.boot: Likewise. + * interp/diagnostics.boot (sayBrightlyNT1): Move from macros.lisp. + (sayBrightly1): Likewise. + (sayBrightlyNT): Likewise. + (sayBrightly): Likewise. + (sayBrightlyI): Likewise. + (sayMSG): Likewise. + (sayTeX): Likewise. + (sayMSG2File): Likewise. + * interp/i-output.boot (formulaFormat): Remove. + (output): Adjust. + * interp/macros.lisp (sayMSGNT): Remove. + (sayFORTRAN): Likewise. + (sayFORMULA): Likewise. + ($formulaOutputstream): Likewise. + * interp/sys-globals.boot ($formulaOutputstream): Remove. + * interp/spad.lisp ($formulaFormat): Remove. + * algebra/exposed.lsp.pamphlet: Do not expose ScriptFormulaFormat + and ScriptFormulaFormat1. + * algebra/exposed.lsp.pamphlet: Remove. + +2011-07-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/int-top.boot (SpadInterpretStream): Remove binding of + $erMsgToss, as it is never assigned to. + (phIntReportMsgs): Adjust. + (phReportMsgs): Likewise. + * interp/msg.boot (showMsgPos?): Likewise. + (initImPr): Likewise. + +2011-07-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (PRINTEXP): Remove. + * interp/br-data.boot: Use writeString, writeChar, and writeLine. + * interp/c-util.boot: Likewise. + * interp/diagnostics.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/record.boot: Likewise. + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include + %writeString, %writeNewline, %writeLine. + * interp/lisp-backend.boot: Translate them. + +2011-07-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: flushOutput, writeNewline, writeString + are new builtin library functions. + * boot/utility.boot (finishLine): New exported function. + * interp/i-output.boot (formulaFormat): Use it. + (texFormat): Likewise. + (texFormat1): Likewise. + (mathmlFormat): Likewise. + (output): Remove case for TextWriter. + +2011-07-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/macros.lisp (sayALGEBRA): Remove as duplicate of sayMSG. + * interp/i-output.boot: Replace sayALGBEBRA with sayMSG. + * interp/msg.boot (ncHardError): Remove dead variable ergMsg. + (ncBug): Likewise. + +2011-07-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * gui/conversation.h (OutputTextArea): Now inherit from + QTextEditor, for the nth time. + (OutputTextArea::sizeHint): Declare as override. + * gui/conversation.cc (OutputTextArea::OutputTextArea): Make the + output text editor read only. Disallow vertical scroll bars. + (OutputTextArea::sizeHint): Give a tight estimate. + (OutputTextArea::add_paragraph): Tidy. + (OutputTextArea::add_text): Likewise. + (Exchange::reply_to_query): Toggle the mouse in busy state + after submitting query. + (Conversation::read_reply): Untoggle mouse' busy state if last + output text was read. + +2011-06-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * sman/sman.c (main): Don't start Hyperdoc if no X11 server is running. + +2011-06-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/modemap.boot: Cleanup inactive codes. + +2011-06-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/Makefile.in (libOpenAxiom_SOURCES): Include filesystem.cc + * include/open-axiom.h (Filesystem): New. + * gui/debate.cc (Debate::Debate): Initialize fs data member. + * gui/debate.h (Debate): Declare it. + +2011-06-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/storage.H (Memory::Arena): Extend. + (Memory::Factory): Add iterators. Make bidirectional. + +2011-06-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/sf.spad.pamphlet (DoubleFloat) [nan?]: New export. + * algebra/clip.spad.pamphlet (TwoDimensionalPlotClipping): Use it + instead of %fNan?. + * algebra/plot.spad.pamphlet (Plot): Likewise. + +2011-06-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * sman/Makefile.in (oa_OpenAxiom_ldflags): New. + (spadclient_LDADD): Use it. + (sman_LDADD): Likewise. + +2011-06-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * share/algebra/libaxiom.al: Remove. + * algebra/libdb.text: Likewise. + +2011-06-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * sman/sman.c (main): Don't start the graphics and no X11 server + is running. + +2011-06-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/command.cc (build_rts_options) [clozure_runtime]: Request + no read of initialization file instead of quiet mode. + (execute_core): Set arg[0] to the about-to-bed-executed program. + +2011-06-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/Makefile.in (open_axiom_LDADD): Use library archives for + linking, to prevent accidental use of dynamic libraries. + +2011-06-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-con.boot: Remove reference to asharp constructors. + * interp/br-op2.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/database.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/nrunfast.boot: Likewise. + +2011-06-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix ECL-based build failure. + * interp/sys-driver.boot (loadExposureGroupData): Use + getSystemModulePath to look up system modules. + +2011-06-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (shoeEVALANDFILEACTQ): Remove. + (bfMain): Don't use it. + (translateToplevelExpression): Likewise. + * interp/Makefile.in (stamp): $(AUTO) is no more. + (all-interpsys): Likewise. + +2011-06-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spaderror.lisp (trapNumericErrors): Fix typo. + +2011-06-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include FUNCALL. + ($simpleVMoperators): Include SPADCALL. + +2011-06-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-search.boot (dbReadLines): Don't include end-of-stream + marker. + +2011-06-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCond): Remove unreachable code. + (opt2bit): Tidy. + (opt2bool): Likewise. + * interp/bits.lisp (TRUTH-TO-BIT): Remove. + (BIT-TO-TRUTH): Likewise. + (BVEC-MAKE-FULL): Likewise. + (BVEC-ELT): Likewise. + (BVEC-SETELT): Likewise. + +2011-06-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.in (OBJS): Remove foam_l.$(FASLEXT), $(ASCOMP). + (ASCOMP, ASAUTO): Remove. + * interp/axext_l.lisp: Remove. + * interp/foam_l.lisp: Likewise. + * interp/ax.boot: Likewise. + * interp/as.boot: Likewise. + * interp/daase.lisp: Adjust. + * interp/i-syscmd.boot: Likewise. + +2011-06-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (MappingCategory): Take argument by value. + +2011-06-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot: Remove reference to $SingleFloat. + * interp/foam_l.lisp: Likewise. + * interp/fortcall.boot: Likewise. + * interp/sys-constants.boot: Likewise. + * lisp/core.lisp.in: Likewise. + +2011-06-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (%fNaN?): New. + * interp/spaderror.lisp (trapNumericErrors): Handle + ARITHMETIC-ERROR too. + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %fNaN?. + * algebra/clip.spad.pamphlet (TwoDimensionalPlotClipping): Use it. + * algebra/plot.spad.pamphlet (Plot): Likewise. + +2011-06-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spaderror.lisp ($numericFailure): Remove. + (trapNumericErrors): Define for non-GCL RTS. + Tidy GCL-based definition. + * algebra/draw.spad.pamphlet: trapNumericErrors now returns a + value of type Maybe T. + * algebra/plot.spad.pamphlet: Likewise. + * algebra/plot3d.spad.pamphlet: Likewise. + +2011-06-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.am (OA_GRAPHICS_TARGETS): Fix thinko. + +2011-06-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/storage.H (Memory::Storage::acquire): Remove. + (Memory::SinglyLinkedStorage::acquire): Likewise. + (Memory::DoublyLinkedStorage): New. + * utils/storage.cc (acquire_storage_with_header): Rename from + Storage::acquire. Make template. + (OneWayLinkHeader): Rename from SingleLinkHeader. + (TwoWayLinkHeader): New. + +2011-06-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/fnct_key.c (handle_function_key): Explicitly cast the + null pointer sentinel to a pointer type. + +2011-06-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * sman/sman.c: utils.h no longer exists. + +2011-06-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * scripts/document.in: Remove. + +2011-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * graph/view3D/header.h (swap): Remove. + +2011-06-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (%escapeSequenceAverseHost?): New. + * interp/msgdb.boot (brightPrint0): Use it. + +2011-06-05 Gabriel Dos Reis <gdr@ce.tamu.edu> + + * utils/command.cc (default_driver): New. + (preprocess_arguments): Use it. Honor --no-gui on Windows. + (OPENAXIOM_DEFAULT_DRIVER): Remove. + +2011-06-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/main.cc (upgrade_environment): Augment PATH for Windows + DLL search. + +2011-06-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/Makefile.in (open-axiom$(EXEEXT)): Link statically. + * boot/ast.boot: Remove debugging statement. + +2011-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (displayTextFile): New. + * interp/i-syscmd.boot (summary): Use it. + (copyright): Likewise. + * algebra/net.spad.pamphlet: Replace closeFile with closeStream. + * boot/translator.boot: Likewise. + * interp/as.boot: Likewise. + * interp/ax.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + +2011-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (readExpr): New. + * interp/as.boot: Replace READLINE with readLine. + * interp/br-data.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/cstream.boot: Likewise. + * interp/g-error.boot: Likewise. + * interp/ht-root.boot: Likewise. + * interp/htcheck.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/server.boot: Likewise. + * interp/topics.boot: Likewise. + * interp/compat.boot (READLINE): Remove. + * interp/sys-macros.lisp (shoeConsole): Remove. + (shoeInputFile): Likewise. + (shoeread-line): Likewise. + * boot/ast.boot (bfQ): %nothing only needs EQ. + * algebra/files.spad.pamphlet (File) [read!, readIfCan!]: Use + readExpr instead of VMREAD. Avoid PLACEP + (TextFile) [readLine!, readLineIfCan!]: Likewise. + +2011-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/intfile.boot: Remove. + +2011-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in: Define and export readLine and readbyte. + * interp/sys-utility.boot (readByteFromFile): Remove. + * boot/tokens.boot: Don't rename readLine and readByte. + * boot/includer.boot (shoeReadLine): Remove. + (bRgen1): Adjust. Use resdLine. + * algebra/net.spad.pamphlet (InputBinaryFile): Use readByte from + the runtime system. + +2011-05-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (shoeCompTran1): Translate arguments to vector + constructor too. + +2011-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/modemap.boot (augModemapsFromDomain): Don't add modemaps + for element types of Vector or List aggregates. + * algebrar/: Adjust algebras that depended on this behaviour. + +2011-05-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compConstructorCategory): Rewrite. + +2011-05-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/aggcat.spad.pamphlet (Aggregate) [more?,less?,size?]: + Move to StreamAggregate. + * algebra/array2.spad.pamphlet (TwoDimensionalArrayCategory): + Don't implement them. + * algebra/tree.spad.pamphlet (Tree): Likewise. + +2011-05-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-analy.boot (bottomUpForm0): Tidy. + * interp/i-eval.boot (evalForm): Likewise. + * interp/buildom.boot (formalRecordField): New. + (eltRecordFun): Use it. + (seteltRecordFun): New. + * interp/g-opt.boot (optSETRECORDELT): Remove. + (optRECORDCOPY): Likewise. + * interp/vmlisp.lisp (MAKE-VEC): Likewise. + +2011-05-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-eval.boot (evalForm): Adjust. + * interp/buildom.boot (mkRecordFun): New. + (eltRecordFun): Likewise. + (copyRecordFun): Likewise. + (mkRecordFunList): Use them. + * interp/g-opt.boot (optMkRecord): Remove. + (optRECORDELT): Likewise. + * interp/lisp-backend.boot: Translate %vcopy. + +2011-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (lookupInDomainVector): Establish a new + binding for $lookupDefaults. + +2011-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (mkEnumerationFunList): Include enum + constants in the operation list. + +2011-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (Enumeration): Provide implementation of + constants. + +2011-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot: Remove bindings of $GenVarCounter. + * boot/parser.boot (bpOutItem): Bind it here. + +2011-05-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (EnumerationCategory): Rewrite. + * interp/compiler.boot (compEnumCat): New. Compile + EnumerationCategory forms. + +2011-05-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfAtScope): New. + * boot/parser.boot (bpDo): Accept scoped expressions. + * boot/translator.boot: Cleanup. + +2011-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: "do" is now a keyword. + * boot/ast.boot (bfDo): New. + * boot/parser.boot (bpDo): New. + (bpReturn): Include do-expressions. + * interp/vmlisp.lisp (do): Remove. + +2011-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (shoeCompTran1): Don't indiscriminately walk CASE + forms. Translate %Namespace forms too. + * boot/parser.boot (bpApplication): Include Namespace too. + +2011-05-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpNamedScope): New. + (bpApplication): Call it. + +2011-05-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/utility.boot (charPosition): New. + * boot/scanner.boot (shoeAccumulateLines): Use it. + (shoeS): Likewise. + +2011-05-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/initial-env.lisp (MAKE-HASHTABLE): Remove. + (BEVC-MAKE-FULL): Likewise. + (MAKE-BVEC): Likewise. + * boot/tokens.boot (shoeKeyTableCons): Adjust. + (shoePunCons): Likewise. + (shoeDfu): Likewise. + (shoeXref): Likewise. + +2011-05-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/table.spad.pamphlet (HashTable): Use tableValue instead + of HGET. Use tableLength instead of HCOUNT. + +2011-05-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/initial-env.lisp (shoeOpenOutputFile): Remove. Adjust + callers to use outputTextFile. + +2011-05-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/initial-env.lisp (shoeOpenInputFile): Remove. Adjust + callers to use inputTextFile with try/finally. + +2011-05-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (idList?, charList?, stringLits?): New. + (bfMember): Use them for special cases. + * boot/parser.boot (bpDefinition): Stop support MDEF forms. + (bpMdef, bpMDefTail): Remove. + * boot/tokens.boot: "==>" is no longer a token. + +2011-05-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (categoryRef, domainRef, canonicalForm) + (instantiatorCtor, instantiatorArgs, categoryExports): New. + +2011-05-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpDefinition): Accept macro definition + starting with the keyword "MACRO". + * boot/translator.boot (exportNames): Export them in all + evaluation contexts. + * interp/c-util.boot: "macro" is now a keyword. + * interp/define.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/postpar.boot: Likewise. + +2011-05-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/macros.lisp (WI, tryLine, embrace indentNB, tryBreak) + (tryBreakNB, MARKHASH): Remove. + * interp/spad.lisp (NEWNAMTRANS): Likewise. + * interp/sys-macros.lisp: Remove more Lispy junk. + +2011-05-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/utility.boot (applySubstNQ): New. + * interp/compiler.boot (finishLambdaExpression): Use it. + * interp/i-intern.boot (mkAtreeExpandMacros): Likewise. + * interp/i-map.boot (addMap): Likewise. + * interp/vmlisp.lisp (SUBLISNQ, SUBANQ, SUBB): Remove. + +2011-05-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (EQSUBSTLIST): Remove. + * interp/c-util.boot (eqSubstAndCopy, eqSubst): Likewise. Adjust + callers. + +2011-04-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot: Replace use of EQSUBSTLIST with applySubst. + * interp/c-util.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/define.boot: Likewise. + * interp/format.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/hashcode.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/rulesets.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/sys-macros.lisp (APPLYR, TAILFN, TAIL, rplac): Remove as + unused. + +2011-04-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Don't rename append. + * boot/parser.boot (bpTyping): Support universally quantified types. + * boot/ast.boot: Rewrite APPEND as append. + (%Forall): New AST node. + * boot/translator.boot: Translate it. + +2011-04-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfAppend): Write in full. + * interp/ptrees.boot (pfAppend): Likewise. + +2011-04-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (NREMOVE): Remove. + (EFFACE): Likewise. + * interp/sys-utility.boot (remove!): New. + +2011-04-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (remove): Remove. + (REMOVEQ, NREMOVEQ): Likewise. + * boot/utility.boot (removeSymbol, removeScalar, removeValue) + (remove): New. + * boot/ast.boot (bfMDef): Use applySubst in lieu of SUBLIS. + +2011-04-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/utility.boot (assocSymbol): New. + (applySubst): Likewise. Export. + * boot/ast.boot: Use it. Remove SUBLIS and SUBLISLIS. + * interp/ax.boot: Likewise. + * interp/br-con.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-op2.boot: Likewise. + * interp/br-prof.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/buildom.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/compiler.boot: Likewise. + +2011-04-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cattable.boot (hasCat): Add type. Accept only + instantiation forms. + (simpHasPred): Adjust call to hasCat. + * interp/i-funsel.boot (hasCaty): Likewise. + +2011-04-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfReduceCollect): Delegate to bfDoCollect if + op is append or append!. + +2011-04-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfCollect): Use bfDoCollect. + (bfListReduce): Remove. + +2011-04-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfMakeCollectInsn): Fix thinko. + +2011-04-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-util.boot (dbInfovec): Move to c-util.boot + +2011-04-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (inAllContexts): New. + (translateToplevel): Use it. + * boot/parser.boot (bpImport): Accept namespace import. + +2011-04-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/initial-env.lisp (MEMQ): Remove. + * boot/ast.boot (shoeATOMs): Don't use it. + (isDynamicVariable): Likewise. + (shoeCompTran1): Likewise. + * boot/translator.boot (defuse1): Likewise. + +2011-04-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfMakeCollectInsn): New. + (bfDoCollect): Tidy. + +2011-04-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfDoCollect): New. Implement one-pass + list comprehension. + (bfListReduce): Use it. + +2011-04-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bf0APPEND): Remove. + (bf0COLLECT): Likewise. + (bfCollect): Tidy. + +2011-04-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in: Export basic types and compiler data types. + * interp/modemap.boot (knownInfo): Fix latent bug uncovered by + type declarations. + * boot/ast.boot: Remove type definitions. + (bfIN): Handle DOT as loop variable. + (bfON): Likewise. Allow a loop variable to iterator over its own + tails. + * boot/parser.boot (bfTyping): Simplify. + (bpSimpleMapping): Fix thinko. + +2011-04-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Don't translate setDifference. + * boot/initial-env.lisp (SETDIFFERNECE): Remove. + * boot/translator.boot (evalBootFile): Rename form EVAL-BOOT-FILE. + * boot/utility.boot (setDifference): Define. + * interp/unlisp.lisp (ListMemberQ?): Remove. + (ListRemoveQ): Likewise. + (AlistAssocQ): Likewise. + +2011-04-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/utility.boot (copyList): Define. + (append!): Likewise. + * boot/tokens.boot: Do not translate nconc. + +2011-04-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Don't translate lastNode anymore. + * boot/utility.boot (lastNode): Define. + +2011-04-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/utility.boot (objectMember?): Don't rely non tail recursion + removal. + (reverse): Define. + * boot/tokens.boot: Don't rename reverse anymore. + * boot/ast.boot: Generate reverse forms instead of REVERSE. + +2011-04-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Don't rename nreverse. + * boot/utility.boot (reverse!): Define. + * boot/parser.boot: Use reverse! instead of NREVERSE. + * boot/ast.boot: Generate reverse! forms instead of NREVERSE. + +2011-04-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (substitute): Define. + (substitute!): Likewise. + * boot/utility.boot: Do not rely on tail recursion removal. + * boot/tokens.boot: Don't translate substitute and substitute!. + * boot/ast.boot (bfLp1): Tidy. + +2011-04-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: charUpcase, charDowncase, stringUpcase, + singDowncase, valueEq? are new builtin functions. + * boot/ast.boot (bfMembr): Tidy. + +2011-04-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/newfort.boot: Likewise. + * interp/define.boot (orderBySubsumption): Fix thinko. + * interp/boot-pkg.lisp: Use BOOTTRAN package. Don't import names + individually. + * boot/utility.boot: New. + * boot/translator.boot (exportNames): Fix thinko. + * boot/tokens.boot: Add charEq? and scalarEq? builtiin functions. + * boot/ast.boot (bfMember): Generate call to symbolMember? for + membership tests for symbols. + +2011-04-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (%Module): Now take three arguments. + * boot/parser.boot (bpModuleInterface): Rename from bpExports. + (bpModuleExports): New. + (bpModule): Now allow specification of exported names. + +2011-04-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Translate maxIndex to MAXINDEX. + +2011-04-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot (shoeIdChar): Accept "!" too. + +2011-04-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/msgdb.boot: Use stringChar more often. + +2011-04-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in: Include SB-SPROF when profiling SBCL-based build. + +2011-04-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (compileLispFile): Tell ECL that the linker is + a C++ compiler. + +2011-03-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/op.spad.pamphlet (BasicOperator) [display]: Now return a + Maybe (List O -> O) value. + [input]: Now return a Maybe(List SEX -> SEX). + * algebra/kl.spad.pamphlet (Kernel): Adjust. + * algebra/pattern.spad.pamphlet (Pattern): Likewise. + +2011-03-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include + %bytevec2str and %str2bytevec opcode. + * interp/lisp-backend.boot: Expand them. + * algebra/data.spad.pamphlet (ByteBuffer): Tidy. + +2011-03-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (FC): Remove. + (FBO): Likewise. + (FEV): Likewise. + (shoeGeneralFC): Likewise. + (shoeFindName): Likewise. + (shoeFindName2): Likewise. + (shoeTransform2): Likewise. + * boot/scanner.boot (shoeLineToks): Don't support `)package' line + anymore. + * boot/includer.boot: Remove support for `)package', `)include', + `)includelisp', `)includelines' lines. + (shorPackageStartsAt): Remove. + (shorFindLines): Likewise. + (shoeFileInput): Likewise. + (shoeLispFileInput): Likewise. + (shoeLineFileInput): Likewise. + (shoeFunctionFileInput): Likewise. + (shoePlainLine?): Reflect removal. + (shoeSimpleLine): Likewise. + * boot/tokens.boot (charByName): New builtin library function. + * algebra/sf.spad.pamphlet (RealNumberSystem): Don't re-export + abs. It is already exported by OrderedRing. + +2011-03-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/sexpr.H: Support more specialized s-expressions. + * utils/sexpr.cc: Likewise. + +2011-03-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/storage.H: Rework. + * utils/storage.cc: Likewise. + +2011-03-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-syscmd.boot (compileSpad2Cmd): Remove experimental + support for Spad to Aldor translation. + (convertSpasToAsFile): Remove. + * interp/mark.boot: Remove. + * interp/nspadux.lisp: Likewise. + * interp/pspad1.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + * interp/spad.lisp: Don't register removed formatters. + * interp/util.lisp: (TRANSLATE-FUNCTIONS): Remove. + (BUILD-INTERPSYS): Now take only one argument. + * src/share/doc/msgs/s2-us.msgs: Remove diagnostic S2IZ0085. + * interp/Makefile.in: Remove rules for building wi1.boot, + wi2.boot, mark.boot, pspad1.boot pspad2.boot. + +2011-03-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * src/algebra/: Systematically use not zero? when comparing for + equality with 0. + +2011-03-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * src/algebra/: Systematically use not one? when comparing for + equality with 1. + +2011-03-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * src/algebra/: Systematically use negative? when comparing for + equality with 0. + +2011-03-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * src/algebra/: Systematically use negative? when comparing for + greater than 0. + +2011-03-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * src/algebra/: Systematically use negative? when comparing for + less than 0. + +2011-03-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/si.spad.pamphlet (IntegerNumberSystem) [positive?]: + Remove definition. + (SingleInteger): Simplify implementation of random. + * algebra/sf.spad.pamphlet (DoubleFloat): Likewise. + [positive?]: Define. + * algebra/integer.spad.pamphlet (Integer): Tidy. + +2011-03-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (OrderedAbelianGroup): Export + negative?, abs, sign, with default implementations. + (OrderedAbelianMonoid): Export positive?, with default. + (OrderedRing): Don't export them. + +2011-03-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (CharacteristicNonZero) + [charthRoot]: Now return Maybe %. + (PolynomialFactorizationExplicit) [charthRoot]: Likewise. + * algebra/ffcat.spad.pamphlet (FiniteAlgebraicExtensionField): + Propagate change. + * algebra/fraction.spad.pamphlet (Fraction) [charthRoot]: Likewise. + * algebra/poly.spad.pamphlet (UnivariatePolynomialSquareFree): + Likewise. + * algebra/polycat.spad.pamphlet (PolynomialCategory): Likewise. + +2011-03-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (equalFormTemplate): Tidy comparison of value + argument to constructors. + +2011-03-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (mutateArgumentList): New. + (inlineDirectCall): Break out of replaceSimpleFunctions. + (resolveIndirectCall): Break out of foldSpadcall. + (replaceSimpleFunctions): Use them. + (foldSpadcall): Remove. + (usesVariablesLinearly?): Tidy. + (foldExportedFunctionReferences): Don't call foldSpadcall. + +2011-03-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (resolveConstantForm): New. Split out of + replaceSimpleFunctions. + (foldSpadcall): Use it too. + +2011-03-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (StepThrough) [nextItem]: Now + return Maybe %. + * algebra/ffcat.spad.pamphlet: Propagate change. + * algebra/fmod.spad.pamphlet: Likewise. + * algebra/fraction.spad.pamphlet: Likewise. + * algebra/integer.spad.pamphlet: Likewise. + * algebra/pfbr.spad.pamphlet: Likewise. + * algebra/polycat.spad.pamphlet: Likewise. + * algebra/si.spad.pamphlet: Likewise. + +2011-03-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (EuclideanDomain) + [expressIdealMember]: Now returns Maybe List %. + * algebra/Makefile.in: Tidy. + (axiom_algebra_bootstrap_last_layer): Remove. + +2011-03-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot: %pair, %list, %vector, %bitvector are now + considered side-effect free functions. + * algebra/boolean.spad.pamphlet: Reflect change. + * algebra/Makefile.in (oa_strap_0_sources): Include MAYBE. + +2011-03-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (semiSimpleRelativeTo?): Consider conditionals. + +2011-03-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (SemiRing): New category. + +2011-03-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (getSystemModulePath): Use + systemAlgebraDirectory. + * interp/database.boot (pathToDatabase): Use systemDatabaseDirectory. + * algebra/integer.spad.pamphlet (Integer) [latex]: Tidy. + * algebra/string.spad.pamphlet (Character) [latex]: Likewise. + * algebra/Makefile.in: Rework bootstrapping set up. + (COMPILE_LISP): Remove. + (axiom_algebra_layer_strap): Likewise. + (axiom_algebra_layer_strap_objects): Likewise. + (axiom_algebra_bootstrap): Likewise. + (oa_strap_0_fasls): New. + (oa_strap_1_fasls): Likewise. + (oa_strap_2_fasls): Likewise. + (oa_strap_0_sources): Likewise. + (oa_strap_1_sources): Likewise. + (oa_strap_2_sources): Likewise. + * src/algerab/strap: Remove. + +2011-03-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/si.spad.pamphlet (SingleInteger): Logic is indirectly + included through BooleanLogic. + +2011-03-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-eval.boot (mkEvalable): Simplify. + (mkEvalableMapping): Remove. + (mkEvalableRecord): Likewise. + (mkEvalableUnion): Likewise. + +2011-03-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %c2s. + * interp/lisp-backend.boot: Translate it. + * algebra/integer.spad.pamphlet (Integer) [convert]: Tidy. + [latex]: Likewise. + * algebra/string.spad.pamphlet (Character)[latex]: Likewise. + +2011-03-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/as.boot: Use getConstructorAbbreviationFromDB. + * interp/br-con.boot: Likewise. + * interp/br-data.boot: Likewise. + * interp/br-prof.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/clammed.boot: Likewise. + * interp/database.boot: Likewise. + * interp/define.boot: Likewise. + * interp/format.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-cndata.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/pspad1.boot: Likewise. + +2011-03-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nrunopt.boot: Move content to define.boot, interop.boot, + lisplib.boot, nruncomp.boot, showimp.boot. Delete. + +2011-03-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nrungo.boot: Move content to buildom.boot, i-map.boot, + i-special.boot, nrunfast.boot. Delete. + +2011-03-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-eval.boot (mkEvalable): Exit early on niladic constructors. + * interp/define.boot (compDefineFunctor1): If bootstrapping, mark + functor as incomplete. + * interp/c-util.boot (lookupDefiningFunction): Don't look into + incomplete domains. + +2011-02-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/info.boot: Move content to modemap.boot. Delete. + +2011-02-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-code.boot: Move content to i-coerce.boot. Delete. + +2011-02-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (PropositionalFormula): + Implement true and false. Fix thinko in notFormula. + +2011-02-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-analy.boot (elaborateTree): New. + * interp/i-special.boot (bottomUpProposition): Likewise. + (upand): Use it to handle propositional formula. + (upor): Likewise. + +2011-02-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-analy.boot (bottomUpWithArgModesets): Split out of + bottomUp. + (bottomUp): Call it. + +2011-02-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.in (OBJS): Remove i-spec1.$(FASLEXT) and + i-spec2.$(FASLEXT). Add i-special.$(FASLEXT). + * interp/i-spec1.boot, interp/i-spec2.boot: Move content to + i-special.boot. Remove. + +2011-02-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/outform.spad.pamphlet (OutputForm) [infix?]: Rewrite. + +2011-02-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCond): Recognize conjunction and + disjunction forms. + +2011-02-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (optDeltaEntry): Don't SPADCALL the + constant producing function. + * interp/c-util.boot (getFunctionReplacement): Use + comptileTimeBindingOf. + (lookupDefiningFunction): Tidy. + * interp/g-opt.boot (compileTimeBindingOf): Move to c-util.boot. + +2011-02-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (canInlineVarDefinition): Observe order of + evaluation. + +2011-02-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optNot): Push %not inside conditionals. + (optCond): Remove ineffectual transformation. + +2011-02-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parse.boot (parseLessEqual): Remove. + +2011-02-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/fmod.spad.pamphlet (IntegerMod): Simplify implementation. + +2011-02-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: makeSymbol is not a builtin function. + * boot/ast.boot: Use makeSymbol in place of INTERN. + * boot/parser.boot: Likewise. + * boot/scanner.boot: Likewise. + * boot/translator.boot: Likewise. + * interp/alql.boot: Likewise. + * interp/as.boot: Likewise. + * interp/ax.boot: Likewise. + * interp/bc-matrix.boot: Likewise. + * interp/bc-solve.boot: Likewise. + * interp/br-con.boot: Likewise. + * interp/br-data.boot: Likewise. + * interp/br-op2.boot: Likewise. + * interp/br-prof.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/define.boot: Likewise. + * interp/format.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/postpar.boot: Likewise. + * interp/pf2sex.boot: Likewise. + * interp/parse.boot: Likewise. + * interp/packtran.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/intfile.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/incl.boot: Likewise. + * interp/word.boot: Likewise. + * interp/wi2.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/topics.boot: Likewise. + * interp/sys-constants.boot: Likewise. + * interp/showimp.boot: Likewise. + * interp/scan.boot: Likewise. + +2011-02-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-macros.lisp (shellEntry): New. + * interp/g-util.boot (setShellEntry): Remove. + * interp/compiler.boot: Use %store to %tref forms instead of + setHSellEntry. + * interp/define.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/showimp.boot: Likewise. + * interp/c-util.boot (isSimple): Tidy. + (isSideEffectFree): Likewise. + (updateCapsuleDirectory): Likewise. + +2011-02-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (isSimple): Accept constructor instantiations. + * algebra/formula.spad.pamphlet: Avoid Lispisms. + * algebra/mathml.spad.pamphlet: Likewise. + * algebra/op.spad.pamphlet: Likewise. + * algebra/sex.spad.pamphlet: Likewise. + +2011-02-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: mmSource is a new selector for modemap datatype. + * interp/wi1.boot: Likewise. + * interp/br-data.boot: Various cleanups. + * interp/c-util.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/guess.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/topics.boot: Likewise. + +2011-02-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCond): Recognize conjunctive guard as + nested conditionals. + +2011-02-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parse.boot (transSeq): Aggregate branches of toplevel + conditionals so that implications propagate down the pipe. + +2011-02-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (coerceExtraHard): Explicitly fail if + autoCoerceByModemap fails. + +2011-02-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (getUnionMode): Remove. + (isUnionMode): Move to c-util.boot. + (coerceExtraHard): Rework. + (belongsTo?): Remove. + * interp/c-util.boot (isUnionMode): Moved from compiler.boot. + (unionLike?): New. + (unionProperty): Likewise. + (getInverseEnvironment): Use unionProperty instead of getUnionMode. + +2011-02-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (getSuccessEnvironment): Follow through + temporaries designating result of assignment. + (getInverseEnvironment): Likewise. + +2011-02-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (mkNewUnionFunList): Align arity of + 'case' implementation to declared signature. + (mkUnionFunList): Likewise. + * interp/compiler.boot (compCase1): 'case' is now unconditionally + binary. + * interp/g-opt.boot (optCond): Fix thinko. + +2011-02-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCond): Get rid of double negatives when + possible. + * interp/g-util.boot (assumeProperty): Remove. + (flattenVMForm): Likewise. + (mkVMForm): Likewise. + +2011-02-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compCons1): Use coerce not convert. + (setqSingle): Likewise. + (setqMultiple): Likewise. + (compConstruct): Likewise. + (compQuote): Likewise. + (compElt): Likewise. + (compSignatureImport): Likewise. + (compComma): Likewise. + +2011-02-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compExpressionList): Remove. + (compForm1): Don't call it. + +2011-02-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (changeVariableDefinitionToStore): Tidy. + +2011-02-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (dependentVars): New. + (canInlineVarDefinition): Use it to safely inline vardefs. + +2011-02-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (canReturn): Don't check for LET*. + * interp/g-opt.boot (optLET*): Remove as we now generate only + %bind forms. + +2011-02-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %funcall + and %nothing. + * algebra/mkfunc.spad.pamphlet: Use %funcall instead of FUNCALL. + +2011-02-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (VEC-SETELT): Remove. + * interp/scan.boot (scanInserts): Use vectorRef. + * interp/functor.boot (DescendCode): Don't check for SETELT or + QSETREFV forms. + * interp/nrunfast.boot (evalSlotDomain): Likewise. + +2011-02-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($evalDomain): Remove. + * interp/nrungo.boot (NRTevalDomain): Likewise. Fix callers to call + evalDomain. + * interp/i-eval.boot (evalDomain): Don't check for $evalDomain + anymore. Handle assignment to domain object forms. + +2011-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add MappingCategory as a (builtin) category. + * interp/sys-constants.boot ($CategoryNames): Include MappingCategory. + * interp/g-cndata.boot (unabbrevSpecialForms): Handle + MappingCategory, RecordCategory, and UnionCategory. + * interp/buildom.boot (MappingCategory): New. + * interp/compiler.boot: Elaboration MappingCategory forms. + * interp/g-error.boot (needsToSplitMessage): Fix thinko from + type-based dispatch done by the Boot translator. + * interp/nrunfast.boot (builtinConstructor?): New. + (generalizedBuiltinConstructor?): Likewise. + (lazyMatch): Use them. + (newHasTest): Properly recognize all flavours of category forms. + +2011-02-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-constants.boot ($PrimitiveDomainNames): Remove. + * interp/category.boot (mkCategory): Drop test for primitive + domains. + +2011-02-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (mkCategory): Don't single out List + instantiations in determining NewLocals. + +2011-02-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot(categoryObject?): Rename from isCategory. + * interp/c-util.boot: Adjust use. + * interp/functor.boot: Likewise. + * interp/modemap.boot: Likewise. + +2011-02-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot: Don't cache instantiation of builtin + domains, as the comment at the top of the file says. + +2011-02-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisp-backend.boot: Translate %ident? to IDENTP, not SYMBOLP. + * interp/compiler.boot (compMatch): test for identifier, not + atomic value. + * algebra/syntax.spad.pamphlet (Syntax): Tidy. + +2011-02-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: arrayRef is now a builtin function. + +2011-02-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/ituple.spad.pamphlet (InfiniteTuple): Use Stream S as + representation, not extended domain (default search does not + work for the non-extending categories.) + +2011-02-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (groupVariableDefinitions): Look into clauses + of conditional too. + +2011-02-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (matchingEXIT): New. + (simplifySEQ): Use it. + +2011-02-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %fmanexp. + (sideEffectFree?): New. + (varIsAssigned): Tidy. + (canInlineVarDefinition): Likewise. + * interp/boot-pkg.lisp (gensym?): New. + * interp/c-util.boot ($NonExpandableOperators): New. + (expandableDefinition?): Use it. + * algebra/sf.spad.pamphlet (DoubleFloat): Use %fmanexp. + +2011-02-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include inverse + hyperbolic functions. + * interp/lisp-backend.boot: Expand them. + * algebra/sf.spad.pamphlet: Use them. + +2011-02-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Remove CGREATERP + and GGREATERP. Add VM-level complex number operators. + * interp/lisp-backend.boot: Expand them. + * algebra/gaussian.spad.pamphlet (ComplexCategory): Use VM form + instead of Lisp level forms. + * algebra/pfr.spad.pamphlet (PartialFraction): Likewise. + * algebra/si.spad.pamphlet (SingleInteger): Likewise. + * algebra/symbol.spad.pamphlet (Symbol): Likewise. + +2011-02-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Remove more Lisp + level operators. Include %property and %bitveclt. + * interp/lisp-backend.boot: Expand them. + * algebra/si.spad.pamphlet (SingleInteger): Tidy. Use %ismall?. + * algebra/domain.spad.pamphlet (DomainConstructo): Use %property. + * algebra/outform.spad.pamphlet (OutputForm): Likewise. + * algebra/boolean.spad.pamphlet (IndexedBits): Use %bitveclt. + +2011-02-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (mutateConditionalFormWithUnaryFunction): + Rename from mutateCONDFormWithUnaryFunction. Update callers + (mutateBindingFormWithUnaryFunction): Rename from + mutateLETFormWithUnaryFunction. Allow %bind form too. + Update callers. + +2011-02-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/stream.spad.pamphlet (Stream): Remove bogus assignment + to Rep. Rework local function definitions. + +2011-02-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Replace COND with %when throught. + Use %otherwise instead of %true where appropriate. + * interp/define.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/i-code.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/info.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + * interp/compiler.boot (canReturn): Don't test for COND anymore. + +2011-02-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/slam.boot (reportFunctionCompilation): Use %otherwise, + not %true for default cases. + (reportFunctionCacheAll): Likewise. + (compileRecurrenceRelation): Likewise. + * interp/lisp-backend.boot (expandTry): Tidy. + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %otherwise. + * interp/compiler.boot (compAlternativeGuard): Emit %otherwise + form, not Lisp level T form. + * interp/clam.boot (compClam): Tidy. + (compHash): Likewise. + (compHashGlobal): Likewise. + +2011-02-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (finishLambdaExpression): Tidy. Don't + generate Lisp code directly. + (canReturn): Don't look into CLOSEDFN forms. + +2011-02-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/clam.boot: Tidy. + * interp/slam.boot: Likewise. + +2011-02-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisp-backend.boot: New file. Consolidate Common Lisp + backend module. + * interp/Makefile.in (OBJS): Include it. + (lisp-backend.$(FASLEXT)): New rule. + +2011-02-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/files.spad.pamphlet (Library): Remove assignment to Rep. + * algebra/lie.spad.pamphlet (AssociatedLieAlgebra): Likewise. + (AssociatedJordanAlgebra): Likewise. + (LieSquareMatrix): Likewise. + +2011-02-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nrunopt.boot (NRTgetLookupFunction): Explain reason for + non-extension. + +2011-02-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compList): Use %nil form, not NIL. + +2011-01-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCallSpecially): Remove. + (optSpeciallCall): Likeise. + (optCall): Adjust. + (optCallEval): Move to wi2.boot, sole user. + +2011-01-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optQSMINUS): Remove. + * algebra/data.spad.pamphlet: Tidy. + * algebra/plot.spad.pamphlet: Likewise. + * algebra/plot3d.spad.pamphlet: Likewise. + * algebra/si.spad.pamphlet: Likewise. + * algebra/syntax.spad.pamphlet: Likewise. + * algebra/list.spad.pamphlet: Remove use of NULL$Lisp. + +2011-01-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Remove QCDR, + QCAR. SYMBOLP, GREATERP. + Add %ibit, %ilength, %ident, %equal. + * interp/g-util.boot: Expand them + * algebra/any.spad.pamphlet: Tidy. + * algebra/catdef.spad.pamphlet: Likewise. + * algebra/data.spad.pamphlet: Likewise. + * algebra/domain.spad.pamphlet: Likewise. + * algebra/float.spad.pamphlet: Likewise. + * algebra/fname.spad.pamphlet: Likewise. + * algebra/integer.spad.pamphlet: Likewise. + * algebra/list.spad.pamphlet: Likewise. + * algebra/outform.spad.pamphlet: Likewise. + * algebra/random.spad.pamphlet: Likewise. + * algebra/sex.spad.pamphlet: Likewise. + * algebra/si.spad.pamphlet: Likewise. + * algebra/symbol.spad.pamphlet: Likewise. + * algebra/syntax.spad.pamphlet: Likewise. + +2011-01-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp: Remove QREFELT, QSDEC1, QSETREFV, QSETVELT, + QSETVELT-1, QSINC1, QVELT, QVELT-1. + * algebra/si.spad.pamphlet: Use %iinc and %idec forms. + +2011-01-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (NRTputInHead): Tidy. + +2011-01-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (expandListlit): Tidy. + +2011-01-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compForm1): Use %listlit form. + (compExpressionList): Likewise. + (compCons1): Likewise. + (compList): Likewise. + (compVector): Likewise. + * interp/g-timer.boot (timedEvaluate): Likewise. + * interp/wi1.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/i-object.boot: Likewise. + * interp/g-opt.boot (optMkRecord): Likewise. + (optRECORDCOPY): Likewise. + (optLIST): Remove. + (optListlit): New. + * interp/g-util.boot (optListlit): New. Expand %listlit forms. + +2011-01-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optMkRecord): Generate %makepair forms. + ($VMsideEffectFreeOperators): Include %listlit and %veclit. + * interp/g-util.boot: Translate them. + +2011-01-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/array1.spad.pamphlet: Use %aref instead of %vref. + * interp/g-opt.boot (optSETRECORDELT): Tidy code generation. + (optRECORDCOPY): Likewise. + (optRECORDELT): Likewise. + ($VMsideEffectFreeOperators): Include %aref. Translate. + +2011-01-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (FIXP): Remove. + * interp/alql.boot: Use integer? instead of FIXP. + * interp/br-con.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/fnewmeta.lisp: Likewise. + * interp/ht-root.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-toplev.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/showimp.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/topics.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + * interp/word.boot: Likewise. + +2011-01-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot: Expand new bit vector operators. + * interp/g-opt.boot (opt2bit): New. + (opt2bool): Likewise. + * interp/bits.lisp (BVEC-SIZE): Remove. + (BVEC-COPY): Likewise. + (BVEC-CONCAT): Likewise. + (BVEC-EQUAL): Likewise. + (BVEC-AND): Likewise. + (BVEC-OR): Likewise. + (BVEC-XOR): Likewise. + (BVEC-NAND): Likewise. + (BVEC-NOR): Likewise. + (BVEC-NOT): Likewise. + * algebra/boolean.spad.pamphlet (IndexedBits): Remove uses of + Lisp-level functions. + +2011-01-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nrunfast.boot (evalSlotDomain): Expand to VM forms before + value argument evaluation. + (lazyMatch): Check for %llength too. + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %2bit + and %2bool. + * interp/g-util.boot: Expand them. + * interp/define.boot (compJoin): Check for %llenght too. + * algebra/boolean.spad.pamphlet: Tidy. + * algebra/domain.spad.pamphlet: Likewise. + * algebra/draw.spad.pamphlet: Likewise. + * algebra/files.spad.pamphlet: Likewise. + * algebra/list.spad.pamphlet: Likewise. + * algebra/outform.spad.pamphlet: Likewise. + * algebra/sex.spad.pamphlet: Likewise. + * algebra/sf.spad.pamphlet: Likewise. + +2010-12-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %cup and + %cdown. + * interp/g-util.boot: Expand them. + * interp/vmlisp.lisp (QESET): Remove. + * algebra/string.spad.pamphlet (String): Don't use QESET. + +2010-12-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include new + builtin functions %strlt, %streq, %strcopy, and %strconc. + * interp/g-util.boot: Expand them. + * algebra/string.spad.pamphlet (String): Remove uses of + Lisp-level functions CHAR, EQUAL, CHAR=, ans SXHASH. + +2010-12-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (QSTRING): Remove. + (QSTRINGLENGTH): Likewise. + (STRINGLENGTH): Likewise. + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %i2s. + * interp/g-util.boot: Expand it. + * interp/debug.lisp (/LOCATE): Replace STRINGLENGTH with LENGTH. + * algebra/fortran.spad.pamphlet: Don't use STRINGIMAGE from Lisp. + * algebra/generic.spad.pamphlet: Likewise. + * algebra/naalg.spad.pamphlet: Likewise. + * algebra/naalgc.spad.pamphlet: Likewise. + * algebra/outform.spad.pamphlet: Likewise. + * algebra/string.spad.pamphlet: Likewise. + +2010-12-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %strlength. + * interp/g-util.boot: Expand it. + * algebra/string.spad.pamphlet (String): Remove use of QCSIZE. + +2010-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/initial-env.lisp (IDENTP): Remove. + * boot/ast.boot: Replace IDENTP with symbol? where appropriate. + * boot/parser.boot: Likewise. + * boot/translator.boot: Likewise. + +2010-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/includer.boot (char): Move to token.boot. + * boot/tokens.boot (shoeStartsId): Move from initial-env.lisp + (shoeIdChar): Likewise. + * boot/initial-env.lisp (CHARMEM): Remove. + +2010-12-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/files.spad.pamphlet (KeyedAccessFile): Use try/finally + instead of Lisp-level UNWIND-PROTECT. + +2010-12-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (VECP): Remove. + (REFVECP): Likewise. + (CVECP): Likewise. + (QMEMQ): Likewise. + * interp/bootlex.lisp (TRANSLABEL1): Adjust. + * interp/br-search.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/category.boot: Likewise. + * interp/database.boot: Likewise. + * interp/debug.lisp: Likewise. + * interp/format.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-cndata.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/ggreater.lisp: Likewise. + * interp/guess.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/union.lisp: Likewise. + * interp/trace.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/pathname.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/msg.boot: Likewise. + * interp/match.boot: Likewise. + * interp/word.boot: Likewise. + +2010-12-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (BOOTTOCL): Replace Lisp-level contruct + with try/finally. + (BOOTTOCLC): Likewise. + +2010-12-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/initial-env.lisp (SIZE): Remove. + (MAKE-VEC): Likewise. + (MAKE-CVEC): Likewise. + +2010-12-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/initial-env.lisp (VEC-SETELT): Remove. + * boot/scanner.boot (shoeIntValue): Tidy. + (shoeSubString): Likewise. + * boot/tokens.boot (shoeInsert): Likewise. + (shoeDictCons): Likewise. + +2010-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/format.boot (form2String1): Handle string literals + masquerading as constructors. + +2010-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/format.boot: More fixes for confusion between strings and + symbols. + +2010-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/format.boot (formDecl2String): Tidy. + * interp/i-toplev.boot (printTypeAndTimeNormal): Likewise. + * interp/msgdb.boot (applyPrefix2String): Likewise. + +2010-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/msgdb.boot (applyPrefix2String): New. + (substituteSegmentedMsg): Use to implement documented behaviour + of formatting code P. + * interp/i-analy.boot (printableArgModeSetList): Don't call + prefix2String here. + (bottomUpForm0): Likewise. + +2010-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: symbolName is now a builtin function. + * interp/sys-utility.boot (stringImage): New. + * interp/format.boot (form2String1): Use it. Tidy. + +2010-12-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: canonicalFilename is now a builtin function. + * interp/sys-driver.boot (executeSpadScript): Announce input file. + +2010-12-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfQ): Emit STRING= for string comparison. + * interp/i-output.boot: Fix type violation in equality comparison. + +2010-12-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfIS1): Tidy. + +2010-12-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-syscmd.boot: Use try-finally expression instead of Lisp + primitive UNWIND-PROJECT. + * interp/int-top.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/server.boot: Likewise. + * boot/parser.boot (bpHandler): Allow semicolon separation. + +2010-12-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: `finally' is now a keyword. + * boot/parser.boot (bpMissing): Use a BootParserException exception. + (bpTrap): Likewise. + (bpListAndRecover): Catch them. + * boot/parser.boot (shoeOutParse): Likewise. + * boot/ast.boot (bfHandlers): Fix thinko. + (codeForCatchHandlers): Likewise. + +2010-12-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpListAndRecover): Use Lisp-level CATCH. + (bpTry): Rewrite. + (bpTry): Likewise. + (bpSimpleCatch): Remove. + (bpPiledCatchItems): Likewise. + (bpCatchItemList): Likewise. + (bpExceptionHead): Likewise. + (bpExceptionTail): Likewise. + (bpExceptionVariable): New. + (bpFinally): Likewise. + * boot/ast.boot (%Ast): Add %Pretend and %Finally. + %Catch now takes two arguments. + (bfTry): Rewrite. + (bfThrow): Likewise. + (bfHandlers): New. + (codeForCatchHandlers): Likewise. + * boot/translator.boot (shoeOutParse): Use Lisp-level CATCH. + +2010-12-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfMmeber): Tidy. + * interp/alql.boot: Clean up. + * interp/br-con.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-op2.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/format.boot: Likewise. + * interp/g-error.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/trace.boot: Likewise. + +2010-12-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (reclaim): Remove duplicate. + +2010-12-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/pile.boot: Clean up. + +2010-12-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/fnewmeta.lisp: Replace MATCH-ADVANCE-GLYPH with + PARSE-GlyphTok. + (PARSE-GlyphTok): Now accept string instead of symbol. + * interp/parsing.lisp (MATCH-ADVANCE-GLYPH): Remove as redundant. + +2010-12-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/fnewmeta.lisp (PARSE-OpenBracket): Tidy. + (PARSE-OpenBrace): Likewise. + +2010-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/acplot.spad.pamphlet: Fix decimal constant notation. + * interp/fnewmeta.lisp: Replace MATCH-ADVANCE-STRING with + MATCH-ADVANCE-KEYWORD when matching for keywords. + +2010-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compThrow): Remove niladic type restriction. + (compCatch): Tidy. + (compTry): Likewise. + +2010-12-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add support for exception handling. + * interp/parsing.lisp (TEST-LEXING): Remove. + (RTRACE): Likewise. + (RUNTRACE): Likewise. + (MATCH-ADVANCE-KEYWORD): New. + (MATCH-ADVANCE-GLYPH): Likewise. + (MATCH-ADVANCE-SPECIAL): Likewise. + (MATCH-SPECIAL): Likewise. + (MATCH-KEYWORD-NEXT): Likewise. + * interp/newaux.lisp: Make try and throw prefix operators. + * interp/metalex.lisp (KEYWORDS): Include finally, catch and throw. + * interp/fnewmeta.lisp (PARSE-Throw): New. Parse throw-expressions. + (PARSE-Catch): New. Parse catch-expressions. + (PARSE-Finally): New. Parse finally-expressions. + (PARSE-Try): New. Parse try-expressions. + * interp/compiler.boot (compThrow): New. Register to compile + throw-expressions. + (compTry): New. Register to compiler try-expressions. + (compCatch): New. Compile catch-handler expression. + * interp/g-opt.boot (optTry): New. Simplify simple expressions in + the try operand. + * interp/g-util.boot (expandThrow): New. Expand %throw forms. + (domainMatchCode): New. + (expandTry): New. Expand %try forms. + * doc/msgs/s2-us.msgs: Add new message with key S2GE0020. + * interp/g-error.boot (systemErrorHandler): Handle possible + uncaucght expression condition. + +2010-12-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/metalex.lisp (KEYWORDS): Include try. + * algebra/numode.spad.pamphlet: Change field try to tryValue. + * algebra/multsqfr.spad.pamphlet: Change identifier try to tryCount. + +2010-12-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (executeSpadScript): Inform the system + that we are going to read from a file. + * interp/g-error.boot(handleLispBreakLoop): Return to reading from + file if that was what were doing. + * input/Makefile.in (TESTSYS): Use driver and --test option. + (%.output): Simplify. + +2010-12-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (executeSpadScript): Handle --test + option. + * interp/setvars.boot (setOutputAlgebra): Control informative + message about algebra stream redirection by $verbose. + +2010-12-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (handleCommandLine): Don't export. Rewrite. + (RUN-DRIVER): Split from handleCommandLine. + +2010-11-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (processCommandLine): Don't export. + Rewrite to pull out command line options wherever they are + except the ones after "--". + (topLevel): Bind *PACKAGE*; don't set it. + +2010-11-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/utils.cc: Commonalize some of option handling code. + +2010-11-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2110371 + * interp/i-toplev.boot (recordAndPrint): Tidy. + (SpadInterpretFile): Move to int-top.boot. + * interp/int-top.boot (ncINTERPFILE): Simplify. + (ncloopPrintLines): Output onto the standard output stream. + (ncloopIncFileName): Issue diagnostic on error output stream. + * interp/setvars.boot (setOutputAlgebra): Fix thinko. + (setStandardOutputToAlgebraStream): New. + * interp/sys-driver.boot (executeSpadScript): Use it. + Set verbosity level as appropriate. Redirect output if requested. + +2010-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * etc/Makefile.in: Use the driver. + * driver/utils.c (get_suffix): New. + (option_value): Likewise. + (preprocess_arguments): Handle --translate and --build-databases. + * driver/main.c (upgrade_environment): Change argument type to + Command. Upgrade LD_LIBRARY_PATH too. + * boot/translator.boot (loadSystemRuntimeCore): Don't prefix the + shared library file name with the system path. + +2010-11-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * clef/: Add using directive at toplevel. + * etc/: Likewise. + * graph/: Likewise. + * hyper/: Likewise. + * lib/: Likewise. + * sman/: Likewise. + * Makefile.am (OA_SMAN_TARGETS): New. + (OA_GRAPHICS_TARGETS): Likewise. + (all-lisp): Require all-driver. + * driver/utils.c: Tidy. + * driver/utils.h: Likewise. + * sman/sman.c: Likewise. + +2010-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/Makefile.in: Build libopen-axiom-core and libspad with a C++ + compiler and linker. + * lib/bsdsignal.c: Fix C calling convention annotation. + * lib/cfuns-c.c: Likewise. + * lib/edin.c: Likewise. + * lib/sockio-c.c: Likewise. + * include/bsdsignal.h: Remove 'extern "C"'-block annotation. + * include/cfuns.h: Likewise. + * include/cursor.h: Likewise. + * include/edin.h: Likewise. + * include/fnct_key.h: Likewise. + * include/halloc.h: Likewise. + * include/hash.h: Likewise. + * include/openpty.h: Likewise. + * include/pixmap.h: Likewise. + * include/prt.h: Likewise. + * include/sockio.h: Likewise. + * include/spadcolors.h: Likewise. + * include/util.H1: Likewise. + * include/view.h: Likewise. + * include/wct.h: Likewise. + * include/open-axiom.h (OPENAXIOM_C_CALL): New macro. + (OPENAXIOM_C_EXPORT): Likewise. + +2010-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/Makefile.in: Link the basic core with a C++ compiler when + GCL or ECL. + * lisp/core.lisp.in: Implement appropriate change. + +2010-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * etc/Makefile.in: Compile and link with a C++ compiler. + * etc/asq.c.pamphlet: Fix bogus declarations of standard + functions. Fix const-correctness for string literals. + +2010-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/Makefile.in (GCL_LTCC): Specify the tag. + (GCL_LTLD): Likewise. + +2010-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.am: Automake Makefile.in. + * Makefile.in: Regenerate. + +2010-11-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/utils.c (openaxiom_allocate_argv): New. + (openaxiom_build_rts_options): Use it. Tidy. Handle Clozure CL + and CLISP. + +2010-11-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %s2c + builtin. + * interp/g-util.boot (stringToChar): New. + (expandCst): Use it. + (expandS2c): Likewise. New. + * interp/spad.lisp (|$Newline): Move to interp/sys-macros.lisp. + * interp/sys-macros.lisp (|$Backspace): New. + (|$HorizontalTab|): Likewise. + (|$VerticalTab|): Likewise. + (|$FormFeed|): Likewise. + (|$CarriageReturn|): Likewise. + * algebra/string.spad.pamphlet (Character) [newline]: New. + [carriageReturn]: Likewise. + [linefeed]: Likewise. + [formfeed]: Likewise. + [backspace]: Likewise. + [horizontalTab]: Likewise. + [verticalTab]: Likewise. + [char]: Tidy. + +2010-11-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet: Remove. + * algebra/Makefile.pamphlet: Likewise. + * input/Makefile.pamphlet: Likewise. + +2010-11-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Remove. + +2010-11-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/Makefile.in ($(OUT)/lisp$(EXEEXT)): Remove GCL-specific + hack for rsym. + +2010-10-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Cleanup. + +2010-10-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (makeCommonEnvironment): Use list node pointer + comparaison, not object comparaison. + +2010-10-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (BooleanLogic) [~]: Add defaut. + +2010-10-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (BooleanLogic): Extends Logic. + +2010-10-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (Logic): Now extend Type. + +2010-09-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/sexpr.H (Token::character): New token type. + (Character): New. + (Syntax::Visitor::visit): Overload for Character. + (Allocator::make_character): Declare. + (Parser::parse_character): Likewise. + * utils/sexpr.cc (operator<<) [Token::character]: Print data for + character token. + (Lexer::tokenize): Recognize a character literal. + (Parser::parse_character): Define. + +2010-09-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (massageBackendCode): Remove conditional on + $NEWSPAD since it always true. Keep note of Lisp-level special + variable even if it is set with SETQ. + (transformToBackendCode): Declare special variables before fluid + and local variables. + * interp/compiler.boot: Don't compile SETQ forms as if they were + Spad codes. + +2010-08-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/Makefile.in ($(oa_target_oalib)): Create contaning + directory if necessary. + * utils/storage.H (Memory::Factory): New. Allocate, construct, + and destroy objects. + * utils/sexpr.H (Sexpr::Allocator): Use Memory::Factory. + * utils/sexpr.cc: Adjust implementation. + +2010-08-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/Makefile.in: Install libOpenAxiom.a + * driver/main.c (print_configuration_info): New. + (main): Handle --config. + * driver/utils.c (openaxiom_build_rts_options): Likewise. + * driver/utils.h (openaxiom_config_driver): New driver enumerator. + +2010-08-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * utils/Makefile.in: Install headers. + +2010-08-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + +2010-08-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-output.boot (newlineIfDisplaying): New. + (mathprintWithNumber): Take type of value as second argument. + (maprinChk): Tidy. + (maprinRows): Likewise. + (spadPrint): Likewise. + (output): Likewise. + (printMap): Likewise. + (bracketagglist): Likewise. + (mathPrint): Likewise. + (mathPrint1): Likewise. + * interp/i-toplev.boot (recordAndPrint): Likewise. + * interp/setvart.boot: Introduce flag for asgard forms. + +2010-08-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-saturn.boot ($saturn): Define here. + * interp/br-search.boot: Remove $saturn-related codes. + * interp/g-error.boot: Likewise. + * interp/ht-root.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-toplev.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/patches.lisp: Likewise. + +2010-08-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/openmath.spad.pamphlet (outputOMFunction): Coerce + symbol to string for error display. + +2010-08-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/e04Package.spad.pamphlet (goodnessOfFit): Add explicit + package call to ErrorFunctions. + +2010-08-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (getBootType): Prefix Mapping with %. + (checkExternalEntity): Likewise. Do same with Signature. + +2010-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-interpsys): Require all-utils. + (all-asq): Likewise. + (all-utils): New tule. + * algebra/Makefile.pamphlet: Replace $(axiom_build_document) with + $(oa_hammer). + * etc/Makefile.in: Likewise. + * graph/Makefile.in: Likewise. + * input/Makefile.pamphlet: Likewise. + * interp/Makefile.pamphlet: Likewise. + * utils/: New component. + +2010-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * ChangeLog.jap: Merge into here. Remove + + 2010-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/htsearch.cc: Rename from htsearch.c to avoid confusions. + + 2010-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/htsearch.c: Tidy. + + 2010-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/Makefile.in (${OUTLIB}/htsearch$(EXEEXT)): Link with a C++ + compiler. + + 2010-07-25 Alfredo Portes <doyenatccny@gmail.com> + + * src/lib/cfuns-c.c: (oa_insert) Change return value. + Misc cleanup. + * src/include/cfuns.h: Adjust. + + 2010-07-12 Alfredo Portes <doyenatccny@gmail.com> + + * src/hyper/Makefile.in: Adjust. + * src/hyper/htsearch.c: Add more documentation. + * src/lib/cfuns-c.c: Add String manipulation functions. + + 2009-07-16 Alfredo Portes <doyenatccny@gmail.com> + + * lib/cfuns-c.c: New string manipulation functions. + * include/cfuns.h: Likewise. + * hyper/htsearch.c: Add new C replacement for htsearch + and presea scripts. + * hyper/htsearch: Remove. + * hyper/presea.in: Remove. + * hyper/Makefile.in: Adjust. + + +2010-08-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/float.spad.pamphlet (Float): Tidy. + * algebra/limitps.spad.pamphlet (ElementaryFunctionSign): Likewise. + * algebra/view2D.spad.pamphlet (TwoDimensionalViewport): Likewise. + * algebra/view2D.spad.pamphlet (ThreeDimensionalViewport): Likewise. + +2010-08-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/Makefile.in (libopen-axiom-core.$(LIBEXT)): Use LINK. + (libspad.$(LIBEXT)): Likewise. + (%.$(OBJEXT) %.lo): Honor CFLAGS. + +2010-08-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/ex2ht.c (strPrefix): Be const-correct. + * hyper/htinp.c (get_graph_output): Likewise. + (print_paste): Likewise. + (print_graph_paste): Likewise. + * hyper/initx.c (get_color): Likewise. + * hyper/keyin.c (handle_key): Likewise. + * hyper/lex.c (token_table): Likewise. + * hyper/macro.c (number): Likewise. + * hyper/mem.c (alloc_page): Likewise. + * hyper/parse-aux.c (make_special_page): Likewise. + (is_number): Likewise. + * hyper/parse-types.c (errmess): Likewise. + * lib/sockio-c.c (oa_socket_read): Cast to second argument to + appropriate type. + (oa_socket_read_byte): Likewise. + +2010-08-01 Aleksej Saushev <asau@inbox.ru> + + * hyper/event.c: Include <sys/types.h> before other system headers. + * hyper/hyper.c: Likewise. + +2010-07-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * clef/Makefile.in: Build and link programs by a C++ compiler. + * clef/edible.c: Make it acceptable to a C++ compiler. + * driver/utils.c: Likewise. + * sman/sman.c: Likewise. + +2010-07-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/XSpadFill.c: Tidy. + * lib/pixmap.c: Likewise. + * lib/spadcolors.c: Likewise. + * include/ReadBitmap.H1: Remove. + * include/all_hyper_proto.H1: Likewise. + * include/cond.H1: Likewise. + * include/cursor.H1: Likewise. + * include/dialog.H1: Likewise. + * include/display.H1: Likewise. + * include/event.H1: Likewise. + * include/extent1.H1: Likewise. + * include/extent2.H1: Likewise. + * include/form_ext.H1: Likewise. + * include/group.H1: Likewise. + * include/htinp.H1: Likewise. + * include/hyper.H1: Likewise. + * include/initx.H1: Likewise. + * include/input.H1: Likewise. + * include/item.H1: Likewise. + * include/keyin.H1: Likewise. + * include/macro.H1: Likewise. + * include/mem.H1: Likewise. + * include/parse.H1: Likewise. + * include/parse_aux.H1: Likewise. + * include/parse_input.H1: Likewise. + * include/parse_paste.H1: Likewise. + * include/parse_types.H1: Likewise. + * include/scrollbar.H1: Likewise. + * include/show_types.H1: Likewise. + * include/spadcolors.H1: Likewise. + * include/spadint.H1: Likewise. + * include/titlebar.H1: Likewise. + * hyper/Makefile.in: Compile and Link with a C++ compiler. + * hyper/ReadBitmap.c: Make it acceptable to a C++ compiler. + * hyper/cond.c: Likewise. + * hyper/dialog.c: Likewise. + * hyper/display.c: Likewise. + * hyper/display.h: Likewise. + * hyper/event.c: Likewise. + * hyper/event.h: Likewise. + * hyper/extent.h: Likewise. + * hyper/extent1.c: Likewise. + * hyper/extent2.c: Likewise. + * hyper/form-ext.c: Likewise. + * hyper/group.c: Likewise. + * hyper/group.h: Likewise. + * hyper/htadd.c: Likewise. + * hyper/htinp.c: Likewise. + * hyper/hyper.c: Likewise. + * hyper/hyper.h: Likewise. + * hyper/initx.c: Likewise. + * hyper/initx.h: Likewise. + * hyper/input.c: Likewise. + * hyper/item.c: Likewise. + * hyper/keyin.h: Likewise. + * hyper/keyin.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-paste.h: Likewise. + * hyper/parse-types.h: Likewise. + * hyper/parse-types.c: Likewise. + * hyper/parse.h: Likewise. + * hyper/parse.c: Likewise. + * hyper/scrollbar.c: Likewise. + * hyper/scrollbar.h: Likewise. + * hyper/show-types.c: Likewise. + * hyper/spadint.c: Likewise. + * hyper/titlebar.c: Likewise. + * hyper/titlebar.h: Likewise. + * graph/view3D/smoothShade3d.c: Include spadcolors.h + * graph/view3D/stuff3d.c: Likewise. + * graph/include/view.h (saymem): #undef before #define. + * graph/view2D/write2d.c: Include pixmap.h. + * graph/view3D/process3d.c: Likewise. + * graph/view3D/write3d.c: Likewise. + * graph/view3D/header.h: Remove macro definition for endColor and + colorStep. + * include/bsdsignal.h: Remove. + * include/edin.H1: Likewise. + * include/fnct_key.H1: Likewise. + * include/halloc.h: Likewise. + * include/hash.h: Likewise. + * include/prt.H1: Likewise. + * include/rgb.H1: Likewise. + * include/sockio.h: Likewise. + * include/util.h: Likewise. + * include/pixmap.h: Rename from pixmap.H1 + +2010-07-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/sf.spad.pamphlet (DoubleFloat): Use builtin + trigonometric functions. + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include them. + * interp/g-util.boot: Expand them. + * include/edible.H1: Move declarations to clef/edible.c. Remove. + * driver/utils.h: Give G linkage to declarations. + * sman/Makefile.in: Link programs against C++ runtime. + +2010-07-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/main.c (main): Add explicit conversion to + openaxiom_spawn_flags. + * driver/utils.c (openaxiom_execute_core): The system want the + excepath to be writable. + * driver/Makefile.in (%.lo): Compile source programs as C++ programs. + (open-axiom$(EXEEXT)): Link as a C++ program. + +2010-07-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (removeToplevelRETURN_-FROM): New. + (transformToBackendCode): Use it to clean function body. + +2010-07-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad.lisp (DIVIDE2): Remove. + * interp/vmlisp.lisp (QSQUOTIENT): Likewise. + (QSREMAINDER): Likewise. + * interp/buildom.boot: Use quo and rem in leur of QUOTIENT and + REMAINDER or variants. + * interp/g-timer.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/incl.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/nrungo.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/topics.boot: Likewise. + +2010-07-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($VariableCount): Remove. + * interp/spad.lisp (QUOTIENT2): Remove. + (REMAINDER2): Likewise. + * algebra/integer.spad.pamphlet (Integer): Use builtin %idivide. + * algebra/si.spad.pamphlet (SingleInteger): Likewise. + +2010-07-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/integer.spad.pamphlet (Integer): Use builtin functions + %irem and %iquo. + * algebra/si.spad.pamphlet (SingleInteger): Likewise. + +2010-07-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot: Transform %iquo and %irem expressions. + ($VMsideEffectFreeOperators): Include %irem and %iquo. + +2010-07-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: quo and rem are now keywords and infix operators. + * boot/parser.boot (bpEuclid): New. Parse integer quotient and + remainder expressions. + (bpMinus): Now build on bpEuclid instead of bpTimes. + +2010-07-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-analy.boot (bottomUpCompile): Use massageBackendCode in + lieu of mutateToBackendCode. + +2010-07-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/types.boot (%Code): Include %Char. + * interp/c-util.boot (middleEndExpand): Temporarilty Comment out + signature. + +2010-07-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCond): Work harder at denesting nested + if-expressions. + +2010-07-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include new + opcodes %icst0, %icst1, %when, and %ccst. + * interp/g-util.boot: Expand %ccst. + * algebra/alql.spad.pamphlet: Clean up. + * algebra/array1.spad.pamphlet: Likewise. + * algebra/c02.spad.pamphlet: Likewise. + * algebra/d03.spad.pamphlet: Likewise. + * algebra/e04.spad.pamphlet: Likewise. + * algebra/integer.spad.pamphlet: Likewise. + * algebra/si.spad.pamphlet: Likewise. + * algebra/string.spad.pamphlet: Likewise. + +2010-07-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/si.spad.pamphlet (SingleInteger): Tidy. + * interp/g-opt.boot (simplifyVMForm): Expand %icst0 and %icst1. + (optIlt): Fold more configurations. + +2010-07-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCond): Simplify newly built COND-expression. + +2010-07-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optimize): Remove as no longer used. + * interp/define.boot (DomainSubstitutionFunction): Use + simplifyVMForm in lieu of optimize. + * interp/nruncomp.boot (NRTsetVector4a): Likewise. + +2010-07-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (oprCond): Replace use of TruthP with direct + comparison to %true. + +2010-07-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCall): Don't call optimize again. + (optCallSpecially): Remove deadcode. + +2010-07-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (simplifyVMForm): Don't call optimize. + (optCall): Handle VM macro expansions here. + +2010-07-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (resetTo): New. + (optCatch): Use it. + (optCall): Likewise. + (optSpecialCall): Likewise. + (simplifyVMForm): Handle simple cases here. + * interp/macros.lisp (RPLACW): Remove. + +2010-07-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optIadd): More simplification if either + operand is zero. + (optIsub): Likewise. + (optImul): More simplifications if either operand is one. + +2010-07-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (usedSymbol?): Move to g-util.boot. + * interp/nruncomp.boot (NRTsetVector4a): Tidy. + +2010-07-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cattable.boot: Use %true for truth value in VM expressions. + * interp/clam.boot: Likewise. + * interp/define.boot: Likewise. + * interp/format.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + * interp/sys-constants.boot: Remove $true and $false as unused. + +2010-07-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compMatchAlternative): Don't generate + LET-expressions. + * interp/g-opt.boot (optBind): Tidy. + +2010-07-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optBind): Check for dependencies in + initializations in %bind expressions. + * interp/g-util.boot (expandBind): The body of s %bind expression + may be a sequence of statements. + +2010-07-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot: Remove expansion for %ble, %bgt, %bge. + * interp/g-opt.boot (optMINUS): Remove. + (opt_-): Likewise. + (optBle): New. + (optBgt): Likewise. + (optBge): Likewise. + +2010-07-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (expandFeq): New. + * algebra/sf.spad.pamphlet (DoubleFloat): Tidy. + +2010-07-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (expandIeq): New expander for %ieq. + * interp/g-opt.boot (optIeq): New. + (optIadd): Likewise. + (optIsub): Likewise. + (optImul): Likewise. + (optIneg): Likewise. + (lispize): Remove. + +2010-07-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (simplifyVMForm): New. + (optRetract): Simplify the predicate when possible. + (optNot): New transformer. + (optAnd): Likewise. + (optOr): Likewise. + (optIlt): Likewise. + (optIle): Likewise. + (optIgt): Likewise. + (optIge): Likewise. + +2010-07-21 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * algebra/data.spad.pamphlet (Byte) [~]: Tidy. + (SystemNonNegativeInteger) [~]: Likewise. + * interp/g-util.boot: Better expansion of byte operations. + +2010-07-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include + byte relation operators and bitmakst operators. + * interp/g-util.boot: Expand them. + * algebra/data.spad.pamphlet (Byte): Now satisfies Logic. Tidy. + (SystemNonNegativeInteger): Likewise. + * algebra/java.spad.pamphlet (JVMBytecode): Rename from JavaBytecode. + (JVMClassFileAccess): New. + (JVMFieldAccess): Likewise. + (JVMMethodAccess): Likewise. + (JVMConstantTag): Likewise. + (JVMOpcode): Likewise. + +2010-07-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Add char? as builtin function. + * interp/i-output.boot (appChar): Fix thinko. + (outformWidth): Likewise. + (WIDTH): Likewise. + +2010-07-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot: %sname is a side-effect free operator. + * interp/g-util.boot: Expand it. + * algebra/syntax.spad.pamphlet (Identifer): Now satisfies + CoercibleTo String. + +2010-07-11 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * interp/database.boot (markUnique): Remove. + ($FunctionDescriptorTail): Likewise. + (getOperationAlistFromLisplib): Likewise. + (getOplistForConstructorForm): Adjust. + * interp/br-op1.boot (getDomainOpTable): Likewise. + * interp/br-op2.boot (koOps): Likewise. + * interp/define.boot (genDomainViewList): Likewise. + * interp/i-analy.boot (namedConstant): Likewise. + * interp/i-coerce.boot (getConstantFromDomain): Likewise. + * interp/i-funsel.boot (isOpInDomain): Likewise. + (findCommonSigInDomain): Likewise. + (findUniqueOpInDomain): Likewise. + (hasSig): Likewise. + * interp/i-spec2.boot (constantInDomain?): Likewise. + * interp/trace.boot (spadTrace): Likewise. + * interp/lisplib.boot (transformOperationAlist): Simplify. + +2010-07-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/database.boot (addConsDB): Remove. + (getOperationAlistFromLisplib): Don't call it. + * interp/sys-driver.boot (initializeGlobalState): Remove kludge. + * interp/util.lisp (BUILD-INTERPSYS): Likewise. + +2010-07-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/database.boot (addConsDB): Move from mapConsDB. + * interp/nruncomp.boot (mapConsDB): Remove. + (catList2catPackageList): Likewise. + +2010-07-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/functor.boot (setVector4): Remove. Deadcode. + (setVector4Onecat): Likewise. + (setVector4part3): Likewise. + * interp/nruncomp.boot (NRTsetVector4): Likewise. + (NRTsetVector4Part2): Likewise. + (mergeAppend): Likewise. + * interp/define.boot (compDefineFunctor1): Remove assignment to + unused $lisplibCategoriesExtented. + * interp/lisplib.boot (compDefineLisplib): Likewise. + * interp/wi1.boot (compDefineLisplib): Likewise. + * interp/wi2.boot (compDefineFunctor1): Likewise. + +2010-07-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (buildFunctor): Remove deadcode. + +2010-07-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (minimalise): Move from compress.boot. + Rewrite local worker to use explicit hash table parameter instead + of special variable. + * interp/compress.boot (minimalise): Move to sys-utility.boot. + Delete file. + * interp/nruncomp.boot (buildFunctor): Don't bother to minimalise. + +2010-07-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-constants.boot ($noEnv): Remove. + * interp/info.boot (actOnInfo): Adjust. + +2010-07-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/functor.boot (SetFunctionSlots): Simplify. The outer + loop was executed only once. + +2010-07-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compTopLevel): Bind $whereDecls. + (recordDeclarationInSideCondition): New. Update it. + (compWhere): Call it. + * interp/define.boot ($whereDecls): Define at toplevel. + (typeDependencyPath): New. + (inferConstructorImplicitParameters): Likewise. + (compDefineFunctor1): Use it. + +2010-07-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (isCategoryForm): Tidy. + * interp/compiler.boot (compMacro): Handle parameterized definition. + * interp/define.boot (macroExpand): Likewise. + (macroExpandList): Move case for niladic macros to macroExpand. + * interp/g-util.boot (putMacro): New utility function. + +2010-07-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (macroExpand): Tidy. Only identifiers are + allowed to be macro names. + +2010-07-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/vector.spad.pamphlet (DualBasis): New. + (LinearBasis): Likewise. + (LinearElement): Use them. + (LinearForm): New. + +2010-07-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (registerInlinableDomain): New. + (compAdd): Use it to promote base domains for inlining. + * interp/c-util.boot (lookupFunctionInstance): Foeld into + lookupDefiningFunction. Remove. + (lookupDefiningFunction): Evaluate only system domains to avoid + cycles. + +2010-06-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (giveVariableSomeValue): New. + * interp/compiler.boot (setqMultiple): Use it. + (compColon): Likewise. + (compRetractGuard): Likewise. + (compRecoverDomain): Likewise. + (defineMatchScrutinee): Likewise. + (compStepIterator): Likewise. + (compIterator): Likewise. + (compUnnamedMapping): Likewise. + * interp/define.boot (giveFormalParametersValues): Likewise. + * interp/wi1.boot (setqMultiple): Likewise. + * interp/wi2.boot (compIterator): Likewise. + (smallIntegerStep): Likewise. + +2010-06-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/vector.spad.pamphlet (LinearElement): New. + +2010-06-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (getRepresentation): Tidy. + * interp/define.boot (checkRepresentation): Don't compile the base + domain here yet. + +2010-06-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/indexedp.spad.pamphlet (IndexedDirectProductObject) + [indexedDirectProductObject]: New. + (IndexedDirectProductAbelianMonoid): Rework implementation. + [construct]: Likewise. + +2010-06-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (OrderedType): New. + +2010-06-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (BasicType) [before?]: Declare here. + (OrderedType) [max,min]: Export and provide defaults. + (OrderedSet): Simplify. + (SetCategory) [before?]: Move to BasicType. + +2010-06-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (OrderedType): New category. + Extend BasicType. + +2010-06-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/indexedp.spad.pamphlet (IndexedDirectProductCategory) + [terms]: Rename from support. + +2010-06-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/indexedp.spad.pamphlet (IndexedDirectProductCategory): + Rework implementation. + +2010-06-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/indexedp.spad.pamphlet (IndexedDirectProductCategory) + [support]: New. + (IndexedDirectProductObject): Implement. + +2010-06-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-constants.boot ($SystemInlinableConstructorNames): + Include Pair. + +2010-06-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/slam.boot (clearCache): Use reallyClearLocalModemaps to + remove local modemaps.Likewise. + (clearLocalModemaps): Likewise. Tidy. + (reallyClearLocalModemaps): New. Remove dynamically generated + function definition for internal Lisp-level functions. + +2010-06-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-map.boot (findExternalVarsInBindExpr): New. + (findLocalVars1): Use it for %bind-expressions. + +2010-06-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot: Add new opcode %before?. + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include it. + +2010-06-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/matcat.spad.pamphlet (MatrixCategory) [matrix]: + Add overload that takes sizes and function to compute entries. + +2010-06-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (LinearlyExplicitRingOver) + [leftReducedSystem]: Rename from reducedSystem. + +2010-06-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %vref + and %vlength. + * interp/g-util.boot: Expand them. + * algebra/array1.spad.pamphlet (PrimitiveArray): Use them. + (IndexedOneDimensionalArray): Likewise. + +2010-06-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/aggcat.spad.pamphlet (HomogeneousAggregate): Satisfy + BasicType if element type satisfies it. + +2010-06-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/string.spad.pamphlet (StringCategory): Remove. + (String): Adjust. + +2010-06-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot: Expand %f2s. + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include %f2s. + * algebra/string.spad.pamphlet (StringCategory) [string]: Add + overload DoubleFloat -> %. + (String): Define it. + +2010-06-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compString): Remove as unused. + * interp/mark.boot (compString): Likewise. + * algebra/string.spad.pamphlet (StringCategory): Remove obsolete + comments. Remove redundant SetCategory extension. + +2010-06-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot: Rename %eq to %peq for pointer comparaison. + * interp/g-util.boot: Expand it. + * algebra/aggcat.spad.pamphlet: Cleanup. + * algebra/any.spad.pamphlet: Likewise. + * algebra/boolean.spad.pamphlet: Likewise. + * algebra/data.spad.pamphlet: Likewise. + * algebra/domain.spad.pamphlet: Likewise. + * algebra/files.spad.pamphlet: Likewise. + * algebra/laurent.spad.pamphlet: Likewise. + * algebra/list.spad.pamphlet: Likewise. + * algebra/mappkg.spad.pamphlet: Likewise. + * algebra/ore.spad.pamphlet: Likewise. + * algebra/padic.spad.pamphlet: Likewise. + * algebra/pattern.spad.pamphlet: Likewise. + * algebra/sex.spad.pamphlet: Likewise. + * algebra/stream.spad.pamphlet: Likewise. + * algebra/string.spad.pamphlet: Likewise. + * algebra/syntax.spad.pamphlet: Likewise. + * algebra/table.spad.pamphlet: Likewise. + +2010-06-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (expandableDefinition?): Try to make it a + forwarding function if possible. + +2010-06-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/outform.spad.pamphlet: Cleanup. + * algebra/polycat.spad.pamphlet: Likewise. + * algebra/sregset.spad.pamphlet: Likewise. + +2010-06-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Cleanup. + * interp/compiler.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + +2010-06-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-constants.boot ($SystemInlinableConstructorNames): + Include Maybe. + +2010-06-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (optDeltaEntry): Don't optimize current + domain modemap references here. + * interp/g-opt.boot ($VMsideEffectFreeOperators): Include more + floating point operators. + ($simpleVMoperators): Move FUNCALL here. + (isVMConstantForm): Tidy. + * interp/g-util.boot: Expand more floating point insns. + * interp/c-util.boot (replaceSimpleFunctions): Replace more + constants. + * algebra/integer.spad.pamphlet (Integer): More cleanup. Use + builtin functions. + * algebra/sf.spad.pamphlet: Likewise. + +2010-06-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Group sequence of LETT definitions into LET/LET* expressions where + appropriate. + * interp/g-opt.boot (jumpToToplevel?): New. + (singleAssignment?): Likewise. + (groupVariableDefinitions): Likewise. Use them. + (optimizeFunctionDef): Group toplevel variable definitions into + a bind expression. + * interp/g-util.boot (expandBind): Tidy. + * interp/c-util.boot (transformToBackendCode): Refrain from + enclosing let-expressions in SEQ if not needed. + +2010-06-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (middleEndExpand): Give it another macro + expansion pass after new opcode expansion. + +2010-06-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nlib.lisp (COMPILE-LIB-FILE): Rework. Halt compilation + if generated is malformed or contains serious warnings. + * algebra/pfo.spad.pamphlet (PointsOfFiniteOrder) [cmult]: Merge + local conditional definitions. + * algebra/permgrps.spad.pamphlet (PermutationGroup) [cosetRep]: + Don't forget to return a value. + * algebra/newpoly.spad.pamphlet (RecursivePolynomialCategory) + [exactQuo]: Merge conditional local definitions. + [ZToR]: Inline at sole use point. Remove conditional definitions. + [QToR]: Likewise. + [PZToPR]: Likewise. + [PQToPR]: Likewise. + * algebra/naalgc.spad.pamphlet (FramedNonAssociativeAlgebra) + [leftRankPolynomial]: Initialize local variable xx. + (rightRankPolynomial): Likewise. + * algebra/multsqfr.spad.pamphlet (MultivariateSquareFree) + [intChoose]: Error if no solution is found in the loop. + * algebra/mts.spad.pamphlet (SparseMultivariateTaylorSeries): Tidy. + [stream] Remove duplicate definition. + * algebra/d01routine.spad.pamphlet (d01anfAnnaType) [measure]: Tidy. + (d01asfAnnaType) [measure]: Likewise. + * algebra/d01transform.spad.pamphlet (d01TransformFunctionType) + [measure]: Likewise. + * algebra/forttyp.spad.pamphlet (FortranScalarType) [coerce]: Likewise. + +2010-06-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/sgcf.spad.pamphlet (SymmetricGroupCombinatoricFunctions) + [listYoungTableaus]: Fix thinko. Don't use lattice in its own + initialization. + +2010-06-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (changeVariableDefinitionToStore): New. + (optimizeFunctionDef): Use it. + +2010-06-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (massageLoop): New. + (compRepeatOrCollect): Use it to generate appropriate %loop forms. + Bind new special variable $mayHaveFreeIteratorVariables. + (complainIfShadowing): Set it as appropriate. + +2010-06-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot (readOnly?): New builtin Boot function. + * interp/c-util.boot (isLispSpecialVariable): Tidy. + (transformToBackendCode): Likewise. + +2010-06-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (LinearlyExplicitRingOver) + [reducedSystem]: Add overload. + * algebra/si.spad.pamphlet (SingleInteger)[reducedSystem]: Tidy. + +2010-06-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (LeftLinearSet): Remove declaration + for 0 and zero? + (RightLinearSet): Likewise. + +2010-06-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (DifferentialModule): Tidy. + (DifferentialModuleExtension): Likewise. + (PartialDifferentialModule): New. + +2010-06-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/fparfrac.spad.pamphlet (FullPartialFractionExpansion): + Now satisfies DifferentialSpace. + * algebra/gseries.spad.pamphlet (GeneralUnivariatePowerSeries): + Now satisfies an instance of PartialDifferentialDomain. + * algebra/laurent.spad.pamphlet (UnivariateLaurentSeries): Likewise. + * algebra/puiseux.spad.pamphlet (UnivariatePuiseuxSeries): Likewise. + * algebra/suls.spad.pamphlet (SparseUnivariateLaurentSeries): Likewise. + * algebra/supxs.spad.pamphlet (SparseUnivariatePuiseuxSeries): + Likewise. + * algebra/suts.spad.pamphlet (SparseUnivariateTaylorSeries): Likewise. + * algebra/taylor.spad.pamphlet (UnivariateTaylorSeries): Likewise. + +2010-06-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (DifferentialExtension): Now + extends DifferentialSpaceExtension. + +2010-06-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (DifferentialSpaceExtension): New. + (DifferentialModuleExtension): Likewise. + +2010-06-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/vector.spad.pamphlet (DirectProductCategory): Extend + AbelianMonoid if element type satisfies AbelianMonoid. + Extend AbelianGroup if element type satisfies AbelianGroup. + Extend Module R if R satisfies CommutativeRing; remove bogus + Algebra R and CommutativeRing extension. + +2010-06-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/strap/DIFRING-.lsp: Remove. + +2010-06-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (PartialDifferentialSpace): New. + (PartialDifferentialRing): Now extend PartialDifferentialSpace. + +2010-06-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/vector.spad.pamphlet (DirectProductCategory): Extend + LinearSet if the coefficient type satifies Monoid. Remove + previous bogus extension of Monoid. + Similarly, extend OrderedSet if the element type satisfies + OrderedSet. Remove previous bogus extension of OrderedRing. + +2010-06-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (LeftLinearSet): Weaken requirement + on argument. + (RightLinearSet): Likewise. + (LinearSet): Likewise. + +2010-06-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (DifferentialModule): New. + (PartialDifferentialDomain): Likewise. + +2010-06-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (DifferentialRing): Now extends + DifferentialSpace. + +2010-06-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/dpolcat.spad.pamphlet (DifferentialVariableCategory): + Extend DifferentialSpace. + +2010-06-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (DifferentialSpace): New. + +2010-06-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (LinearlyExplicitRingOver): Now + extends LeftModule R. + [reducedSystem: Vector % -> Matrix R]: New overload. + * algebra/lindep.spad.pamphlet (LinearDependence): Additionally + require Ring on the second parameter. + (IntegerLinearDependence): Add similar requirement on the parameter. + +2010-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Partially revert previous change. + +2010-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (DifferentialRing): Now extends + DifferentialDomain. + (DifferentialExtension): Check parameter for only DifferentialDomain. + * algebra/dpolcat.spad.pamphlet (DifferentialPolynomialCategory): + Likewise. + * algebra/lodop.spad.pamphlet (OppositeMonogenicLinearOperator): + Likewise. + +2010-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (DifferentialDomain): New. + +2010-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/laurent.spad.pamphlet + (UnivariateLaurentSeriesConstructor) [termsToOutputForm]: Tidy. + * algebra/mts.spad.pamphlet (SparseMultivariateTaylorSeries) + [coerce]: Likewise. + * algebra/padic.spad.pamphlet (PAdicIntegerCategory) [coerce]: + Likewise. + * algebra/pscat.spad.pamphlet + (UnivariateTaylorSeriesCategory)[coerce]: Likewise. + * algebra/puiseux.spad.pamphlet (UnivariatePuiseuxSeries) + [termsToOutputForm]: Likewise. + +2010-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/generic.spad.pamphlet + (GenericNonAssociativeAlgebra)[generic]: Fix thinko. + +2010-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/array1.spad.pamphlet (IndexedFlexibleArray) [merge!]: Tidy. + * algebra/intfact.spad.pamphlet (IntegerRoots) [perfectNthRoot]: + Likewise. + * algebra/numode.spad.pamphlet + (NumericalOrdinaryDifferentialEquations) [rf4a]: Likewise. + * algebra/solvelin.spad.pamphlet (LinearSystemMatrixPackage) + [aSolution]: Likewise. + +2010-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/padic.spad.pamphlet (InnerPAdicInteger) [coerce]: Tidy. + +2010-06-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/aggcat.spad.pamphlet (UnaryRecursiveAggregate) + [#, cycleEntry, cycleLength]: Tidy. + (ListAggregate) [position]: Likewise. + * algebra/string.spad.pamphlet (IndexedString) [replace,split, + leftTrim, rightTrim]: Likewise. + +2010-06-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/aggcat.spad.pamphlet (OneDimensionalArrayAggregate) + [merge,insert,delete]: Tidy. + +2010-06-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (complainIfShadowing): New. + (compStepIterator): Use it to warn about loop variable shadowing + declaration in enclosing scope. + (compIterator): Likewise. + +2010-06-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/kl.spad.pamphlet (Kernel): Don't clear the on + instanstiation, for that may erase other precious information in + the running seesion when Kernel is implicitly re-instantiated by + the interpreter. + +2010-06-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/permgrps.spad.pamphlet (PermutationGroup): Rename + movedPoints to support. Adjust call eval. + * algebra/perm.spad.pamphlet (PermutationCategory): Now extend + Eltable. Remove eval. Rename movedPoints to support. + (Permutation): Adjust. + * algebra/irsn.spad.pamphlet (listPermutationIrrRepSymNatPackage): + Change call to eval to elt. + * algebra/rep1.spad.pamphlet: Likewise. + +2010-06-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (replaceableTemporary?): New. + (optSEQ) [getRidOfTemps]: Use it to decide when to safely inline a + temporary variable definition. + +2010-06-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compIterate): Rewrite. + (compRepeatOrCollect): Tidy. Bind $loopBodyTag. + +2010-06-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/tree.spad.pamphlet (node?$Tree): Fix thinko. + +2010-06-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (mkNewUnionFunList): Use %bind, not PROG2. + (mkUnionFunList): Likewise. + +2010-06-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/tree.spad.pamphlet (map!Tree): Don't forget the return + value. + +2010-06-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (freeVarUsage): Handle %when too. + (compLogicalNot): Generate %not form. + (satisfies): Use %bind. + (compMatch): Likewise. + (compReduce1): Generate %loop directly instead of %reduce. + * interp/g-opt.boot (changeThrowToExit): Don't check for %reduce. + * interp/g-util.boot (expandRepeat): Remove. + (expandReduce): Likewise. + +2010-06-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCollectVector): Generate %loop for the + non-simple case. + +2010-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (expandLoop): Now take all arguments as a + single %loop form. + (expandCollect): Adjust call. + (expandRepeat): Likewise. + +2010-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCollectVector): Generare %collect form, + not COLLECT. + +2010-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (canReturn): Handle %when and %bind. + (compMatchAlternative): Generate %bind form. + (compMatch): Likewise. + (compReduce1): Rewrite. + (getIdentity): Tidy. + * interp/g-opt.boot (changeThrowToExit): HAndle %reduce. + (varIsAssigned): %store is side-effectful. + * interp/g-util.boot (expandReduce): New. Expand %reduce forms. + * interp/i-map.boot (getUserIdentifiersIn): Handle %reduce. + (findLocalVars1): Likewise. + * interp/i-spec1.boot (checkForFreeVariables): Likewise. + +2010-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (removeNeedlessThrow): Tidy. + +2010-06-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Widen scope of iterator variables in presence of terminating + predicate iterators. There is exactly one instance in the entire + OpenAxio library. + * interp/g-util.boot (expandIN): Take one more parameter to + determine early binding. + (expandIterators): Determine if wider scope is needed for iterator + variables. + +2010-06-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (finishLambdaExpression): Bind escaped + variables with LET-form instead of assignment. + +2010-06-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (replaceExitEtc): Replace TAGGEDreturn with + %return. + * interp/g-opt.boot (removeNeedlessThrow): New. + (optCatch): Use to it to avoid horrendous code generation for + return statement. + * interp/g-util.boot (expandReturn): New. Expand %return forms. + +2010-06-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (isLispSpecialVariable): New. + (mutateToBackendCode): Use it to record special vars. + Be careful with locally bound variables. + +2010-06-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (replaceExitEtc): Tidy. + +2010-06-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (mutateToBackendCode): Don't replace explicit + SETQ by LETT. + +2010-06-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (needPROGS?): New. + (transformToBackendCode): Use it. Don't add unneeded PROG/RETURN. + +2010-06-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compRepeatOrCollect): Compile list + comprehension to %collect form. + +2010-06-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/utils.c (openaxiom_execute_core): Don't let CLISP fool + itself. + +2010-06-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/exposed.lsp.pamphlet: Expose SquareMatrix. + +2010-06-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (UnionEqual): Don't COERCE to FUNCTION. Use + eval. Use middle end opcodes instead of EQCAR. + (coerceUn2E): Likewise. + +2010-06-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-con.boot: More cleanup. + * interp/br-op1.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/category.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/database.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-cndata.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/guess.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-intern.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/topics.boot: Likewise. + +2010-06-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot: Clean up QEQCAR uses. + +2010-06-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot: Cleanup. + * interp/c-util.boot ($SetCategory): New constant. + * interp/compiler.boot: Use it. + * interp/functor.boot: Likewise. + +2010-06-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (usedSymbol?): New. + (declareUnusedParameters): Use it. Reimplement. + * interp/i-map.boot (compileCoerceMap): Adjust call. + * interp/i-spec1.boot (compileADEFBody): Likewise. + (mkIterFun): Likewise. + * interp/slam.boot (reportFunctionCompilation): Likewise. + (reportFunctionCacheAll): Likewise. + (compileRecurrenceRelation): Likewise. + +2010-06-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/list.spad.pamphlet: Use builtin functions. + +2010-05-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot: Add more opcodes. + * algebra/syntax.spad.pamphlet: Clean up. + * algebra/variable.spad.pamphlet: Likewise. + * algebra/ystream.spad.pamphlet: Likewise. + +2010-05-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compWithMappingMode): Handle lambda + expressions as mapping. + +2010-05-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (middleEndExpand): Tidy. + * interp/g-util.boot (expandToVMForm): Likewise. + (expandStore): Refine store to pair components. + * algebra/any.spad.pamphlet (Scope): Use builtin operators. + (Environment): Likewise. + * algebra/domain.spad.pamphlet (FunctionDescriptor): Likewise. + (ConstructorCall): Likewise. + (FunctorData): Likewise. + (OperatorSignature): Likewise. + (Category): Likewise. + (Domain): Likewise. + * algebra/integer.spad.pamphlet (Integer): Likewise. + (NonNegativeInteger): Likewise. + * algebra/outform.spad.pamphlet: Likewise. + * algebra/si.spad.pamphlet (SingleInteger): Likewise. + * algebra/syntax.spad.pamphlet (Syntax): Likewise. + +2010-05-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-coerce.boot (getSubDomainPredicate): Use compileInteractive. + +2010-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (Boolean): Remove reference to + Lisp. Use builtin functions. + +2010-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (getExternalSymbolMode): Allow Lisp as + foreign language. + (checkExternalEntity): Likewise. + (compSignatureImport): Likewise. Give foreign variables dummy values. + * interp/c-util.boot (middleEndExpand): Handle %true and %false. + * interp/g-util.boot (expandToVMForm): Likewise. + +2010-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add support for 'property' builtin function. + * interp/g-timer.boot: Rename property to prop to avoid conflict. + * boot/parser.boot (bpAssignLHS): Allow functional places to + assign to. + * boot/ast.boot (bfPlace): New. + (bfAssign): Handle %Place forms. + * boot/tokens.boot: property is now translated to GET. + +2010-05-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: args is now a selector. + * interp/g-timer.boot: Use integer? in lieu of INTP. + * interp/i-syscmd.boot: Likewise. + * interp/msgdb.boot: Likewise. + +2010-05-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (eval): Define here. + * interp/br-con.boot: Use it. + * interp/br-op1.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/server.boot: Likewise. + * interp/showimp.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/sys-macros.lisp (eval): Move to sys-utility.boot. + +2010-05-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-macros.lisp (eval): Expand opcodes before calling EVAL. + * interp/slam.boot (reportFunctionCompilation): Tidy. Take extra + care when generating code that access global variables. + (reportFunctionCacheAll): Likewise. + * interp/i-util.boot (isLocallyBound): Define. + * interp/i-spec1.boot (upCOLLECT1): Bind $iteratorVars to nil. + (upLoopIterSTEP): Call mkIteratorVariable instead of mkLocalVar. + (upLoopIterIN): Likewise. + (upStreamIterIN): Likewise. + (upStreamIterSTEP): Likewise. + (collectOneStream): Tidy. + (mkAndApplyPredicates): Likewise. + (mkIterFun): Lose last parameter. Tidy. + (declare): Use isLocallyBound. + (getAndEvalConstructorArgument): Likewise. + (mkIteratorVariable): New. + ($iteratorVars): New. + * interp/i-spec2.boot (upREPEAT1): Bind $iteratorVars to nil. + (isLocalPred): Use isLocallyBound. + (compileIs): Likewise. + (evalLETput): Likewise. + (evalLETchangeValue): Likewise. + (isType): Likewise. + * interp/i-analy.boot (bottomUp): Likewise. + (bottomUpDefaultCompile): Likewise. + * interp/i-eval.boot (evalForm): Likewise. + (getMappingArgValue): Likewise. + * interp/i-map.boot (findLocalVars1): Likewise. + (findLocalsInLoop): Tidy. Filter out iterator variables. + (isLocalVar): Remove. + * interp/g-util.boot (mkCacheName): Define here. + (mkAuxiliaryName): Likewise. + * interp/c-util.boot (backendCompileSLAM): Use mkCacheName. + (backendCompileSPADSLAM): Likewise. + * interp/clam.boot (compClam): Likewise. + (clearCategoryCaches): Likewise. + (clearCategoryCache): Likewise. + * interp/g-timer.boot (timedEVALFUN): expandToVMForm is now + implicitly called by eval. + +2010-05-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-map.boot (compileCoerceMap): Minivectors are global + variables. Generate appropriate code. + * interp/i-spec1.boot (compileTargetedADEF): Likewise. + (compileADEFBody): Likewise. + * interp/slam.boot (isRecurrenceRelation): Likewise. Adjust + patterns to match minivectors. + (mkDiffAssoc): Likewise. + (reportFunctionCompilation): Don't declare minivectors. + +2010-05-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/slam.boot (compileRecurrenceRelation): Generate code to + access and set the global value of the variable holding the cache + state. + * interp/g-util.boot: Add more middle end form expanders. + +2010-05-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Automatically translate alphabetic?, digit?, + lowerCase?, upperCase?, readByte, readInteger, readLine, + writeByte, writeLine. + * interp/as.boot: Use them. + * interp/bc-matrix.boot: Likewise. + * interp/bc-solve.boot: Likewise. + * interp/br-con.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/database.boot: Likewise. + * interp/format.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/guess.boot: Likewise. + * interp/ht-root.boot: Likewise. + * interp/htcheck.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/int-top.boot: Likewise. + * interp/intfile.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/pf2sex.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/scan.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/sys-utility.boot: Likewise. + * interp/topics.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/word.boot: Likewise. + +2010-05-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot ($ClearBodyToken): New constant. + * interp/define.boot (compDefineCapsuleFunction): Use it in place + of special character. + (spadCompileOrSetq): Likewise. + * interp/i-map.boot (addMap): Likewise. + (getUserIdentifiersIn): Likewise. + * interp/wi1.boot (spadCompileOrSetq): Likewise. + +2010-05-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot: Add expanders for %lt, %le, %gt, %ge, %not, + %and, %or, and %bind forms. + * interp/c-util.boot (mutateToBackendCode): Handle LET and LET* forms. + * interp/nrungo.boot (NRTisRecurrenceRelation): Move to ... + * interp/slam.boot: Here. Remove NRT prefix. + (compileRecurrenceRelation): Generate forms using middle-end opcodes. + +2010-05-25 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * interp/i-spec2.boot (evalREPEAT): Generate %repeat forms. + (interpREPEAT): Likewise. + * interp/i-spec1.boot (interpCOLLECT): Generate %collect forms. + * interp/i-map.boot (findLocalVars1): Handle %repeat forms the + same as REPEAT forms. + * interp/g-opt.boot (changeThrowToExit): Don't look into %repeat + forms. + (expandInit): New. + (expandLoop): New. abstract from expandCollect. + (expandCollect): Use it. Rework. + (expandRepeat): New. + +2010-05-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot: Implement expansion of %collect forms. + * interp/c-util.boot (middleEndExpand): Tidy. + * interp/g-opt.boot (changeThrowToExit): Don't look into %collect + forms. + * interp/i-map.boot (getUserIdentifiersIn): Factorize. Handle + %collect forms same as COLLECT forms. + (findLocalVars1): Likewise. + * interp/i-spec1.boot (evalCOLLECT): Now generate %collect forms. + (checkForFreeVariables): Factorize. Handle %collect forms same as + COLLECT forms. + +2010-05-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (expandToVMForm): New. Export. + (getOpcodeExpander): move to here from c-util.boot. + ($middleEndOpcodes): Likewise. + +2010-05-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-object.boot (object): New. Abstract over boilerplate. + * interp/i-analy.boot: Use it in place of boilerplate. + * interp/i-eval.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-spec2.boot: Likewise. + +2010-05-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot ($middleEndOpcodes): New. + (getOpcodeExpander): Likewise. + (middleEndExpand): Use it to expand middle end opcodes. + +2010-05-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-spec1.boot (compileADEFBody): Establish a dynamic + binding for $freeVariables and $boundVariables. + (mkIterFun): Likewise. + (mkIterZippedFun): Likewise. + +2010-05-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: gensym is now candidate for renaming. + * boot/ast.boot: Replace GENSYM with gensym. + * interp/buildom.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/clammed.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/define.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/macex.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/parse.boot: Likewise. + * interp/pf2atree.boot: Likewise. + * interp/pf2sex.boot: Likewise. + * interp/postpar.boot: Likewise. + * interp/ptrees.boot: Likewise. + * interp/server.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/sys-constants.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + +2010-05-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * input/collect.input.pamphlet: Remove bogus expression. + +2010-05-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot (npDefinitionItem): Consider a declaration as + a definition item too. + * interp/i-map.boot (addDefMap): Don't confuse constant + with niladic functions. + * interp/pf2sex.boot (pfDefinition2Sex): Don't be confused by + typed constant definitions. + +2010-05-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/ptrees.boot (pfWith): Now a function of two arguments. + (pfWithWithon): Remove. + (pfDefinableName?): New. + (pfCheckItOut): Use it. + * interp/cparse.boot (npWith): Simplify. + * interp/pf2sex.boot (pfWith2Sex): Adjust. + (pfAdd2Sex): Tidy. + +2010-05-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot (npQuiver): Redefine. Now send Application + to Application. + (npTypedForm): Replace Application with Quiver. + (npTypified): Likewise. + (npTagged): Use npTypedForm not npTypedForm1. + (npDiscrim): Now extend Relation, not Quiver. + (npMdef): Allow same LHS as npDef. + (npSingleRule): Likewise. + * boot/ast.boot: Replace CONCAT with strconc. Replace SYMBOL-NAME + with PNAME. + * boot/scanner.boot: Likewise. + * boot/translator.boot: Likewise. + +2010-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Add %Leave ast node. + (bfLeave): New. + * boot/parser.boot (bpLeave): Use it. + +2010-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (translateToplevelExpression): Tidy. + +2010-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot: Clean up. + +2010-05-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/fnewmeta.lisp: Remove out-of-date META grammar. + (PARSE-LabelExpr): Remove. + * interp/newaux.lisp: Remove Nud property for << and >>. + +2010-05-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/as.boot: Clean up. + * interp/br-util.boot: Likewise. + * interp/category.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/define.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/wi2.boot: Likewise. + +2010-05-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-util.boot (flattenCOND): Move from g-boot.boot. + (extractCONDClauses): Likewise. + * interp/g-boot.boot: Remove. + * interp/def.lisp: Likewise. + * interp/Makefile.pamphlet: Adjust dependencies. + +2010-05-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/property.lisp: Clean up. + +2010-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp ($ConstructorCache): Declare. + * interp/bootlex.lisp: Fix use of SETELT. + * interp/macros.lisp: Likewise. + * interp/preparse.lisp: Likewise. + * interp/spad.lisp: Likewise. + * interp/vmlisp.lisp: Likewise. + +2010-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (shoeCompTran1): Handle %Leave expressions. + * boot/parser.boot (bpReturn): Parse leave-expressions too. + * interp/mark.boot (markInsertBodyParts): properly escape Boot + keywords. + +2010-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (SETELT): Remove. + * interp/br-data.boot: Remove use of SETELT. + * interp/br-saturn.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/nruncomp.boot: Likewise. + +2010-05-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (hashTable): Define. + * interp/word.boot: Use it. + * interp/topics.boot: Likewise. + * interp/sys-driver.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/scan.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/i-toplev.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/htcheck.boot: Likewise. + * interp/guess.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/database.boot: Likewise. + * interp/compress.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/br-op2.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-con.boot: Likewise. + * interp/sys-globals.boot ($ConstructorCache): Move elsewhere. + ($instantRecord): Likewise. + * algebra/newdata.spad.pamphlet: Use EQUAL as equality function + for hash table. + * algebra/table.spad.pamphlet: Call hashTable builtin function + instead of MAKE-HASHTABLE. + +2010-05-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add support for interpreter-style anonymous function. + * interp/compiler.boot (compUnnamedMapping): New. + (gatherParameterList): Likewise. + (compLambda): Likewise. + +2010-05-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (freeVarUsage): New. Split out of + compWithMappingMode. + (finishLambdaExpression): Likewise. + (compWithMappingMode): Restructure. + +2010-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add lambda expression syntax to Boot. + * boot/parser.boot (bpLambda): New. + * boot/ast.boot (bfLambda): New. + * boot/tokens.boot: Add "+->" as token. + * interp/cparse.boot: Use lambda expression syntax. + * interp/c-util.boot: Likewise. + +2010-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Don't rename 'car', 'cdr', and PAIRP. + +2010-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/bc-solve.boot: Move cleanups. + * interp/br-con.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/cparse.boot: Likewise. + * interp/cstream.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/g-timer.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/htcheck.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-toplev.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/incl.boot: Likewise. + * interp/int-top.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/intfile.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/macex.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/nrungo.boot: Likewise. + * interp/pathname.boot: Likewise. + * interp/profile.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/ptrees.boot: Likewise. + * interp/scan.boot: Likewise. + * interp/sys-os.boot: Likewise. + * interp/sys-utility.boot: Likewise. + * interp/wi1.boot: Likewise. + +2010-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Don't rename 'cons'. + * interp/msg.boot: Remove uses of cons. + * interp/postpar.boot: Likewise. + * interp/types.boot: Likewise. + +2010-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Miscellaneous cleanup. + * boot/includer.boot: Likewise. + * boot/parser.boot: Likewise. + * boot/pile.boot: Likewise. + * boot/scanner.boot: Likewise. + * boot/translator.boot: Likewise. + +2010-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cattable.boot: Replace call to CONS with bracket syntax. + * interp/clammed.boot: Likewise. + * interp/cparse.boot: Likewise. + * interp/dq.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/g-boot.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-object.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/incl.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/rulesets.boot: Likewise. + * interp/scan.boot: Likewise. + * interp/termrw.boot: Likewise. + * interp/wi2.boot: Likewise. + +2010-05-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot: Replace call to cons with bracket syntax. + * interp/cstream.boot: Likewise. + * interp/database.boot: Likewise. + * interp/define.boot: Likewise. + * interp/g-boot.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/incl.boot: Likewise. + * interp/int-top.boot: Likewise. + * interp/macex.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/pile.boot: Likewise. + * interp/posit.boot: Likewise. + * interp/ptrees.boot: Likewise. + * interp/scan.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/types.boot: Likewise. + +2010-05-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Replace uses of rplac with explicit + assignments to first and rest fields. + * interp/compiler.boot: Likewise. + * interp/define.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/wi1.boot: Likewise. + +2010-05-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/wi2.boot: Remove more RPLACA and RPLACD uses. + * interp/topics.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/i-toplev.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/g-cndata.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/dq.boot: Likewise. + * interp/define.boot: Likewise. + * interp/database.boot: Likewise. + * interp/cparse.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-data.boot: Likewise. + +2010-05-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/as.boot: Replace uses of RPLACA and RPLACD with explicit + assignment to first and rest fields. + * interp/astr.boot: Likewise. + * interp/br-con.boot: Likewise. + * interp/br-data.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/buildom.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/compress.boot: Likewise. + * interp/cparse.boot: Likewise. + * interp/cstream.boot: Likewise. + * interp/database.boot: Likewise. + * interp/define.boot: Likewise. + * interp/dq.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/guess.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-object.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/packtran.boot: Likewise. + * interp/showimp.boot: Likewise. + * interp/termrw.boot: Likewise. + * interp/topics.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/wi2.boot: Likewise. + * interp/word.boot: Likewise. + +2010-05-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpArgumentList): New. + (bpParenthesizedApplication): Use it. New. + (bpPrimary1): Use it to implement function call with explicit + parenthesis as primary. + (bpOperator): Remove. + (bpAssignLHS): Rework. Allow field path after function call. + * boot/translator.boot: Remove debugging statement. + * interp/as.boot: Adjust to new syntax. + * interp/br-con.boot: Likewise. + * interp/br-data.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/category.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/define.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/trace.boot: Likewise. + +2010-05-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Replace uses of rplac with explicit assignments. + * interp/compiler.boot: Likewise. + * interp/define.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * lisp/core.lisp.in ($FilesToRetain): New. Export. + * lisp/Makefile.in: Tidy. + * boot/translator.boot (retainFile?): New. + (compileBootHandler): Use it. + +2010-05-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/as.boot: Miscellaneous cleanup. + * interp/ax.boot: Likewise. + * interp/br-con.boot: Likewise. + * interp/br-prof.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/clammed.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/database.boot: Likewise. + * interp/cstream.boot: Likewise. + * interp/define.boot: Likewise. + * interp/diagnostics.boot: Likewise. + * interp/format.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-boot.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-intern.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/nrungo.boot: Likewise. + * interp/pathname.boot: Likewise. + * interp/pf2atree.boot: Likewise. + * interp/pf2sex.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/record.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + +2010-05-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Miscellaneous cleanup. + * boot/includer.boot: Likewise. + * boot/parser.boot: Likewise. + * boot/pile.boot: Likewise. + * boot/scanner.boot: Likewise. + * boot/tokens.boot: Likewise. + * boot/translator.boot: Likewise. + +2010-05-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Translate assignment to head and tail of a list. + Remove explicit uses of RPLACA and RPLACD. + * boot/includer.boot: Likewise. + * boot/scanner.boot: Likewise. + * boot/translator.boot: Likewise. + +2010-05-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/wi2.boot: Replace INTEGERP, STRINGP, SYMBOLP, CONSP with + integer?, string?, symbol?, and cons? respectively. + * interp/wi1.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/sys-utility.boot: Likewise. + * interp/showimp.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/record.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/postpar.boot: Likewise. + * interp/posit.boot: Likewise. + * interp/pf2sex.boot: Likewise. + * interp/pf2atree.boot: Likewise. + * interp/parse.boot: Likewise. + * interp/packtran.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/nrungo.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/msg.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/match.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/int-top.boot: Likewise. + * interp/i-toplev.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-object.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-intern.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-eval.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/htcheck.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/ht-root.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/g-error.boot: Likewise. + * interp/g-boot.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/format.boot: Likewise. + * interp/diagnostics.boot: Likewise. + * interp/define.boot: Likewise. + * interp/compress.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/clammed.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/cformat.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/category.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/buildom.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-op2.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-data.boot: Likewise. + * interp/br-con.boot: Likewise. + * interp/bc-util.boot: Likewise. + * interp/ax.boot: Likewise. + * interp/as.boot: Likewise. + * boot/translator.boot: Likewise. + * boot/ast.boot: Likewise. + * boot/includer.boot: Likewise. + * boot/tokens.boot: Add new replacement for integer?, string?, + symbol? and cons? + +2010-05-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (setqSingle): Ignore $QuickLet. + * interp/wi1.boot (setqSingle): Likewise. + +2010-05-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compSetq1): Call self, not compSetq. + * interp/c-util.boot (isAtomicForm): Move to g-util.boot. + * interp/g-opt.boot (optSEQ): Splice toplevel PROGN forms. + * interp/g-util.boot (isAtomicForm): Move from c-util.boot. Export. + +2010-05-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Change middle-end instruction "call" to + "%Call". + * interp/compiler.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + +2010-05-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot: Miscellaneous cleanup. + * interp/g-opt.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/wi2.boot: Likewise. + +2010-05-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (backendCompileSPADSLAM): Generate more + readable Lisp code. + +2010-05-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineCategory2): Tidy. + +2010-05-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (setqSingle): Tidy. + +2010-05-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Generate more readable code for functor definitions. + * interp/nruncomp.boot (washFunctorBody): New. + (buildFunctor): Use it. + * interp/g-opt.boot (optBind): New. + (optLIST): Likewise. + +2010-05-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (canReturn): Tidy. + +2010-05-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (isSubset): Expand domain representation form. + * algebra/term.spad.pamphlet (retractIfCan$Arity): Tidy. + * algebra/tree.spad.pamphlet (cyclicCopy2$Tree): Remove + unnecessary "return". + +2010-04-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (getSuccessEnvironment): Move to here from + compiler.boot. + (getInverseEnvironment): Likewise. + * interp/wi2.boot (getSuccessEnvironment): Remove. + (getInverseEnvironment): Likewise. + (corrupted?): Likewise. + (unLet): Likewise. + +2010-04-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/macros.lisp (|check-subtype|): Return coerced value if can. + (|check-union|): Likewise. + * interp/compiler.boot (coerceSuperset): Tidy. Generate %Retract + instruction. + * interp/g-opt.boot (optRetract): New. + +2010-04-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/carten.spad.pamphlet (CartesianTensor): Satisfy + instantiation of Eltable. + * algebra/clifford.spad.pamphlet (QuadraticForm): Likewise. + * algebra/domain.spad.pamphlet (DomainTemplate): Likewise. + * algebra/files.spad.pamphlet (Library): Likewise. + * algebra/aggcat.spad.pamphlet (LinearAggregate): Extend + instantiation of Eltable. + * algebra/naalg.spad.pamphlet (FiniteRankNonAssociativeAlgebra): + Likewise. + * algebra/pscat.spad.pamphlet (UnivariatePowerSeriesCategory): + Likewise. + * algebra/sex.spad.pamphlet (SExpressionCategory): Likewise. + * algebra/Makefile.pamphlet: Update rules. + +2010-04-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/aggcat.spad.pamphlet: Tidy. + +2010-04-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/partperm.spad.pamphlet (PartitionsAndPermutations): Move + partitions to domain Partitions. + * algebra/cycles.spad.pamphlet (CycleIndicators): User partitions + from Partition. Tidy. + +2010-04-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/prtition.spad.pamphlet (parts$Partition): New. + (partitions$Partition): Likewise. + +2010-04-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/young.spad.pamphlet: New. + +2010-04-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/irsn.spad.pamphlet (IrrRepSymNatPackage): Tidy. + * algebra/partperm.spad.pamphlet (PartitionsAndPermutations): Likewise. + * algebra/cycles.spad.pamphlet (complete$CycleIndicators): Now + take only positive integers. + (powerSum$CycleIndicators): Likewise. + (elementary$CycleIndicators): Likewise. + (alternating$CycleIndicators): Likewise. + (cyclic$CycleIndicators): Likewise. + (dihedral$CycleIndicators): Likewise. + (graphs$CycleIndicators): Likewise. + +2010-04-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (joinIntegerModes): New. + (compIntegerValue): Likewise. + (compStepIterator): Likewise. + (compIterate): Use it. + +2010-04-18 Alfredo Portes <doyenatccny@gmail.com> + + * hyper/Makefile.in : Remove linking to X11 library for htadd. + +2010-04-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/cycles.spad.pamphlet (CycleIndicators): Clean up. + (complete$CycleIndicators): Argument type is now NonNegativeInteger. + (powerSum$CycleIndicators): Likewise. + (elementary$CycleIndicators): Likewise. + (alternating$CycleIndicators): Likewise. + (cyclic$CycleIndicators): Likewise. + (dihedral$CycleIndicators): Likewise. + (graphs$CycleIndicators): Likewise. + +2010-04-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/term.spad.pamphlet (TermAlgebraOperator): New. + +2010-04-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/prtition.spad.pamphlet (powers$Partition): Take a + Partition as argument. Remove local function 'bite'. + Make powers iterative. + +2010-04-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/prtition.spad.pamphlet (powers$Partition): Return list + of pairs. + +2010-04-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/prtition.spad.pamphlet (Partition): Simplify + implementation. Reuse operations available from the + representation domain. + +2010-04-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (atoms$PropositionalFormula): + Rename from terms. + +2010-04-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (isAtom$PropositionalFormula): + Rename from isTerm. + (simplify$PropositionalFormulaFunctions1): New. + +2010-04-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (BooleanLogic): New. + (PropositionalLogic): Extend it. + * algebra/aggcat.spad.pamphlet (BitAggregate): Likewise. + * algebra/si.spad.pamphlet (SingleInteger): Assert membership to + BooleanLogic. + +2010-04-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (PropositionalFormulaFunctions1): New. + (PropositionalFormulaFunctions2): Likewise. + +2010-04-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot ($ClosedIOMode): New. + * algebra/files.spad.pamphlet (closed$IOMode): Likewise. + +2010-03-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/any.spad.pamphlet (Property): Tidy. + (Environment): Likewise. Rename setProperty! to putProperty. + Rename setProperties! to putProperties. + +2010-03-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/compiler.spad.pamphlet: Add more IR contructor + functions. Elaborate definitions. + +2010-03-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/compiler.spad.pamphlet (InternalRepresentationForm): Tidy. + (InternalTypeForm): Likewise. + (CompilerPackage): Expand. + +2010-03-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/compiler.spad.pamphlet: New. + (InternalTypeForm): New. + (Elaboration): New. + +2010-03-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (InternalRepresentationForm): New. + +2010-03-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (genDeltaEntry): Take a second, environment + argument. Pass to compOrCroak. + * interp/compiler.boot (compElt): Adjust call to genDeltaEntry. + (compCase1): Likewise. + (coerceByModemap): Likewise. + (autoCoerceByModemap): Likewise. + (compCat): Likewise. + (compViableModemap): Take an additional environment argument. + Pass it to genDeltaEntry. + (compApplyModemap): Adjust call to compViableModemap. + (compResolveCall): Likewise. + +2010-03-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (needToQuoteFlags?): New. + (optDeltaEntry): Use it. + +2010-03-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($VMsideEffectFreeOperators): New. + ($simpleVMoperators): Augment it. + (semiSimpleRelativeTo?): New. + (isSimpleVMForm): Use it. + * interp/c-util.boot (forwardingCall?): New. + (usesVariablesLinearly?): Likewise. + (expandableDefinition?): Likewise. + (foldSpadcall): Tidy. + (foldExportedFunctionReferences): If a function is discovered to + be expandable, make it so. + * interp/define.boot (spadCompileOrSetq): Tidy. + +2010-03-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (optDeltaEntry): Silently fail for domains + that are not instantiations. + +2010-03-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($optimizeRep): Define. + * interp/sys-driver.boot (initializeGlobalState): Sey domain + representation inlining if requested. + * interp/c-util.boot (setCompilerOptimizations): Set domain + representation inlining if at optimization level 3. + * algebra/constant.spad.pamphlet (AlgebraicNumber): Remove + assignment to Rep. Tidy. + * algebra/Makefile.pamphlet: Add dependencies. + +2010-03-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (nominateForInlining): New. + (optimizableDomain?): Likewise. + (optCallSpecially): Use it + * interp/compiler.boot (processInlineRequest): Likewise. + * interp/nruncomp.boot (optDeltaEntry): Likewise. + * interp/wi2.boot (optDeltaEntry): Likewise. + +2010-03-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (isSymbol): Remove. + * interp/compiler.boot (compAtom): Don't use it. + * interp/wi1.boot (compAtom): Likewise. + +2010-03-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (quoteMinimally): New. + (registerFunctionReplacement): Likewise. + * interp/define.boot (spadCompileOrSetq): Use it. + * interp/g-opt.boot (optSpecialCall): Likewise. + * interp/nruncomp.boot (optDeltaEntry): Likewise. + * interp/spad.lisp (|knownEqualPred|): Likewise. + * interp/wi2.boot (optDeltaEntry): Likewise. + +2010-03-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/vector.spad.pamphlet (maxIndex$Vector): Define. + +2010-02-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet + (conjunction$PropositionalFormula): New exported function. + (disjunction$PropositionalFormula): Likewise. + +2010-02-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/modemap.boot (augModemapsFromCategoryRep): Remove + assignment to $base. + (augModemapsFromCategory): Likewise. + +2010-02-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (genDeltaEntry): Don't store extraneous + item on $NRTdeltaList. + (NRTgetLocalIndex): Likewise. Tidy. + +2010-02-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Expand support for domain inlining to non-niladic functors. + * interp/compiler.boot (processInlineRequest): Now accept any + functor. + * interp/c-util.boot (lookupFunctionInstance): New. + (isFormal): Likewise. + (expandFormTemplate): Likewise. + (equalFormTemplate): Likewise. + (getFunctionTemplate): Likewise. + (lookupInheritedDefiningFunction): Likewise. + (lookupDefiningFunction): Likewise. + * interp/nruncomp.boot (optDeltaEntry): Tidy. Use + lookupDefiningFunction. + +2010-02-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (PropositionalFormula): + Reimplement in terms of kernels. + * algebra/Makefile.pamphlet ($(OUT)/KERNEL.$(FASLEXT)): New + dependence rule. + ($(OUT)/PROPFRML.$(FASLEXT)): Likewise. + (axiom_algebra_layer_19): Move PROPFRML to... + (axiom_algebra_layer_6): ...here. + +2010-02-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-constants.boot ($SystemInlinableConstructorNames): + Include Void. + * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include VOID. + (axiom_algebra_layer_14): Loose it. + +2010-02-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/aggcat.spad.pamphlet: Remove unnecessary call to void. + * algebra/algext.spad.pamphlet: Likewise. + * algebra/catdef.spad.pamphlet: Likewise. + * algebra/curve.spad.pamphlet: Likewise. + * algebra/d01agents.spad.pamphlet: Likewise. + * algebra/d02agents.spad.pamphlet: Likewise. + * algebra/ffcg.spad.pamphlet: Likewise. + * algebra/ffhom.spad.pamphlet: Likewise. + * algebra/ffnb.spad.pamphlet: Likewise. + * algebra/ffp.spad.pamphlet: Likewise. + * algebra/formula.spad.pamphlet: Likewise. + * algebra/fortmac.spad.pamphlet: Likewise. + * algebra/fortpak.spad.pamphlet: Likewise. + * algebra/fortran.spad.pamphlet: Likewise. + * algebra/forttyp.spad.pamphlet: Likewise. + * algebra/generic.spad.pamphlet: Likewise. + * algebra/kl.spad.pamphlet: Likewise. + * algebra/mathml.spad.pamphlet: Likewise. + * algebra/newdata.spad.pamphlet: Likewise. + * algebra/out.spad.pamphlet: Likewise. + * algebra/permgrps.spad.pamphlet: Likewise. + * algebra/pfo.spad.pamphlet: Likewise. + * algebra/regset.spad.pamphlet: Likewise. + * algebra/routines.spad.pamphlet: Likewise. + * algebra/setorder.spad.pamphlet: Likewise. + * algebra/sups.spad.pamphlet: Likewise. + * algebra/symbol.spad.pamphlet: Likewise. + * algebra/tex.spad.pamphlet: Likewise. + +2010-02-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compAtomWithModemap): Reject niladic + functions used as constants. + * algebra/aggcat.spad.pamphlet (IndexedAggregate): Add parenthesis + for call to niladic function 'void'. + * algebra/algext.spad.pamphlet (SimpleAlgebraicExtension): Likewise. + * algebra/curve.spad.pamphlet (RadicalFunctionField): Likewise. + (AlgebraicFunctionField): Likewise. + * algebra/permgrps.spad.pamphlet (PermutationGroup): Likewise. + * algebra/pfo.spad.pamphlet (FunctionSpaceReduce): Likewise. + * algebra/setorder.spad.pamphlet: Likewise. + * algebra/ffcat.spad.pamphlet (FiniteFieldCategory): Add + parenthesis for call to niladic function 'representationType'. + * algebra/ffnb.spad.pamphlet + (FiniteFieldNormalBasisExtensionByPolynomial): Likewise for + normalElement. + * algebra/float.spad.pamphlet (Float): Likewise for OMencodingXML, + pi, log2, log10, digits. + * algebra/fnla.spad.pamphlet (FreeNilpotentLie): Likewise for + dimension. + * algebra/fraction.spad.pamphlet (Fraction): Likewise for + OMencodingXML. + * algebra/gaussian.spad.pamphlet (Complex): Likewise. + * algebra/integer.spad.pamphlet (Integer): Likewise. + * algebra/list.spad.pamphlet (List): Likewise. + * algebra/sf.spad.pamphlet (DoubleFloat): Likewise. + * algebra/si.spad.pamphlet (SingleInteger): Likewise. + * algebra/string.spad.pamphlet (String): Likewise. + * algebra/symbol.spad.pamphlet (Symbol): Likewise. + * algebra/intrf.spad.pamphlet (TranscendentalIntegration): + Likewise for empty. + * algebra/kl.spad.pamphlet (SortedCache): Likewise for cache, void. + * algebra/newdata.spad.pamphlet (TabulatedComputationPackage): + Likewise for usingTable?. + * algebra/omserver.spad.pamphlet (OpenMathServerPackage): Likewise + for OMencodingUnknown. + * algebra/plot.spad.pamphlet (Plot): Likewise for adaptive?. + * algebra/plot3d.spad.pamphlet (Plot3D): Likewise for adaptive3D?. + +2010-02-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compAtomWithModemap): Rewrite. + (transImplementation): Remove. + +2010-02-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (transImplementation): Loose last argument. + (compAtomWithModemap): Adjust call. + +2010-02-14 Gabriel Dos Reis <gdr@cse.tamu.edu> + + Fix SF/2910351 + * interp/nruncomp.boot (deltaTran): Avoid use of user-visible + names for compiler internal tags. + (genDeltaEntry): Likewise. + (NRTassocIndex): Likewise. + (NRTgetLocalIndex): Likewise. + (NRTsubstDelta): Likewise. + * interp/wi2.boot (genDeltaEntry): Likewise. + +2010-02-14 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/sttaylor.spad.pamphlet + (revert$StreamTaylorSeriesOperations): Tidy. + +2010-02-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (~$Boolean): Work around silly bug + in CLisp-2.48. + +2010-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (NEQ): Remove. + * interp/clam.boot (lassocShift): Don't use it. + (lassocShiftWithFunction): Likewise. + (lassocShiftQ): Likewise. + +2010-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/list.spad.pamphlet (IndexedList): Don't use NEQ. + +2010-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (MRP): Remove. + (SFP): Likewise. + * interp/i-syscmd.boot (compileAsharpCmd1): Use getEnv, not GETENV. + +2010-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (RECLAIM): Don't error. + +2010-02-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in ("AxiomCore"): Use Clozure CL's package CCL. + +2010-02-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add support for CLozure CL. + * lisp/core.lisp.in: Add support for Clozure CL. + (main): Remove as unused. + * driver/utils.h (openaxiom_runtime): Add openaxiom_clozure_runtime. + * boot/translator.boot (loadNativeModule): Handle Clozure CL. + * boot/ast.boot (nativeType): Handle Clozure's FFI types. + (nativeReturnType): Likewise. + (coerceToNativeType): Likewise. + (genCLOZUREnativeTranslation): New. + (genImportDeclaration): Use it. + * interp/vmlisp.lisp (SINTP): Remove duplicate definition. + (SMINTP): Likewise. + (ZERO?): Likewise. + (GCMSG): Reorganize definition. + (BPINAME): Likewise. + +2010-02-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp: Remove conditionals on :CCL. + * interp/fname.lisp: Likewise. + * interp/foam_l.lisp: Likewise. + * interp/macros.lisp: Likewise. + * interp/nlib.lisp: Likewise. + * interp/patches.lisp: Likewise. + * interp/sfsfun-l.lisp: Likewise. + * interp/spad.lisp: Likewise. + * interp/util.lisp: Likewise. + * interp/vmlisp.lisp: Likewise. + +2010-01-03 Aleksej Saushev <asau@inbox.ru> + + * hyper/addfile.c (strpostfix): Simplify. + +2009-11-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (SpadAstExports): Add case for JoinAst. + +2009-11-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (StepAst): New. + (SpadAstExports): Add case for StepAst. + (SpadAst): Implement. + +2009-11-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-syscmd.boot (reportOpsFromUnitDirectly): Fix thinko. + +2009-11-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2893009 + * algebra/syntax.spad.pamphlet (ParameterAst): New. + (HeadAst): Use it. + * testsuite/interpreter/sf-2893009.input: Likewise. + * testsuite/interpreter/sf-2893009.spad: New. + +2009-10-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-op2.boot (pairlis): Remove. + (modemap2Sig): Use pairList. + * interp/compiler.boot (applyMapping): Likewise. + * interp/database.boot (augLisplibModemapsFromCategory): Likewise. + (getOplistForConstructorForm): Likewise. + * interp/define.boot (compDefineCategory2): Likewise. + (compDefineFunctor1): Likewise. + (mkOpVec): Likewise. + * interp/lisplib.boot (finalizeLisplib): Likewise. + * interp/nruncomp.boot (mkSlot1sublis): Likewise. + * interp/wi1.boot (compDefineCategory2): Likewise. + * interp/wi2.boot (compDefineFunctor1): Likewise. + +2009-10-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/seg.spad.pamphlet (RangeBinding): New. + (SegmentBinding): Tidy. + * algebra/exposed.lsp.pamphlet (RangeBinding): Expose. + * algebra/Makefile.pamphlet (axiom_algebra_layer_19): Include + RNGBIND. + +2009-10-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (buildFunctor): Remove $MissingFunctionInfo. + * interp/functor.boot (SetFunctionSlots): Simplify. + (SigSlotsMatch): Likewise. + (CheckVector): Remove. + (makeMissingFunctionEntry): Refer to $SetFunctions. + +2009-10-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/taylor.spad.pamphlet (InnerTaylorSeries): Now satisfies + BiModule(Coef,Coef). Remove duplicate exports. Use rep and per + operators. + +2009-10-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * share/tex/open-axiom.sty: New. + * share/Makefile.in (FILES): Update. + ($(axiom_target_texdir)/open-axiom.sty): New rule. + * lib/cfuns-c.c (oa_spawn)[__WIN32__]: Return exit status if in + overlay mode. + * include/open-axiom.h (OPENAXIOM_TEXINPUTS_PATH): Tidy. + (OPENAXIOM_BIBINPUTS_PATH): Likewise. + * driver/utils.c (print_usage): Document --execute option. + +2009-10-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/cfuns-c.c (oa_concatenate_string): Define. + * include/open-axiom.h (openaxiom_ifs): New. + (OPENAXIOM_TEXINPUTS_PATH): Likewise. + (OPENAXIOM_BIBINPUTS_PATH): Likewise. + * driver/main.c (augment_variable): New. + (upgrade_environment): Likewise. Call publish_systemdir. + (main): Call it instead of publish_systemdir. Handle 'spawn' driver. + * driver/utils.h (openaxiom_execute_driver): New kind of driver. + * driver/utils.c (openaxiom_preprocess_arguments): Tidy. + (openaxiom_execute_core): Likewise. + * sman/sman.c (process_arguments): Likewise. + (process_options): Likewise. + +2009-10-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/cfuns-c.c (oa_spawn): New. + (oa_allocate_process_argv): Likewise. + +2009-10-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot: Tidy. + +2009-10-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-syscmd.boot (reportOpsFromUnitDirectly): Tidy. + +2009-10-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/string.spad.pamphlet (hash$IndexedString): Simplify. + +2009-10-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-funsel.boot (findFunctionInDomain): Fix thinko. + +2009-10-12 Kostas Oikonomou <ko@research.att.com> + + * algebra/tex.spad.pamphlet: Update special function list. + +2009-10-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/void.spad.pamphlet (Void): Remove Rep definition. + +2009-10-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2875134 + * interp/ptrees.boot: New. + (pfIdSymbol): Use it. + (pfSymbolSymbol): Likewise. + (pfInfApplication): Likewise. + * testsuite/interpreter/sf-2875134.input: New. + +2009-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/Makefile.in (open_axiom_LDADD): Prefer libraries from build + lib/ directory. + +2009-09-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * sman/sman.c (should_I_clef): Remove. + +2009-09-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * sman/sman.c (fix_env): Simplify. + (exec_command_env): Lose second parameter. + (fork_Axiom): Take a new parameter. + (start_the_Axiom): Adjust. + (main): Likewise. + * interp/int-top.boot (printFirstPrompt?): New. + (SpadInterpretStream): Use it. + * driver/utils.h (openaxiom_allocate_command_argv): Declare. + * driver/utils.c (openaxiom_allocate_command_argv): Define. + * driver/Makefile.in (open-axiom$(EXEEXT)): Link statically. + +2009-09-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/Makefile.in (open-axiom): Link against core runtime. + * driver/main.c (publish_systemdir): Rework. + * include/cfuns.h (oa_setenv): Declare. + * lib/cfuns-c.c (oa_setenv): Define. + +2009-09-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/xpoly.spad.pamphlet (OrderedFreeMonoid): Really make an + OrderedMonoid. + +2009-09-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-util.boot (htPred2English): Espace "has". + * interp/format.boot (pred2English): Likewise. + * interp/i-spec1.boot ($specialOps): Likewise. + +2009-09-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-funsel.boot (matchMmSig): Fix thinko from revision 1297. + +2009-09-26 Gabriel Dos Reis <gdr@cse.tamu.edu> + + Fix SF/2854105 + * graph/PS/*.ps: New. + +2009-09-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/free.spad.pamphlet (FreeMonoidCategory): New. + (FreeModule): Use it. + * algebra/xpoly.spad.pamphlet (OrderedFreeMonoid): Likewise. + +2009-09-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/: More cleanup. + +2009-09-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/as.boot: Clean up. + * interp/ax.boot: Likewise. + * interp/br-con.boot: Likewise. + * interp/br-data.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-op2.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/category.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/cstream.boot: Likewise. + * interp/define.boot: Likewise. + * interp/format.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-boot.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/g-timer.boot: Likewise. + * interp/guess.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-eval.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-intern.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-object.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/int-top.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/msg.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/nrungo.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/pf2atree.boot: Likewise. + * interp/pile.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/ptrees.boot: Likewise. + * interp/scan.boot: Likewise. + * interp/sfsfun.boot: Likewise. + * interp/showimp.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/word.boot: Likewise. + +2009-09-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfMember): Improve a bit. + * boot/tokens.boot: Don't rename 'is' and 'inst'. + * boot/parser.boot: Use 'in' instead of 'MEMQ' where approrpriate. + * interp/: Likewise. + +2009-09-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfMember): New. + (bfInfApplication): Use it. + * boot/tokens.boot: Don't rename IN. + * interp/ax.boot (makeAxFile): Fix thinko. + (makeAxExportForm): Likewise. + +2009-09-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/data.spad.pamphlet (SystemInteger): Tidy. + * algebra/integer.spad.pamphlet (Integer): Likewise. + * algebra/si.spad.pamphlet (IntegerNumberSystem): Likewise. + +2009-09-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-spec2.boot (findConstantInDomain): Substitute into the + result domain. + +2009-09-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/openpty.c (ptyopen): Fix thinko. + +2009-09-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/data.spad.pamphlet (size$Byte): Implement. + (index$Byte): Likewise. + (lookup$Byte): Likewise. + (random$Byte): Likewise. + +2009-09-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/XDither.c: Tidy. + * lib/XShade.c: Likewise. + * lib/XSpadFill.c: Likewise. + * lib/bsdsignal.c: Likewise. + * lib/edin.c: Likewise. + * lib/fnct_key.c: Likewise. + * lib/util.c: Likewise. + * lib/wct.c: Likewise. + +2009-09-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: "has" is not a keyword. + * boot/ast.boot (bfHas): New. + (bfReduce): Use "has" instead "has". + (bfReduceCollect): Likewise. + (bfReName): Likewise. + (bfElt): Likewise. + (bfSetelt): Likewise. + * boot/parser.boot (bpSexpKey): Likewise. + (bpPrefixOperator): Likewise. + (bpInfixOperator): Likewise. + (bpThetaName): Likewise. + (bpIs): Parse "has" expressions. + * boot/pile.boot (shoePileCoagulate): Likewise. + * interp/: Fix unquoted use of "has". + * interp/interop.boot (has): Remove. + +2009-09-16 Kosta Oikonomou <ko@research.att.com> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + * graph/viewAlone/Makefile.in (viewAlone_LDADD): Include + $(AXIOM_X11_LDFLAGS) and $(oa_c_libs). + * graph/viewman/Makefile.in (viewman_LDADD): Likewise. + * hyper/Makefile.in (htadd_LDADD): Likewise. + * sman/Makefile.in (session_LDADD): Include $(oa_c_libs). + (spadclient_LDADD): Likewise. + (sman_LDADD): Likewise. + +2009-09-08 Anatoly Raportirenko <ram@sunct1.jinr.ru> + + * interp/boot-pkg.lisp (DFLOAT-FORMAT-GENERAL): New. + +2009-09-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Support "pointer" as simple datatype. + * interp/compiler.boot (getBasicFFIType): SystemPointer is an FFI type. + * algebra/data.spad.pamphlet (SystemPointer): New. + * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include SYSPTR. + +2009-09-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/data.spad.pamphlet: Cleanup. + * interp/compiler.boot (getBasicFFIType): Handle 64-bit integer types. + +2009-09-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfAlternative): New. Move single assignment in + pattern matching to the body of the branch. + (bfSequence): Use it. + +2009-09-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: More cleanup. + +2009-09-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cstream.boot: Cleanup. + * interp/g-boot.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/nrungo.boot: Likewise. + * interp/posit.boot: Likewise. + * interp/sys-constants.boot: Define more constants. + +2009-09-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: More cleanup. + * boot/includer.boot: Likewise. + * boot/parser.boot: Likewise. + * boot/scanner.boot: Likewise. + +2009-08-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfSequence): Simplify COND branch bodies. + +2009-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot ($sawParenthesizedHead): Remove. + (bpReturnType): Likewise. + (bpBeginParameterList): Likewise. + (bpEndParameterList): Likewise. + (bpBeginDefinition): Likewise. + (bpDefinition): Adjust. + (bpVariable): Likewise. + +2009-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfCase): Don't hold scrutinee's remaining + structure in a temporary. + (bfCI): Adjust generation of selectors. + +2009-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (%Definition): Lose one argument. + (bfDefinition): Remove. + (bfSimpleDefinition): Likewise. + (bfCompDef): Likewise. + (bfDefSequence): Likewise. + (defSheepAndGoats): Tidy. + * boot/parser.boot (bpSimpleDefinitionTail): Likewise. + (bpCompoundDefinitionTail): Likewise. + (bpDefinitionPileItems): Likewise. + (bpSemiColonDefinition): Likewise. + * boot/translator.boot (translateToplevel): Likewise. + +2009-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: More cleanup. + * boot/parser.boot: Likewise. + * boot/translator.boot: Likewise. + +2009-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Cleanup. + +2009-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (bpOutItem): Move to parser.boot. + * boot/parser.boot (bpExceptionTail): Fix typo. + (bpOutItem): Move from translator.boot. + +2009-08-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfCase): Don't introduce temporary for scrutinee + when it is already reduced. + +2009-08-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: "namespace" is now a keyword. + * boot/ast.boot (%Ast): Add %Namespace branch. + * boot/parser.boot (bpNamespace): New. + (bpComma): Adjust. + +2009-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Discontinue computation of difference between "old" and "new" Boot. + * boot/ast.boot (bfGetOldBootName): Remove. + (bfSameMeaning): Likewise. + (bfReName): Don't compute the diff between old and new Boot. + * boot/translator.boot ($translatingOldBoot): Remove. + (AxiomCore::%sysInit): Don't set it. + +2009-08-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Consistently prefix AST names by "%". + * boot/translator.boot: Adjust. + * boot/parser.boot: Likewise. + +2009-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Retire "^" as negation operator. + * interp/br-search.boot: Use "not" instead of "^". + * interp/br-util.boot: Likewise. + * interp/database.boot: Likewise. + * interp/define.boot: Likewise. + * interp/format.boot: Likewise. + * interp/g-error.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/spad-parser.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + +2009-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (deltaContour): Fix thinko. + +2009-08-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compAtom): Don't single out "nil". + +2009-08-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-map.boot (addMap): Fix typo from last commit. + * interp/compiler.boot (compElt): Fix thinko, one more time. + * interp/nruncomp.boot (optDeltaEntry): Don't overquote VM forms + for constants. + * algebra/algext.spad.pamphlet: Call niladic functions with empty + argument lists. + * algebra/ddfact.spad.pamphlet: Likewise. + * algebra/gpgcd.spad.pamphlet: Likewise. + * algebra/modmon.spad.pamphlet: Likewise. + * algebra/pf.spad.pamphlet: Likewise. + * algebra/polycat.spad.pamphlet: Likewise. + * algebra/twofact.spad.pamphlet: Likewise. + * algebra/list.spad.pamphlet: "nil" is now a ocnstant. + * algebra/string.spad.pamphlet: "space", "quote", "escape" are now + constants. + +2009-08-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Retire "^=". Introduce "~=". + * boot/ast.boot: Use "~=" instead of "^=". + * boot/includer.boot: Likewise. + * boot/translator.boot: Likewise. + * interp/as.boot: Likewise. + * interp/bc-misc.boot: Likewise. + * interp/bc-solve.boot: Likewise. + * interp/bc-util.boot: Likewise. + * interp/br-con.boot: Likewise. + * interp/br-data.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-op2.boot: Likewise. + * interp/br-prof.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/category.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/clammed.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/database.boot: Likewise. + * interp/define.boot: Likewise. + * interp/format.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-cndata.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/g-timer.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/guess.boot: Likewise. + * interp/ht-root.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/i-code.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-eval.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-intern.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/i-toplev.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/int-top.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/intfile.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/macex.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/match.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/msg.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/nrungo.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/parse.boot: Likewise. + * interp/pathname.boot: Likewise. + * interp/pf2atree.boot: Likewise. + * interp/pf2sex.boot: Likewise. + * interp/postpar.boot: Likewise. + * interp/profile.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/record.boot: Likewise. + * interp/scan.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/simpbool.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/topics.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + * interp/word.boot: Likewise. + +2009-08-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * OpenAxiom-1.3.0 Released. + +2009-08-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * graph/view3D/stuff3d.c (norm_dist): Set third coordinate to zero. + +2009-07-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-doc.boot (checkDecorate): Tidy. + * interp/format.boot (form2Fence1): Likewise. + (form2FenceQuote): Likewise. + +2009-07-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2798962 + * interp/c-doc.boot (checkDecorate): Don't insert formatting + braces in Spad mode. + +2009-07-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/odeef.spad.pamphlet (ElementaryFunctionODESolver): Tidy. + +2009-07-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optCatch): Lift nested functions. + +2009-07-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/metalex.lisp: "break" is now a keyword. + * interp/fnewmeta.lisp (PARSE-Jump): New. + * interp/compiler.boot (compAtom): Dipatch compilation of "break" + and "iterate" to... + (compBreak): ... here + (compIterate): and here. + (jumpFromLoop): New. + (compRepeatOrCollect): Initialize $lookKind, $iterateCount, and + $breakCount. Set exit point for loop bodies with 'iterate' + expressions. + * interp/parse.boot (parseAtom): Remove. + (parseTran): Adjust. + * algebra/outform.spad.pamphlet: Tidy. + * interp/c-util.boot ($loopKind): Declare. + ($repeatBodyLabel): Likewise. + ($iterateCount): Likewise. + ($breakCount): Likewise. + +2009-07-12 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * algebra/mkfunc.spad.pamphlet + (mkDefun$MakeFloatCompiledFunction): Tidy. + * interp/c-util.boot (declareUnusedParameters): New. + * interp/i-map.boot: Use it. + * interp/i-spec1.boot: Likewise. + * interp/slam.boot: Likewise. + * lib/cfuns-c.c (writeablep): Document MinGW/MSYS bug work around. + +2009-07-10 Alfredo Portes <doyenatccny@gmail.com> + + * lib/cfuns-c.c (writeablep): Use function LocalFree() + in Windows instead of free(). + +2009-07-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2815437 + * algebra/mkfunc.spad.pamphlet: + +2009-07-06 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * interp/compiler.boot (localReferenceIfThere): Tidy. + * interp/g-util.boot (homogeneousListToVector): New. + * interp/g-opt.boot (optCollectVector): Use it. + +2009-07-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * src/algebra/poly.spad.pamphlet (PolynomialRing): Remove unused + bogus times! function. + +2009-07-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (coerceEasy): Don't pretend we can make + matter our of void. + * algebra/indexedp.spad.pamphlet + (IndexedDirectProductAbelianMonoid): Tidy. + (IndexedDirectProductAbelianGroup): Likewise. + * src/algebra/poly.spad.pamphlet (PolynomialRing): Fix thinko. + +2009-07-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/matstor.spad.pamphlet (copyCol!): Return Void. + +2009-07-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (AxiomCore::%sysInit): Have CLISP not be + overreading on floating point contagion warning. + +2009-07-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot ($middleEndMacroList): Remove COLLECTV. + * interp/compiler.boot: Don't register compiler for COLLECTV forms. + (compReduce1): Don't test for COLLECTV. + (localReferenceIfThere): New. + (compRepeatOrCollect): Use it. Tidy. + (compCollectV): Remove. + (compIteratorV): Likewise. + (computeMaxIndex): Likewise. + (exprDifference): Likewise. + * interp/g-opt.boot (optCollectVector): New. Register as + back end tranformer. + * interp/sys-macros.lisp (COLLECTV): Remove. + +2009-07-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (simplifySEQ): New. + (transformToBackendCode): Use it. + +2009-07-03 Gabriel Dos Reis <gdr@cse.tamu.edu> + + * interp/sys-macros.lisp (PRIMVEC2ARR): Remove. + (COLLECTVEC): Likewise. + * interp/compiler.boot (compRepeatOrCollect): Tidy. + +2009-07-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Support ECL-based build profiling. + * lisp/Makefile.in (edit): Substitute for oa_enable_profiling. + * lisp/core.lisp.in ($EnableLispProfiling): New. + (compileLispFile): Use it. + +2009-07-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-macros.lisp (COLLECTV): Use setSimpleArrayEntry, not + SETELT. + +2009-06-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-spec1.boot (checkForFreeVariables): Emit + getSimpleArrayEntry instead of ELT. + +2009-06-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/bootlex.lisp (spad): Don't bind $noSubsumption. + * interp/i-spec1.boot (evalCOLLECT): Fix thinko. + +2009-06-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (SigOpsubsume): Remove as unused. + (SourceLevelSubsume): Remove. + (SourceLevelSubset): Likewise. + * interp/sys-globals.boot: Likewise. + * interp/define.boot: Tidy. + * interp/functor.boot: Likewise. + * interp/info.boot: Likewise. + * algebra/si.spad.pamphlet: Don't set $noSubsets. + * algebra/fortpak.spad.pamphlet: Don't set $noSubsumption. + * algebra/fortran.spad.pamphlet: Likewise. + * algebra/gdirprod.spad.pamphlet: Likewise. + * algebra/mkfunc.spad.pamphlet: Likewise. + * algebra/oct.spad.pamphlet: Likewise. + * algebra/vector.spad.pamphlet: Likewise. + +2009-06-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/domain.spad.pamphlet: ConstructorCall is now + parameterized by the constructor category. + +2009-06-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (doItConditionally): New. + (doIt): Use it for capsule-level conditional expressions. + +2009-06-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2396945 + * interp/scan.boot: '@@' is no longer a keyword. + * interp/cparse.boot (npColonQuery): Remove. + * interp/parse.boot (parseAtAt): Likewise. + * interp/postpar.boot (postAtAt): Likewise. + +2009-06-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2806053 + * lisp/Makefile.in: Remove generated files when cleaning. + * interp/Makefile.pamphlet: Add executable extensions if appropriate. + +2009-06-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (spadCompileOrSetq): Tidy. + * interp/fnewmeta.lisp (PARSE-Sexpr1): Disable negative integers + in data. A facility not actually used in Spad code. + +2009-06-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/fnewmeta.lisp (PARSE-Scheme): Tidy. + * interp/format.boot (dollarPercentTran): Translate T$ too. + (application2String): Handle quasiquotations. + * interp/postpar.boot (killColons): Don't remove quantified variables. + +2009-06-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/any.spad.pamphlet (Any): Remove domainOf, objectOf, and + showTypeInOutput. Tidy. + * algebra/fortran.spad.pamphlet: Coerce Any objects to Output; + don't use objectOf. + +2009-06-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add support for existential type recovery. + * interp/compiler.boot (compRecoverDomain): New. Split from + compRecoverGuard. + (compRecoverGuard): Split. Handle existential type recovery. + (compScheme): New. Register as compiler. + * interp/g-opt.boot (optLET*): New. Turn into LET-form if + appropriate. Register as backend transformer. + * interp/fnewmeta.lisp (|PARSE-Scheme|): New. + (|PARSE-Quantifier|): Likewise. + (|PARSE-QuantifiedVariableList|): Likewise. + (|PARSE-QuantifiedVariable|): Likewise. + * interp/metalex.lisp (KEYWORDS): Add 'forall' and 'exist' as new + keywords. + * interp/newaux.lisp: Register parser for expression schemes. + * algebra/any.spad.pamphlet (=$Any): If the underlying domain has + BasicType, use that equality operator. + (coerce$Any): If the underlying domain has CoercibleTo OutputForm + then use it. + +2009-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/any.spad.pamphlet (AnyFunctions1): Remove `pretend' + shenanigans. Use is-case pattern matching. + * interp/g-opt.boot (varIsAssigned): New. + (canInlineVarDefinition): New. + (optLET): Use it to inline functionally used local variables. + Register as backend optimizer. + +2009-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-constants.boot ($defaultOptimizationLevel): New. + * interp/sys-driver.boot (initializeGlobalState): Use it for + default initialization level. + +2009-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Support multiple scrutinee in is-case pattern matching. + * interp/compiler.boot (compRetractGruard): Rename from + compRetractAlternative. Split. + (compRecoverGuard): Rename from compRecoverAlternative. Split. + (compAlternativeGuardItem): New. Use them. + (compAlternativeGuard): New. + (compMatchAlternative): New. Split from compMatch. + (compMatchScrutinee): Likewise. + (defineMatchScrutinee): Likewise. + (compMatch): Rework. + +2009-06-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/utils.c (openaxiom_execute_core): Workaround GCL oddity. + +2009-06-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-coerce.boot: Revert previous patch. + * interp/i-funsel.boot: Likewise. + +2009-06-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Support retract of domains. + * interp/i-funsel.boot (findFunctionInDomain): Don't look into + categories. + * interp/i-coerce.boot (retract): Retract domain objects too. + (retract1): Do it. + (coerceInteractive): Likewise. + * interp/nrunfast.boot (getDomainCategoriesVector): New. + (getDomainCompleteCategories): Likewise. + +2009-06-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/: Don't quote '!' at end of names. + +2009-06-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/: Remove quotes from operator namaes in signatures. + +2009-06-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/newaux.lisp: Remove digraphs '(<' and '>) as alternate + spelling for '{' and '}'. + * interp/fnewmeta.lisp (|PARSE-Primary1|): Use PARSE-Data for + quoted forms. + (|PARSE-Sexpr1|): Tidy. + * interp/parse.boot (washOperatorName): New. Issue deprecation + diagnostics for string syntax for operator names in signatures. + (parseHas): Use it. + (transCategoryItem): Likewise. + * interp/metalex.lisp (advance-token): Likewise. + * algebra/boolean.spad.pamphlet: Tidy. + +2009-06-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/info.boot (actOnInfo): Don't remember new domain names if + at capsule function scope. + +2009-06-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parse.boot (parseDropAssertions): Remove. + (parseCategory): Don't call it. + * interp/nrungo.boot (lookupPred): Don't check for "asserted". + +2009-06-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parse.boot (parseHas): Preserve unnamed category forms. + * interp/i-funsel.boot (hasCaty): Recursively look into Joins. + * interp/interop.boot (newHasCategory): Likewise. + * interp/compiler.boot (compHasFormat): Handle unnamed categories. + * interp/info.boot (knownInfo): Likewise. + +2009-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-coerfn.boot (Expr2Up): Fix regression introduced by + name$Kernel removal. + +2009-06-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compLogicalNot): Tidy. + * interp/define.boot (doIt): Tidy conditional case. + * boot/tokens.boot: 'fourth' is a now a builtin function. + +2009-06-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/kl.spad.pamphlet (Kernel): Tidy. + +2009-06-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2799773 + * interp/c-util.boot (diagnoseUnknownType): Diagnose duplicate + fields in Record or Union, or duplicate constants in Enumeration. + * interp/i-eval.boot (checkRecordOrUnionFields): New. + (evaluateType): Use it. + * testsuite/interpreter/sf-2799773.input: New. + +2009-06-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/kl.spad.pamphlet (name$Kernel): Remove. + * algebra/d01weights.spad.pamphlet: Adjust. + * algebra/fs2expxp.spad.pamphlet: Likewise. + * algebra/fs2ups.spad.pamphlet: Likewise. + * algebra/fspace.spad.pamphlet: Likewise. + * algebra/limitps.spad.pamphlet: Likewise. + * algebra/transsolve.spad.pamphlet: Likewise. + +2009-06-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/domain.spad.pamphlet (DomainTemplate): New. + (FunctorData): Likewise. + (functorData$DomainConstructor): Likewise. + +2009-06-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Simplify compiler ast for `return' expressions. + * interp/parse.boot (parseReturn): Remove. + * interp/compiler.boot (compReturn): Tidy. + +2009-06-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2799238 + * algebra/syntax.spad.pamphlet (SpadAst): Fix typo. + +2009-06-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compGreaterThan): Remove. + * interp/parse.boot (parseGreaterEqual): Likewise. + +2009-06-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compGreaterThan): New. Compile + greater-than expressions. + * interp/parse.boot (parseGreaterThan): Remove. + * algebra/data.spad.pamphlet (Byte): Implement all comparison + functions. + * algebra/integer.spad.pamphlet (Integer): Likewise. + * algebra/sf.spad.pamphlet (DoubleFloat): Likewise. + * algebra/si.spad.pamphlet (SingleInteger): Likewise. + * algebra/string.spad.pamphlet (Character): Likewise. + +2009-05-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/term.spad.pamphlet (is?$OperatorCategory): New. + * algebra/op.spad.pamphlet (BasicOperator): Don't export is? here. + Inherit it from OperatorCategory Symbol. + * algebra/catdef.spad.pamphlet (LeftLinearSet): New category. + (RightLinearSet): Likewise. + (LinearSet): Likewise. + (AbelianGroup): Extend LeftLinearSet Integer. + (LeftModule): Extend LeftLinearSet R. + (Module): Extend LinearSet R. + (RightModule): Extend RightLinearSet R. + * algebra/exposed.lsp.pamphlet: Expose LeftLinearSet, + RightLinearSet, and LinearSet. + * algebra/Makefile.pamphlet: Tidy. + +2009-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (SetCategory): Provide default + definition for before?. + +2009-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/complet.spad.pamphlet (OnePointCompletion): Define before?. + +2009-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/algext.spad.pamphlet: Qualify `characteristic'. + * algebra/clifford.spad.pamphlet: Likewise. + * algebra/complet.spad.pamphlet: Likewise. + * algebra/contfrac.spad.pamphlet: Likewise. + * algebra/curve.spad.pamphlet: Likewise. + * algebra/ddfact.spad.pamphlet: Likewise. + * algebra/derham.spad.pamphlet: Likewise. + * algebra/equation2.spad.pamphlet: Likewise. + * algebra/ffcat.spad.pamphlet: Likewise. + * algebra/ffcg.spad.pamphlet: Likewise. + * algebra/fff.spad.pamphlet: Likewise. + * algebra/ffnb.spad.pamphlet: Likewise. + * algebra/ffp.spad.pamphlet: Likewise. + * algebra/ffpoly.spad.pamphlet: Likewise. + * algebra/ffx.spad.pamphlet: Likewise. + * algebra/fmod.spad.pamphlet: Likewise. + * algebra/fortmac.spad.pamphlet: Likewise. + * algebra/fr.spad.pamphlet: Likewise. + * algebra/fraction.spad.pamphlet: Likewise. + * algebra/fspace.spad.pamphlet: Likewise. + * algebra/gaussian.spad.pamphlet: Likewise. + * algebra/gpol.spad.pamphlet: Likewise. + * algebra/intclos.spad.pamphlet: Likewise. + * algebra/interval.spad.pamphlet: Likewise. + * algebra/laurent.spad.pamphlet: Likewise. + * algebra/matrix.spad.pamphlet: Likewise. + * algebra/modring.spad.pamphlet: Likewise. + * algebra/oct.spad.pamphlet: Likewise. + * algebra/opalg.spad.pamphlet: Likewise. + * algebra/padic.spad.pamphlet: Likewise. + * algebra/perman.spad.pamphlet: Likewise. + * algebra/pf.spad.pamphlet: Likewise. + * algebra/pfr.spad.pamphlet: Likewise. + * algebra/poly.spad.pamphlet: Likewise. + * algebra/polycat.spad.pamphlet: Likewise. + * algebra/puiseux.spad.pamphlet: Likewise. + * algebra/quat.spad.pamphlet: Likewise. + * algebra/radix.spad.pamphlet: Likewise. + * algebra/reclos.spad.pamphlet: Likewise. + * algebra/resring.spad.pamphlet: Likewise. + * algebra/sf.spad.pamphlet: Likewise. + * algebra/si.spad.pamphlet: Likewise. + * algebra/solvefor.spad.pamphlet: Likewise. + * algebra/sups.spad.pamphlet: Likewise. + * algebra/taylor.spad.pamphlet: Likewise. + * algebra/vector.spad.pamphlet: Likewise. + * algebra/xpoly.spad.pamphlet: Likewise. + +2009-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2798220 + * algebra/fmod.spad.pamphlet (IntegerMod): Define before? + * algebra/ffp.spad.pamphlet (FiniteFieldExtensionByPolynomial): + Likewise. + * algebra/pf.spad.pamphlet (InnerPrimeField): Likewise. + * testsuite/interpreter/sf-2798220.input: New. + +2009-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (getSuccessEnvironment): Tidy. + (getInverseEnvironment): Likewise. + (compLogicalNot): Don't normalize to if-statement. + +2009-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compVector): Tidy code generation. + (checkExternalEntity): Handle Builtin external entities. + (compSignatureImport): Likewise. + * algebra/boolean.spad.pamphlet (Boolean): Import Lisp function + from Foreign Builtin. + (KleeneTrivalentLogic): The constant `true' and `false' are now + inherited. + +2009-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (PropositionalLogic): Now export + `true' and `false'. + (Boolean): Inherit them. + +2009-05-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/newaux.lisp: Bot / and /\ are gliphs. + * interp/sys-constants.boot ($OperatorFunctionNames): Include /\ + and \/. + * interp/fnewmeta.lisp (|PARSE-ReductionOp|): Tidy. + * interp/metalex.lisp (|PARSE-OperatorFunctionName|): Likewise. + * algebra/boolean.spad.pamphlet (PropositionalLogic): Use plain + syntax for operators. + (Logic): Likewise. + (Boolean): Likewise. + (KleeneTrivalentLogic): Likewise. + +2009-05-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-constants.boot ($OperatorFunctionNames): New. + * interp/metalex.lisp (|PARSE-OperatorFunctionName|): New. Use it. + * interp/fnewmeta.lisp (|PARSE-Category|): Handle operator + function names. + +2009-05-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/kl.spad.pamphlet (KernelFunctions2): Remove OrderedSet + requirements. + * algebra/op.spad.pamphlet (BasicOperatorFunctions1): Likewise. + +2009-05-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Partial fix for AW/193 and AW/334. + * algebra/algfunc.spad.pamphlet: Remove OrderedSet requirements. + * algebra/combfunc.spad.pamphlet: Likewise. + * algebra/defintef.spad.pamphlet: Likewise. + * algebra/defintrf.spad.pamphlet: Likewise. + * algebra/degred.spad.pamphlet: Likewise. + * algebra/efstruc.spad.pamphlet: Likewise. + * algebra/elemntry.spad.pamphlet: Likewise. + * algebra/expexpan.spad.pamphlet: Likewise. + * algebra/expr.spad.pamphlet: Likewise. + * algebra/expr2ups.spad.pamphlet: Likewise. + * algebra/exprode.spad.pamphlet: Likewise. + * algebra/fortran.spad.pamphlet: Likewise. + * algebra/fr.spad.pamphlet: Likewise. + * algebra/fraction.spad.pamphlet: Likewise. + * algebra/fs2expxp.spad.pamphlet: Likewise. + * algebra/fspace.spad.pamphlet: Likewise. + * algebra/funcpkgs.spad.pamphlet: Likewise. + * algebra/gaussian.spad.pamphlet: Likewise. + * algebra/genups.spad.pamphlet: Likewise. + * algebra/intalg.spad.pamphlet: Likewise. + * algebra/intef.spad.pamphlet: Likewise. + * algebra/integrat.spad.pamphlet: Likewise. + * algebra/intpm.spad.pamphlet: Likewise. + * algebra/irexpand.spad.pamphlet: Likewise. + * algebra/kl.spad.pamphlet: Likewise. + * algebra/laplace.spad.pamphlet: Likewise. + * algebra/limitps.spad.pamphlet: Likewise. + * algebra/liouv.spad.pamphlet: Likewise. + * algebra/manip.spad.pamphlet: Likewise. + * algebra/nlode.spad.pamphlet: Likewise. + * algebra/odeef.spad.pamphlet: Likewise. + * algebra/oderf.spad.pamphlet: Likewise. + * algebra/openmath.spad.pamphlet: Likewise. + * algebra/patmatch1.spad.pamphlet: Likewise. + * algebra/patmatch2.spad.pamphlet: Likewise. + * algebra/pfo.spad.pamphlet: Likewise. + * algebra/polycat.spad.pamphlet: Likewise. + * algebra/primelt.spad.pamphlet: Likewise. + * algebra/rdeef.spad.pamphlet: Likewise. + * algebra/rdesys.spad.pamphlet: Likewise. + * algebra/rule.spad.pamphlet: Likewise. + * algebra/solverad.spad.pamphlet: Likewise. + * algebra/sum.spad.pamphlet: Likewise. + * algebra/transsolve.spad.pamphlet: Likewise. + * testsuite/interpreter/aw-193.input: New. + * testsuite/interpreter/aw-334.input: Likewise. + +2009-05-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (before?$SetCategory): New. + +2009-05-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot (npQuantified): New. + (npType): Use it. + (npDefinitionOrStatement): Likewise. Accept quantified expressions. + (npMatch): Remove. + (npDef): Adjust. + (npMonoType): Likewise. + (npDiscrim): Recognize 'is' and 'isnt' patterns. + +2009-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (LIST2VEC): Tidy. + +2009-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-analy.boot (bottomUpDefaultEval): A declared variable + with no definition may be a symbolic variable with a specified type. + +2009-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/curve.spad.pamphlet: Use literal symbols. + * algebra/defintef.spad.pamphlet: Likewise. + * algebra/defintrf.spad.pamphlet: Likewise. + * algebra/divisor.spad.pamphlet: Likewise. + * algebra/efstruc.spad.pamphlet: Likewise. + * algebra/exprode.spad.pamphlet: Likewise. + * algebra/fspace.spad.pamphlet: Likewise. + * algebra/intaf.spad.pamphlet: Likewise. + * algebra/intef.spad.pamphlet: Likewise. + * algebra/integrat.spad.pamphlet: Likewise. + * algebra/intpm.spad.pamphlet: Likewise. + * algebra/laplace.spad.pamphlet: Likewise. + * algebra/limitps.spad.pamphlet: Likewise. + * algebra/liouv.spad.pamphlet: Likewise. + * algebra/odeef.spad.pamphlet: Likewise. + * algebra/oderf.spad.pamphlet: Likewise. + * algebra/rdeef.spad.pamphlet: Likewise. + * algebra/symbol.spad.pamphlet: Likewise. + * algebra/transsolve.spad.pamphlet: Likewise. + +2009-05-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/op.spad.pamphlet: Use symbol literals for property names. + +2009-05-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot (npTyping): Remove. + (npDefaultItemlist): Likewise. + (npSDefaultItem): Likewise. + (npDefaultItem): Likewise. + (npDefaultDecl): Likewise. + (npStatement): Don't call npTyping. + (npDefinitionItem): Likewise. + +2009-05-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/op.spad.pamphlet (assert$BasicOperator): Remove overload + with String parameter, + +2009-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/any.spad.pamphlet: Tidy. Redeuce Lisp usage. + +2009-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/algfunc.spad.pamphlet (AlgebraicFunction): User + Identifiers for property names. + * algebra/combfunc.spad.pamphlet: Likewise. + * algebra/constant.spad.pamphlet: Likewise. + * algebra/efstruc.spad.pamphlet: Likewise. + * algebra/elemntry.spad.pamphlet: Likewise. + * algebra/expr.spad.pamphlet: Likewise. + * algebra/fspace.spad.pamphlet: Likewise. + * algebra/intef.spad.pamphlet: Likewise. + * algebra/integrat.spad.pamphlet: Likewise. + * algebra/kl.spad.pamphlet: Likewise. + * algebra/laplace.spad.pamphlet: Likewise. + * algebra/limitps.spad.pamphlet: Likewise. + * algebra/liouv.spad.pamphlet: Likewise. + * algebra/rdeef.spad.pamphlet: Likewise. + * algebra/pfo.spad.pamphlet: Likewise. + * algebra/op.spad.pamphlet: Likewise. + * algebra/odeef.spad.pamphlet: Likewise. + * algebra/manip.spad.pamphlet: Likewise. + +2009-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/expr.spad.pamphlet (FunctionSpaceAttachPredicates): Tidy. + (FunctionSpaceAssertions): Likewise. + * algebra/op.spad.pamphlet (BasicOperator): Tidy. + (CommonOperators): Likewise. + +2009-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/op.spad.pamphlet (assert$BasicOperator): Overload for + Identifier. + +2009-05-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/any.spad.pamphlet (RuntimeValue): New domain. + * algebra/Makefile.pamphlet ($(OUT)/RTVALUE.$(FASLEXT)): New rule. + +2009-05-14 Michael Becker <Michael.Becker@coconet.de> + + Fix SF/2790725 (take 2) + * driver/main.c (main): Set LC_ALL to C. + * hyper/ex2ht.c (main): Likewise. + * hyper/htadd.c (main): Likewise. + * hyper/hthits.c (main): Likewise. + * hyper/hyper.c (main): Likewise. + * hyper/spadbuf.c (main): Likewise. + * clef/edible.c (main): Likewise. + * sman/session.c (main): Likewise. + * sman/sman.c (main): Likewise. + * sman/spadclient.c (main): Likewise. + +2009-05-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/kl.spad.pamphlet (SortedCache): Use Reference List S. + +2009-05-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2790725 + * driver/main.c (main): Set locale to nothing. + * hyper/ex2ht.c (main): Likewise. + * hyper/htadd.c (main): Likewise. + * hyper/hthits.c (main): Likewise. + * hyper/hyper.c (main): Likewise. + * hyper/spadbuf.c (main): Likewise. + * clef/edible.c (main): Likewise. + * sman/session.c (main): Likewise. + * sman/sman.c (main): Likewise. + * sman/spadclient.c (main): Likewise. + +2009-05-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/kl.spad.pamphlet (MakeCachableSet): Remove. + * algebra/Makefile.pamphlet (axiom_algebra_layer_6): Don't build it. + +2009-05-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/property.lisp: "not" is prefix operator with "not " for + rendering. + * interp/i-output.boot ($allClassicOps): Include not. + * algebra/boolean.spad.pamphlet (PropositionalFormula): Rework. + +2009-05-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot: Don't load imported modules when + bootstrapping. + +2009-05-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Cope with SBCL-1.0.28 improvements. + * boot/translator.boot (translateToplevel): Load imported modules. + * boot/ast.boot ($constantIdentifiers): New. + ($activeNamespace): Likewise. + (bfSimpleDefinition): Likewise. + (isDynamicVariable): Likewise. + (shoeCompTran1): Tidy. Use it. + * boot/parser.boot (bpSimpleDefinitionTail): Use bfSimpleDefinition. + * boot/Makefile.in (stage1/%.clisp): Specify load directory. + (stage2/%.clisp): Likewise. + * lisp/core.lisp.in (startCompileDuration): Export. + (endCompileDuration): Likewise. + +2009-05-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nrunopt.boot (makeGoGetSlot): Adjust call to + makeCompactSigCode. + (makeCompactDirect1): Likewise. + (makeCompactSigCode): Drop second parameter. + +2009-05-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (emitIndirectCall): New. + (optCall): Use it. + (optSpecialCall): Likewise. + (optSPADCALL): Tidy. + +2009-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/term.spad.pamphlet (zero?$Arity): New. + (one?$Arity): Likewise. + * algebra/op.spad.pamphlet (BasicOperator): Now belongs to + OperatorCategory(Symbol). + (operator$BasicOperator): One more overload. + * algebra/expr.spad.pamphlet (operator$Expression): Tidy. + * algebra/fspace.spad.pamphlet (elt$ExpressionSpace): Likewise. + * algebra/kl.spad.pamphlet (kernel$Kernel): Likewise. + +2009-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compApplication): Tidy. + +2009-05-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/op.spad.pamphlet (property$BasicOperator): Overload with + a version that takes an identifier. + (deleteProperty$BasicOpetrator): Likewise. + (setProperty$BasicOperator): Likewise. + +2009-05-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2785271 + * interp/sys-constants.boot ($Primitives): Remove. + * interp/br-con.boot (conOpPage1): Replace $Primitives by + $DomainNames. + (dbShowConsDoc1): Likewise. + * interp/buildom.boot ($nonLisplibDomains): Likewise. + * interp/br-op2.boot (kFormatSlotDomain): isConstructorName. + * interp/br-saturn.boot (bfConform1): Handle string literals as + constructor arguments. + +2009-04-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (canCacheLocalDomain): Remove dead code. + +2009-04-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compComma): Supply element type for tuple + construction. + * interp/i-coerfn.boot (L2Tuple): Likewise. + * interp/i-object.boot (asTupleNew): Likewise. + (asTupleNew0): Likewise. + (asTupleNewCode): Likewise. + (asTupleNewCode0): Likewise. + * interp/i-spec1.boot (evalCOLLECT): Likewise. + (interpCOLLECT): Likewise. + * interp/i-spec2.boot (evalTuple): Likewise. + (upNullTuple): Likewise. + +2009-04-26 Gabriel Dos Reis <gdr@cs.tamu.edu>> + + Fix SF/2781848 + * interp/daase.lisp (make-databases): Build glossary files too. + * interp/br-data.boot (buildGloss): gloss.text now lives in doc/. + * interp/br-search.boot (grepSource): Likewise. + * interp/ht-root.boot (htGlossPage): Likewise. + * etc/Makefile.in (openaxiom_glossfiles): New. + (mostlyclean-local): Remove them too. + (stamp-databases): Now copy glossary files too. + * doc/Makefile.in ($(OUT)/gloss.text): New rule. + (stamp): Make it a prerequisite. + * Makefile.pamphlet (all-databases): Make all-doc a prerequisite. + (all-hyper-post): Likewise. + * doc/gloss.text: Resurect. + +2009-04-26 Gabriel Dos Reis <gdr@cs.tamu.edu>> + + * interp/sys-macros.lisp (makeSimpleArrayFromList): New. + * algebra/array1.spad.pamphlet (construct$PrimitiveArray): Implement. + (copy$PrimitiveArray): Likewise. + (IndexedOneDimensionalArray): Rework. Explicitly use + PrimitiveArray(S) as representation domain. + +2009-04-26 Gabriel Dos Reis <gdr@cs.tamu.edu>> + + * algebra/domain.spad.pamphlet (Constructor): Use Identifier. + +2009-04-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/newpoint.spad.pamphlet (point$Point): Call vector$Vector. + * algebra/array1.spad.pamphlet (fill!$PrimitiveArray): Use builtin + operation. + +2009-04-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/strap/PRIMARR.lsp: Remove. + +2009-04-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (new$Identifier): New. + +2009-04-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/strap/ULSCAT.lsp: Remove. + +2009-04-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/strap/UPOLYC.lsp: Remove. + * algebra/strap/UPOLYC-.lsp: Likewise. + +2009-04-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/strap/PSETCAT-.lsp: Remove. + * algebra/strap/PSETCAT.lsp: Likewise. + +2009-04-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/strap/TSETCAT.lsp: Remove. + * algebra/strap/TSETCAT-.lsp: Likewise. + +2009-04-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (extendsCategoryForm): Use current category + body instead of previous previous version of it. + * algebra/Makefile.pamphlet: Remove ES from bootstrap layer. + Build it (and dependencies) at layer 1. + * algebra/strap/ES.lsp: Remove. + * algebra/strap/ES-.lsp: Likewise. + * algebra/boolean.spad.pamphlet (Boolean): Don't use outputForm. + +2009-04-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot ($IOFormDomains): New. + (compAtom): Allow implicit coercion to IO forms for values of + fundamental types. + (compSymbol): Likewise. + (compQuote): Likewise. + * algebra/aggcat.spad.pamphlet (coerce$BinaryRecursiveAggregate): + Don't hard code empty bracket. + +2009-04-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-constants.boot ($SystemInlinableConstructorNames): + Include Identifier. + * interp/compiler.boot (compElt): Fix up 0 and 1 shenannigan. + * algebra/boolean.spad.pamphlet (Reference): Use Identifier. + * algebra/Makefile.pamphlet (axiom_algebra_bootstrap): Remove REF. + (axiom_algebra_bootstrap_last_layer): Likewise. + * algebra/strap/REF.lsp: Remove. + +2009-04-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.pamphlet: Move aggregates to layer 0. + +2009-04-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.pamphlet: Move Fortran domains to user layer. + +2009-04-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-constants.boot ($Identifier): New. + * interp/compiler.boot (compQuote): Use the target mode if appropriate. + * interp/i-spec2.boot (upQUOTE): Likewise. + * algebra/syntax.spad.pamphlet: Use Identifier in lieu of Symbol. + +2009-04-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-con.boot: Use textEditor() to get editor program. + * interp/br-saturn.boot: Likewise. + * interp/compat.boot: Likewise. + * interp/i-util.boot (textEditor): Define here. + * interp/g-util.boot: Likewise. + +2009-04-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/msgdb.boot (substituteSegmentedMsg): Handle %x specifier. + +2009-04-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (genECLnativeTranslation): Tidy. + (genSBCLnativeTranslation): Likewise. + * interp/compiler.boot (emitLocalCallInsn): Likewise. + (compForm1): Allow package call to external function. + (compElt): Likewise. + (getExternalSymbolMode): New. + (compForeignPackageCall): Likewise. + +2009-04-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/any.spad.pamphlet (Binding): Define Rep. Tidy. + (Contour): Likewise. + (findBinding$Contour): Now return Maybe Binding. + (findBinding$Scope): Likewise. + (getProperties$Environment): Just return List Binding. + (interactiveEnv$Environment): New. + +2009-04-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/mkfunc.spad.pamphlet (tuplify$InputForm): Tidy. + * interp/i-output.boot (parms2String): New. + (inputForm2String): Handle anonymous functions. + +2009-04-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/mkfunc.spad.pamphlet (InputForm): Remove assignment to Rep. + (convert): Use per and rep operators. + * algebra/stap: Updated cached Lisp translation. + +2009-04-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2757715 + * Makefile.pamphlet (all-input): Make all-doc a requirement. + (all-doc): Tidy. + * doc/Makefile.in: Likewise. Install help files. + * doc/help: New. Home for help files. + +2009-04-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2763053 + * interp/sys-os.boot ($NaNvalue): Remove. + (quietDoubleNaN): Import. + * include/cfuns.h (quiet_double_NaN): Rename from NANQ. + * lib/cfuns-c.c (quiet_double_NaN): Likewise. + * algebra/draw.spad.pamphlet: Replace $NaNvalue with quietDoubleNaN. + * algebra/plot.spad.pamphlet: Likewise. + * algebra/plot3d.spad.pamphlet: Likewise. + +2009-04-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2760823 + * interp/sys-driver.boot (systemMain): Explicitly call toplevel + REPL for SBCL- and ECL-based builds. + * interp/i-toplev.boot (start): Don't special case SBCL here. + * interp/int-top.boot (spad): Likewise. + (intloop): Tidy call to SpadInterpretStream. + (SpadInterpretStream): Don't store to $fn. + * interp/msg.boot (toFile?): Don't check for $fn. + +2009-04-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2760553 + * lisp/core.lisp.in (associateRequestWithFileType): Remember + FILE-TYPE as default value for REQUEST. + (|processCommandLine|): Standard options have length at least 2. + (|handleCommandLine|): Use default file type if non is present. + +2009-04-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2760823 + * interp/int-top.boot (spad): Return 0 for when SBCL is base Lisp + runtime. + * interp/i-toplev.boot (start): Likewise. + +2009-04-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2760560 + * driver/utils.h (openaxiom_driver): Add openaxiom_null_driver. + Document all of them. + * driver/utils.c (print_line): New. + (print_version): Print version information. + (print_usage): Print option documentation. + (openaxiom_preprocess_arguments): Handle --help and --version. + * driver/main.c (main): Do nothing for the null driver. + * sman/sman.c (process_arguments): Accept long form of options. + +2009-04-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2757748 + * hyper/Makefile.in (${OUTLIB}/htsearch): Insist on execution bit. + (${OUTLIB}/presea): Likewise. + +2009-04-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2754400 + * interp/setvars.boot (setOutputFortran): Transform pathname from + symbol to string. + * testsuite/interpreter/sf-2754400.input: New. + +2009-04-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2749682 + * interp/sys-os.boot ($NaNvalue): Fix typo. + * testsuite/interpreter/sf-2749682.input: New. + +2009-04-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2564917 + * lisp/core.lisp.in: Default the read to DOUBLE-FLOAT for floating + point literals. + * boot/translator.boot (BOOTTOCLLINES): Don't set it here. + +2009-04-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/scan.boot (scanCheckRadix): Take the radix in string form. + Croak on missing digit after radix. + (scanNumber): Don't ask for implicit 0 completion for explicit + radix integers. + * interp/int-top.boot (phInterpret): Don't bother evaluating + expressions if earlier phases saw errors. + * interp/msg.boot (getStFromMsg): Fix typo. + +2009-04-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Support more ISO C sized integer type in FFI. + +2009-03-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (nativeType): Accept int16 and int32. + (getFFIDatatype): Accept ReadWrite modifier. + * algebra/data.spad.pamphlet (Int32): New. + (UInt64): Likewise. + * algebra/Makefile.pamphlet (axiom_algebra_layer_7): Include INT64 + and UINT64. + +2009-03-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * clef/edible.c (main): Properly null-terminate varargs call. + +2009-03-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/fnewmeta.lisp (PARSE-Import): Parse extern entity + signature import. + * interp/functor.boot (encodeLocalFunctionName): New. + * interp/define.boot (compDefine1): Avoid getAbbreviation. + (doIt): Handle %SignatureImport nodes. + * interp/compiler.boot (emitLocalCallInsn): New. + (applyMapping): Use it. + (compApplication): Likewise. + (bootDenotation): New. + (getBasicFFIType): Likewise. + (getFFIDatatype): Likewise. + (getBootType): Likewise. + (checkExternalEntityType): Likewise. + (checkExternalEntity): Likewise. + (removeModifiers): Likewise. + (compSignatureImport): Likewise. + * interp/vmlisp.lisp (|compileLispDefinition|): New. + * interp/boot-pkg.lisp: Import genImportDeclaration. + * boot/initial-env.lisp: Export genImportDeclaration. + * boot/ast.boot: Tidy. Accept `readwrite' modifier. + +2009-03-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (modeIsAggregateOf): Use RepIfRepHack. + * interp/g-opt.boot (optimizeFunctionDef): Tidy. + * interp/i-syscmd.boot (compileSpad2Cmd): Support ')report' option. + * interp/sys-driver.boot (initializeGlobalState): Likewise. + +2009-03-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot (optimize): Remove non-qualified + interpretation of 'false' and 'true'. + (optCond): Emit 'NOT', not 'NULL'. + (optIF2COND): Likewise. + (EqualBarGensym): Tidy. + +2009-03-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compTopLevel): Initialize list of + optimizable domain constructors. + (processInlineRequest): New. + * interp/define.boot (spadCompileOrSetq): Tidy. + (mutateToNothing): New. + (doIt): Use it. Add support for inline directives. + * interp/fnewmeta.lisp (PARSE-Inline): New. + * interp/metalex.lisp (KEYWORDS): Include 'inline'. + +2009-02-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (genDeltaEntry): Return optimized + implementation after slot allocation. + * share/algebra: Update databases. + * algebra/strap: Update cached Lisp translation. + +2009-02-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (NRTPARSE): Remove. + (mkCategoryPackage): Remove dead code. + (compDefineFunctor1): Tidy. + (compDefineCapsuleFunction): Likewise. + (compileCases): Likewise. + +2009-02-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in ($ECLVersionNumber): New. + * boot/ast.boot (genECLnativeTranslation): Use it. + +2009-02-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compAtom): Don't interpret 'nil' as empty + vector. + (compSymbol): Don't interpret 'true' and 'false' as Boolean + constants if domain Boolean is not in scope. + * algebra/any.spad.pamphlet (Property): Tidy. + * algebra/asp.spad.pamphlet (Asp34): Likewise. + * algebra/functions.spad.pamphlet (BasicFunctions): Likewise. + * algebra/lodop.spad.pamphlet (OppositeMonogenicLinearOperator): + Likewise. + * algebra/groebsol.spad.pamphlet: Import Boolean. + +2009-02-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/util.lisp (MAKESPAD): Remove. + (MAKELIB): Likewise. + (tr): Likewise. + (MAKE-TAGS-FILE): Likewise. + (SPADTAGS-FROM-DIRECTORY): Likewise. + (SPADTAGS-FROM-FILE): Likewise. + (WRITE-TAG-LINE): Likewise. + (FINDTAG): Likewise. + (MATCH-LISP-TAG): Likewise. + (BLANKCHARP): Likewise. + +2009-02-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/msgdb.boot: Avoid SETANDFILEQ. + +2009-02-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compRetractAlternative): Don't store + pointers to the environment. + (compRecoverAlternative): Likewise. + (compMatch): Likewise. + (compIterator): Likewise. + (compIteratorV): Likewise. + * interp/define.boot (checkRepresentation): Likewise. + * interp/info.boot (actOnInfo): Likewise. + +2009-02-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (%hostByteOrder): Make a function. + * algebra/system.spad.pamphlet (hostByteOrder$System): Adjust call. + +2009-02-19 Aleksej Saushev <asau@inbox.ru> + + * lib/openpty.c: Include <sys/types.h> when testing for openpty. + +2009-02-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (characteristic$Ring): Make a + constant. + * algebra/naalgc.spad.pamphlet + (characteristic$NonAssociativeRing): Likewise. + +2009-02-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parse.boot (parseHas): Constants are not attributes. + * interp/compiler.boot (compHasFormat): Handle signature for + constants too. + * interp/info.boot (actOnInfo): Likewise. + * algebra/data.spad.pamphlet (sample$Byte): Make a constant. + (SystemInteger): Export constant 'sample'. + (SystemNonNegativeInteger): Likewise. + * algebra/aggcat2.spad.pamphlet (FiniteLinearAggregateFunctions2): + Use 'sample' or 'random' elements when allocating new aggregates. + +2009-02-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/data.spad.pamphlet (ByteBuffer): Tidy. Manage size + explicitly. + * algebra/net.spad.pamphlet (writeBytes!$InetClientStreamSocket): + Convert buffer to array before calling VM function. + (readBytes!$InetClientStreamSocket): Likewise. + * interp/sys-utility.boot (makeByteBuffer): Don't ask for fill + pointers. + +2009-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/openpty.c: #include <sys/ioctl.h>, <termios.h>, and + <libutil.h> where available. + +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. + (findConstructor$Constructor): Take constant type as argument. + (upDollar): Tidy. + +2009-02-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/103 + * algebra/catdef.spad.pamphlet (exquo$EuclideanDomain): Return 0 + if first argument is 0. + * algebra/integer.spad.pamphlet (exquo$Integer): Remove. + * testsuite/interpreter/aw-103.input: New. + +2009-02-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/66 + * algebra/zerodim.spad.pamphlet: Restore use of one? + * algebra/updivp.spad.pamphlet: Likewise. + * algebra/unifact.spad.pamphlet: Likewise. + * algebra/triset.spad.pamphlet: Likewise. + * algebra/tools.spad.pamphlet: Likewise. + * algebra/suts.spad.pamphlet: Likewise. + * algebra/sttaylor.spad.pamphlet: Likewise. + * algebra/string.spad.pamphlet: Likewise. + * algebra/sregset.spad.pamphlet: Likewise. + * algebra/si.spad.pamphlet: Likewise. + * algebra/sf.spad.pamphlet: Likewise. + * algebra/riccati.spad.pamphlet: Likewise. + * algebra/rf.spad.pamphlet: Likewise. + * algebra/regset.spad.pamphlet: Likewise. + * algebra/rderf.spad.pamphlet: Likewise. + * algebra/rdeef.spad.pamphlet: Likewise. + * algebra/quat.spad.pamphlet: Likewise. + * algebra/puiseux.spad.pamphlet: Likewise. + * algebra/pscat.spad.pamphlet: Likewise. + * algebra/prtition.spad.pamphlet: Likewise. + * algebra/prs.spad.pamphlet: Likewise. + * algebra/primelt.spad.pamphlet: Likewise. + * algebra/polycat.spad.pamphlet: Likewise. + * algebra/poly.spad.pamphlet: Likewise. + * algebra/polset.spad.pamphlet: Likewise. + * algebra/pfo.spad.pamphlet: Likewise. + * algebra/perm.spad.pamphlet: Likewise. + * algebra/pattern.spad.pamphlet: Likewise. + * algebra/padiclib.spad.pamphlet:Likewise. + * algebra/openmath.spad.pamphlet: Likewise. + * algebra/opalg.spad.pamphlet: Likewise. + * algebra/op.spad.pamphlet: Likewise. + * algebra/omerror.spad.pamphlet: Likewise. + * algebra/oderf.spad.pamphlet: Likewise. + * algebra/odeef.spad.pamphlet: Likewise. + * algebra/oct.spad.pamphlet: Likewise. + * algebra/nlinsol.spad.pamphlet: Likewise. + * algebra/newpoly.spad.pamphlet: Likewise. + * algebra/naalgc.spad.pamphlet: Likewise. + * algebra/naalg.spad.pamphlet: Likewise. + * algebra/multpoly.spad.pamphlet: Likewise. + * algebra/mring.spad.pamphlet: Likewise. + * algebra/modring.spad.pamphlet: Likewise. + * algebra/moddfact.spad.pamphlet: Likewise. + * algebra/mkfunc.spad.pamphlet: Likewise. + * algebra/matstor.spad.pamphlet: Likewise. + * algebra/matrix.spad.pamphlet: Likewise. + * algebra/matcat.spad.pamphlet: Likewise. + * algebra/manip.spad.pamphlet: Likewise. + * algebra/lodof.spad.pamphlet: Likewise. + * algebra/liouv.spad.pamphlet: Likewise. + * algebra/laplace.spad.pamphlet: Likewise. + * algebra/irexpand.spad.pamphlet: Likewise. + * algebra/intrf.spad.pamphlet: Likewise. + * algebra/intpm.spad.pamphlet: Likewise. + * algebra/intfact.spad.pamphlet: Likewise. + * algebra/integer.spad.pamphlet: Likewise. + * algebra/intclos.spad.pamphlet: Likewise. + * algebra/intaux.spad.pamphlet: Likewise. + * algebra/intalg.spad.pamphlet: Likewise. + * algebra/intaf.spad.pamphlet: Likewise. + * algebra/gpol.spad.pamphlet: Likewise. + * algebra/gpgcd.spad.pamphlet: Likewise. + * algebra/gb.spad.pamphlet: Likewise. + * algebra/gaussian.spad.pamphlet: Likewise. + * algebra/galutil.spad.pamphlet: Likewise. + * algebra/galpolyu.spad.pamphlet: Likewise. + * algebra/galfact.spad.pamphlet: Likewise. + * algebra/fspace.spad.pamphlet: Likewise. + * algebra/fs2ups.spad.pamphlet: Likewise. + * algebra/fs2expxp.spad.pamphlet: Likewise. + * algebra/free.spad.pamphlet: Likewise. + * algebra/fraction.spad.pamphlet: Likewise. + * algebra/fr.spad.pamphlet: Likewise. + * algebra/fparfrac.spad.pamphlet: Likewise. + * algebra/fortran.spad.pamphlet: Likewise. + * algebra/fmod.spad.pamphlet: Likewise. + * algebra/float.spad.pamphlet: Likewise. + * algebra/ffx.spad.pamphlet: Likewise. + * algebra/ffnb.spad.pamphlet: Likewise. + * algebra/ffcg.spad.pamphlet: Likewise. + * algebra/ffcat.spad.pamphlet: Likewise. + * algebra/exprode.spad.pamphlet: Likewise. + * algebra/expr.spad.pamphlet: Likewise. + * algebra/expexpan.spad.pamphlet: Likewise. + * algebra/elemntry.spad.pamphlet: Likewise. + * algebra/efupxs.spad.pamphlet: Likewise. + * algebra/efuls.spad.pamphlet: Likewise. + * algebra/e04routine.spad.pamphlet: Likewise. + * algebra/e04agents.spad.pamphlet: Likewise. + * algebra/divisor.spad.pamphlet: Likewise. + * algebra/derham.spad.pamphlet: Likewise. + * algebra/defintrf.spad.pamphlet: Likewise. + * algebra/defintef.spad.pamphlet: Likewise. + * algebra/defaults.spad.pamphlet: Likewise. + * algebra/d03agents.spad.pamphlet: Likewise. + * algebra/d01weights.spad.pamphlet: Likewise. + * algebra/d01routine.spad.pamphlet: Likewise. + * algebra/d01agents.spad.pamphlet: Likewise. + * algebra/curve.spad.pamphlet: Likewise. + * algebra/crfp.spad.pamphlet: Likewise. + * algebra/cont.spad.pamphlet: Likewise. + * algebra/constant.spad.pamphlet: Likewise. + * algebra/complet.spad.pamphlet: Likewise. + * algebra/combfunc.spad.pamphlet: Likewise. + * algebra/catdef.spad.pamphlet: Likewise. + * algebra/brill.spad.pamphlet: Likewise. + * algebra/array1.spad.pamphlet: Likewise. + * algebra/algfunc.spad.pamphlet: Likewise. + * algebra/algfact.spad.pamphlet: Likewise. + +2009-02-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/system.spad.pamphlet (hostByteOrder$System): New. + * algebra/data.spad.pamphlet (ByteOrder): New. + * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include BYTEORD. + +2009-02-06 Alfredo Portes <doyenatccny@gmail.com> + + * hyper/presea.in: Fix thinko. + +2009-02-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + Alfredo Portes <doyenatccny@gmail.com> + + Fix AW/236, AW/282 + * interp/sys-utility.boot (probeReadableFile): New. + * interp/nlib.lisp (probe-name): Remove. + (make-input-filename): Tidy. + * interp/lisplib.boot (readLib1): Return nil if path inexistent. + (getFileProperty): Likewise. + +2009-02-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/domain.lisp: Remove. + +2009-02-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + Waldek Hebisch <hebisch@math.uni.wroc.pl> + + Fix AW/440 + * algebra/integrat.spad.pamphlet + (integrate$FunctionSpaceComplexIntegration): Use complexIntegrate + for complex expressions. + * testsuite/aw-440.input: New. + +2009-02-04 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/441 + * algebra/defintrf.spad.pamphlet + (findRealZero$DefiniteIntegrationTools): Deal with simple zeros. + * testsuite/interpreter/aw-441.input: New. + +2009-02-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/gaussian.spad.pamphlet (ComplexCategory): Reinstate + attribute 'complex'. + * algebra/Makefile.pamphlet: Tidy. + +2009-02-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/algfunc.spad.pamphlet: Quote symbols. + * algebra/combfunc.spad.pamphlet: Likewise. + * algebra/drawopt.spad.pamphlet: Likewise. + * algebra/efstruc.spad.pamphlet: Likewise. + * algebra/elemntry.spad.pamphlet: Likewise. + * algebra/expr.spad.pamphlet: Likewise. + * algebra/exprode.spad.pamphlet: Likewise. + * algebra/float.spad.pamphlet: Likewise. + * algebra/gaussian.spad.pamphlet: Likewise. + * algebra/intaux.spad.pamphlet: Likewise. + * algebra/irexpand.spad.pamphlet: Likewise. + * algebra/laplace.spad.pamphlet: Likewise. + * algebra/limitps.spad.pamphlet: Likewise. + * algebra/liouv.spad.pamphlet: Likewise. + * algebra/list.spad.pamphlet: Likewise. + * algebra/lmdict.spad.pamphlet: Likewise. + * algebra/manip.spad.pamphlet: Likewise. + * algebra/matcat.spad.pamphlet: Likewise. + * algebra/matrix.spad.pamphlet: Likewise. + * algebra/mkfunc.spad.pamphlet: Likewise. + * algebra/mset.spad.pamphlet: Likewise. + * algebra/oct.spad.pamphlet: Likewise. + * algebra/op.spad.pamphlet: Likewise. + * algebra/patmatch1.spad.pamphlet: Likewise. + * algebra/pattern.spad.pamphlet: Likewise. + * algebra/quat.spad.pamphlet: Likewise. + * algebra/sets.spad.pamphlet: Likewise. + * algebra/transsolve.spad.pamphlet: Likewise. + * algebra/vector.spad.pamphlet: Likewise. + +2009-02-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (Boolean): Tidy. + +2009-02-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/domain.spad.pamphlet (FunctionDescriptor): New. + (OverloadSet): Likewise. + (operations$ConstructorCategory): Likewise. + * share/algebra: Update databases. + +2009-01-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.pamphlet: Tidy layer 0 dependency. + SETCAT and SETCAT- are no longer required for bootstrap. + * algebra/SETCAT.lsp: Remove. + * algebra/SETCAT-.lsp: Likewise. + +2009-01-30 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/83 + * interp/i-coerfn.boot (Dmp2P): Scalar tag is 0 for Polynomial T. + * testsuite/interpreter/aw-83.input (a): New. + +2009-01-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * OpenAxiom 1.2.1 Released. + +2009-01-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-error.boot (systemErrorHandler): Tidy. + +2009-01-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/domain.spad.pamphlet (findConstructor$Constructor): New. + +2009-01-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-saturn.boot (htpMakeEmptyPage): Use deprecated GENTEMP + instead of GENSYM. + * interp/ht-util.boot (htpName): Likewise. + (mkCurryFun): Likewise. + (htRadioButtons): Likewise. + (htBcRadioButtons): Likewise + * interp/br-con.boot (kisValidType): Use $LangSupportTypes. + +2009-01-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/riccati.spad.pamphlet (innerlb$PrimitiveRatRicDE): Fix + thinko. + * interp/bootlex.lisp (get-decimal-number-token): New. + (get-integer-in-radix): Likewise. + (is-radix-char): Likewise. + (get-spad-integer-token): Likewise. Use them. + (get-BOOT-token): Use it. + * interp/metalex.lisp: Tidy. + +2009-01-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/net.spad.pamphlet (InputByteConduit): Add readInt8!, + readInt16!, readInt32!, readUInt8!, readUInt16!, readUInt32!. + +2009-01-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot: Miscellaneous cleanup. + * interp/compiler.boot: Likewise. + * interp/define.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/info.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + +2009-01-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (getSuccessEnvironment): Don't specialize + on `has'. + (getInverseEnvironment): Likewise. + * algebra/equation2.spad.pamphlet (factorAndSplit$Equation): Fix + misuses of `has'. + * interp/functor.boot (mkTypeForm): Rename from mkDomainConstructor. + +2009-01-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2491986 + * interp/i-syscmd.boot (displayValue): Fix thinko. + * testsuite/interpreter/sf-2491986.input (a): New. + +2009-01-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parse.boot ($parsingType): New. + (parseType): New. Parse types forms. + (parseTypeList): New. Parse list of type forms. + +2009-01-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compPredicate): Rename from compBoolean. + Lose second argument. Document. + +2009-01-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/data.spad.pamphlet (Byte): Satisfy OrderedFinite. + (SystemInteger, SystemNonNegativeInteger, Int8, Int16, Int32, + UInt8, UInt 16, UInt32): New. + * algebra/Makefile.pamphlet (axiom_algebra_layer_7): Include INT8, + INT16, INT32, UINT8, UINT16, UINT32. + +2009-01-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (readByteFromFile): Tidy. + (makeByteBuffer): Set fill pointer. + (connectToHostAndPort): Define here. + (readByteFromStreamSocket): Likewise. + (writeByteToStreamSocket): Likewise. + * interp/sys-os.boot (doConnectToHostAndPort): Rename from + connectot$NetworkClientSocket. + (doReadByteFromStreamSocket): Rename from readByteFromStreamSocket. + (doWriteByteToStreamSocket): Rename from writeByteToStreamSocket. + * algebra/net.spad.pamphlet: Use Maybe Byte. + * algebra/data.spad.pamphlet (ByteBuffer): Fix fill pointer thinko. + +2009-01-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/net.spad.pamphlet (resolve$Hostname): Return a Maybe %. + (connectot$NetworkClientSocket): Likewise. + (connectot$InetClientStreamSocket): Likewise. + +2009-01-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/any.spad.pamphlet (Maybe): Rework. + +2009-01-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (getVMType): IndexList are lists. + * interp/g-util.boot (isSubDomain): Tidy. + * interp/g-opt.boot (isVMConstantForm): New. + (findVMFreeVars): Likewise. + * interp/define.boot (insertViewMorphisms): Remove. + (emitSubdomainInfo): New. + (checkVariableName): Likewise. + (checkParameterNames): Likewise. + (checkRepresentation): Set $subdomain where appropriate. + (compDefines): Check parameter names. + (compDefineFunctor1): Propagate subdomain info. + (doIt): Don't call insertViewMorphisms. + * interp/compiler.boot (setqSingle): Check variable name. + (compIterator): Likewise. + (commonSuperType): New. + (satisfies): Likewise. + (coerceSubset): Use them to implemen cross-subdomain coercion. + (coerceSuperset): New. + (comCoerce1): Use it. + (compPer): New. + (compRep): Likewise. + * interp/c-util.boot (getRepresentation): New. + (proclaimCapsuleFunction): Improve for specialized subdomains. + * algebra/stream.spad.pamphlet: Don't use `per' as variable name. + * algebra/si.spad.pamphlet (size$SingleInteger): Tidy. + (coerce$SingleInteger): Likewise. + * algebra/reclos.spad.pamphlet (nonNull$RealClosure): Don't use + `rep' as parameter name. + * algebra/data.spad.pamphlet (Byte): Now a subdomain of + NonNegativeInteger. Tidy. + +2009-01-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp (setdatabase): Set superdomain slot too. + * interp/g-util.boot (superType): Handle current domain form. + (maximalSuperType): Tidy. + (noteSubDomainInfo): Call SETDATABASE. + +2009-01-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (createEnum): Fix quoting. + * interp/compat.boot (system): Likewise. + * interp/astr.boot (ncEltQ): Fix declaration. + * interp/compiler.boot (compMapCond'): Likewise. + (compMapCond): Likewise. + (compMapCondFun): Remove declaration. + +2009-01-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (|%algebraSystemIsComplete|): New. + (|%basicSystemIsComplete|): Use it. + * interp/wi1.boot (setqSingle): Use maximalSuperType. + (coerceSubset): Simplify. + (compCoerce1): Tidy. + * interp/i-resolv.boot (resolveTCat): Use superType. + * interp/lisplib.boot (findConstructorSlotNumber): Use isSubset. + (sigsMatch): Likewise. + (findDomainSlotNumber): Likewise. + * interp/define.boot (compSubDomain1): Reject for complex subdomain + predicate. Support paramterized subdomains. + * interp/daase.lisp (interpOpen): Read superdomain slot. + (getdatabase): Remove adhoc hardcoded superdomain info. + Return superdomain info stored in database. + (localnrlib): Read superdomain info. + (write-interpdb): Write superdomain info. + (database): Add superdomain slot. + * interp/g-util.boot (superType): New. + (maximalSuperType): Rework. Support parameterized subdomains. + (noteSubDomainInfo): New. + (isSubDomain): Rework. + * interp/c-util.boot (isSubset): Rework. + * interp/g-opt.boot (optEQ): Remove. + * interp/g-cndata.boot (getImmediateSuperDomain): Remove. + (maximalSuperType): Move to g-util.boot. + * interp/types.boot (%Constructor): New type specifier. + (%Instantiation): Likewise. + * interp/compiler.boot (primitiveType): Don't return $NegativeInteger. + (maxSuperType): Remove. + (hasType): Use maximalSuperType. + (satisfies): New. + (coerceSubset): Use it. Simplify. + * interp/wi2.boot (smallIntegerStep): Use maximalSuperType. + * interp/sys-constants.boot ($AtVariables): New. + ($NegativeInteger): Remove. + ($NonPositiveInteger): Likewise. + ($CategoryNames): Category is not a category. + * interp/property.lisp: Remove Subsets property settings. + * interp/i-coerce.boot (coerceSubDomain): Simplify. + (coerceImmediateSubDomain): Remove. + (getSubDomainPredicate): Simplify. + * interp/category.boot (SourceLevelSubset): Use isSubDomain. + (MachineLevelSubset): Likewise. + * interp/modemap.boot (mergeModemap): Likewise. + (isSuperDomain): Remove. + (augModemapsFromDomain): Support parameterized subdomains. + * interp/i-util.boot (isSubDomain): Move to g-util.boot. + * Makefile.pamphlet (all-databases): New target. + * interp/Makefile.pamphlet ($(AXIOMSYS)): Push + :open-axiom-algebra-system onto *FEATURES*. + * etc/Makefile.in (all-databases): New target. + +2009-01-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot (UnionEqual): Don't call orderUnionEntries. + (coerceUn2E): Likewise. + (mkUnionFunList): Likewise. + * interp/i-coerce.boot (coerceUnion2Branch): Likewise. + (coerceBranch2Union): Likewise. + ($newCompilerUnionFlag): Remove. + (orderUnionEntries): Likewise. + (mkPredList): Remove dead code. + +2009-01-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (updateCapsuleDirectory): Record constant + makers too. + (replaceSimpleFunctions): Fold simple constant form makers. + +2009-01-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/pf2sex.boot (pfLiteral2Sex): Fix evaluation of intergers + with non-decimal radix. + * interp/scan.boot (rdigti?): Allow non-capital letters. + +2008-12-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/si.spad.pamphlet (size$SingleInteger): Compute value as + extended integer. + +2008-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineFunctor1): Remove dead code. + (compile): Likewise. + * interp/functor.boot (isPackageFunction): Remove. + * interp/wi2.boot (compDefineFunctor1): Remove dead code. + +2008-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (isSubset): Don't check for Object. + * interp/cattable.boot (hasCat): Likewise. + (simpTempCategoryTable): Don't substitute for Object. + +2008-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (OrderedFinite): Export `min' and + `max' values. + * algebra/si.spad.pamphlet (SingleInteger): Now satisfies + OrderedFinite. Tidy. + +2008-12-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/net.spad.pamphlet (readBytes!$InputByteConduit): Set + length of buffer to count of bytes read. + * algebra/si.spad.pamphlet (SingleInteger): Now formally subdomain + of Integer. + +2008-12-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/database.boot (getConstructorArity): New. + (getCategoryExports): Likewise. + (getCategoryAttributes): Likewise. + * interp/i-analy.boot (isUnambiguouslyConstructor): New. + (bottomUpIdentifier): Use it. + * algebra/syntax.spad.pamphlet (Identifier): No longer satisfies + SpadSyntaxCategory). + * algebra/exposed.lsp.pamphlet: Expose Signature and + ConstructorCategory. + * algebra/term.spad.pamphlet (operator$OperatorCategory): Remove. + * algebra/domain.spad.pamphlet (ConstructorKind): Improve + documentation. + (ConstructorCategory): New. + (Constructor): Now satisfies ConstructorCategory. + (CategoryConstructor): New. + (DomainConstructor): New. + (Signature): Move from syntax.spad.pamphlet. + (OperatorSignature): New. + (exportedOperators$Category): New. + (principalAncestors$Category): New. + (parents$Category): Likewise. + (constructor$Domain): New. + * algebra/catdef.spad.pamphlet (hash$SetCategory): Tidy default + implementation. + * algebra/outform.spad.pamphlet (vspace$OutputForm): Prevent + infinite recursion for negative input. + (hspace$OutputForm): Likewise. + (rspace$OutputForm): Likewise. + Explicitly quote bytecode symbols. + +2008-12-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-eval.boot (evaluateType0): Check for builtin + constructors. + (evaluateType): Likewise. + * interp/i-spec2.boot (isType): Reject unsaturated constructors. + * testsuite/interpreter/ctor.input: New. + +2008-12-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (checkRepresentation): Take a third + argument. Provide view morphisms for domain extensions. + (compCapsule): Adjust call. + * algebra/alql.spad.pamphlet (DataList): Use per and rep. + * algebra/fortmac.spad.pamphlet (MachineInteger): Likewise. + * algebra/fortran.spad.pamphlet (FortranExpression): Likewise. + * algebra/integer.spad.pamphlet (NonNegativeInteger): Likewise. + (PositiveInteger): Likewise. + * algebra/ituple.spad.pamphlet (InfiniteTuple): Likewise. + * algebra/matrix.spad.pamphlet (RectangularMatrix): Likewise. + * algebra/pf.spad.pamphlet (InnerPrimeField): Likewise. + * algebra/radix.spad.pamphlet (BinaryExpansion): Likewise. + (DecimalExpansion): Likewise. + (HexadecimalExpansion): Likewise. + +2008-12-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-analy.boot (elaborateForm): New. + * interp/i-spec2.boot (uphas): Use it. Evaluate first operand. + +2008-12-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (checkRepresentation): Take a second + argument. For domain extensions, warn about useless assignment to + Rep, and syntactically conflicting assignment to Rep. + +2008-12-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/newdata.spad.pamphlet (SplittingNode): Define Rep as + constant. Remove definitions for `per' and `rep'. + * algebra/regset.spad.pamphlet (RegularTriangularSet): Likewise. + * algebra/sregset.spad.pamphlet (SquareFreeRegularTriangularSet): + Likewise. + * algebra/triset.spad.pamphlet (GeneralTriangularSet): Likewise. + (WuWenTsunTriangularSet): Likewise. + +2008-12-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (insertViewMorphisms): New. + (checkRepresentation): Rename from maybeInsertViewMorphisms. Tidy. + (compDefineFunctor1): Tidy. + (doIt): Insert view morphisms if appropriate. + +2008-12-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compFormWithModemap): Tidy. + (compLogicalNot): Rename from compNot. + (compExclusiveOr): New. + (compViableModemap): Likewise. + (compResolveCall): Likewise. + (compApplyModemap): Tidy. + (compMapCond): Tidy. + (compMapCond''): Remove. + * interp/parse.boot (parseExclusiveOr): Remove. + * interp/sys-constants.boot ($SideEffectFreeFunctionList): Include + "and", "or", and "not". + * interp/modemap.boot (getModemap): Adjust call to compApplyModemap. + * interp/nruncomp.boot (NRTputInHead): Error on SPADCONST form. + * algebra/boolean.spad.pamphlet (and$Boolean): Use Lisp operation. + (or$Boolean): Likewise. + (not$Boolean): Likewise. + * algebra/mappkg.spad.pamphlet (fixedPoint$MappingPackage1): + Specify return type for Lisp expression. + * algebra/strap: Update cached Lisp translation. + +2008-12-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (ILinsn): New structure. + (il3OldForm): Convert new forms to old forms. + * interp/i-intern.boot (mkAtree3): Don't use old parser functions. + * interp/wi2.boot: Use MEMQ to test for parameters names. + * interp/compiler.boot: Use MEMQ to test for parameters names. + +2008-12-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/ht-util.boot (oldParseString): Remove. + * interp/server.boot (oldParseAndInterpret): Likewise. + * interp/parse.boot (parseHasRhs): Likewise. + (parseType): Likewise. + (parseColon): Remove unused code. + (parseCoerce): Likewise. + (parseAtSign): Likewise. + (parsePretend): Likewise. + (parseAtAt): Likewise. + (parseHas): Likewise. + (parseAnd): Likewise. + (parseOr): Likewise. + (parseIf): Simplify. + +2008-12-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nrunfast.boot (resolveNiladicConstructors): Tidy. + * interp/compiler.boot (quotify): Remove. + * interp/parse.boot (parseCases): Remove. + (parseUpArrow): Likewise. + * interp/compiler.boot (preprocessParseTree): New. + (compileParseTree): New. Split out of S-PROCESS. + * interp/spad.lisp (S-PROCESS): Use it. + +2008-12-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/term.spad.pamphlet: New. Implement Arity and + OperatorCategory. + * algebra/Makefile.pamphlet (axiom_algebra_layer_15): Include ARITY. + (axiom_algebra_layer_16): Include OPERCAT. + * share/algebra: Update databases. + +2008-12-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compRetractAlternative): Handle domains + satisfying RetractableTo T. + * interp/g-opt.boot ($simpleVMoperators): Add a few more operators. + (optLET): Fix thinko. + +2008-12-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot (npCase): New. + (npStatement): Use it. + * interp/pf2sex.boot (pfCase2Sex): New. + (pf2Sex1): Use it. + * interp/ptrees.boot: Construct %Match ASTs. + +2008-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-opt.boot ($simpleVMoperators): New. + (isSimpleVMForm): Likewise. + (isFloatableVMForm): Likewise. + (optLET): Likewise. Expand backend let-forms. + * interp/c-util.boot (foldSpadcall): Look into LET and COND forms. + (replaceSimpleFunctions): Likewise. + (mutateCONDFormWithUnaryFunction): New. + (mutateLETFormWithUnaryFunction): Likewise. + * interp/compiler.boot (tryCourtesyCoercion): Split from coerce. + (compRetractAlternative): Simplify. Now try courtesy coercions + before retraction. + (compRecoverAlternative): New. + (compMatch): Simplify. Implement type recovery too. + +2008-12-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compRetractAlternative): New. + (compMatch): Likewise. Use it to implement pattern matching + for retractable domains. + * interp/parse.boot (parseAtAt): New. + * interp/postpar.boot (postAtAt): Likewise. + (postAlternatives): Likewise. + (postMatch): Likewise. + * interp/metalex.lisp (Keywords): Remove `otherwise' as keyword. + * interp/fnewmeta.lisp (|PARSE-Match|): New local parser. + (otherwise): Remove binding specification. + (case): Now also a Nud token. + +2008-12-06 Alfredo Portes <doyenatccny@gmail.com> + + * lib/cfuns-c.c (oa_getpid): New function to support getting + process id in Windows. + * include/cfuns.h: Define it. + * lib/fnct_key.c: Use it. + * lib/sockio-c.c: Likewise. + * lib/util.c: Likewise. + * clef/edible.c: Likewise. + +2008-12-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/fs2ups.spad.pamphlet + (FunctionSpaceToUnivariatePowerSeries): Revert previous + requirement change on parameter. + * algebra/manip.spad.pamphlet (PolynomialRoots): Likewise. + * algebra/rf.spad.pamphlet (PolynomialCategoryQuotientFunctions): + Likewise. + * algebra/sum.spad.pamphlet (GosperSummationMethod): Likewise. + * share/algebra: Update databases. + +2008-12-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compIs): Error if left operand is not a + domain expression. + +2008-12-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parsing.lisp (initial-substring-p): Match case sensitively. + +2008-12-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compile): Don't check for PAC names. + * interp/g-opt.boot (optCall): Likewise. + * interp/functor.boot (SetFunctionSlots): Likewise. + (mkOperatorEntry): Lose first parameter. + (optPackageCall): Remove. + * interp/category.boot (mkCategory): Document. Adjust call to + mkOperatorEntry. + +2008-11-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parse.boot (parseEquivalence): Remove. + +2008-11-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (disallowNiAttribute): Remove. + (compDefineFunctor1): Don't use it anymore. + (compCategoryItem): Filter out nil attributes here. + +2008-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (deltaTran): Don't check for $NRTaddForm + againg; it was already checked by NRTassocIndex. + (genDeltaEntry): Likewise. + (NRTgetLocalIndex): Likewise. + * interp/wi2.boot (genDeltaExntry): Likewise. + +2008-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (mustInstantiate): Fix thinko introduced by + earlier tweaks. + (mkExplicitCategoryFunction): Likewise. + +2008-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (genDeltaSpecialSig): Remove, as unused. + +2008-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (deltaTran): Don't encode signature again. + (genDeltaEntry): Remove dead pattern match. + +2008-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (setqSingle): Use setShellEntry. + * interp/wi1.boot (setqSingle): Likewise. + * interp/functor.boot (setVector4): Likewise. + (DescendCode): Abort on SETELT opcode. + (SetFunctionSlots): Likewise. + * interp/nrunfast.boot (evalSlotDomain): Likewise. + * interp/nrungo.boot (NRTevalDomain): Likewise. + * interp/showimp.boot (getDomainRefName): Match "setShellEntry". + +2008-11-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compCapsuleInner): Call processFunctor. + * interp/wi2.boot (compCapsuleInner): Likewise. + * interp/functor.boot (processFunctorOrPackage): Remove. + (processPackage): Likewise. + (subTree): Likewise. + (setPackageLocals): Likewise. + (PackageDescendCode): Likewise. + +2008-11-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (buildFunctor): Remov reference to $NRTvec. + * interp/nrunfast.boot ($NRTvec): Don't define. + +2008-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/server.boot (serverLoop): Remove, as unused. + +2008-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (NRTgetAddForm): Remove, as unused. + +2008-11-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (NRTassocIndex): Don't set $found. + +2008-11-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compSignature): New. Split from + compCategoryItem. + (compCategoryItem): Use it. Tidy. + (quotifyCategoryArgument): Remove. + (mkEvalableCategoryForm): Tidy. + +2008-11-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parse.boot (parseImplies): Remove. + +2008-11-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (compDefineExports): Tidy. + * interp/define.boot (compDefineFunctor1): Adjust call. + +2008-11-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-output.boot ($RecordSeparator): New. + (maprin): Use it. Separate record in lean mode. + * interp/sys-globals.boot ($leanMode): Define. + * interp/sys-driver.boot (systemMain): Initialize. + * interp/ht-util.boot (executeInterpreterCommand): Print prompt + only in non-lean mode. + * interp/int-top.boot (SpadInterpretStream): Likewise. + (intloopReadConsole): Likewise. + * interp/metalex.lisp (get-a-line): Likewise. + * interp/server.boot: Likewise. + +2008-11-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/cfuns-c.c (oa_copy_file): Specify permission mode for the + new file. + +2008-11-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/lodop.spad.pamphlet (OrdinaryDifferentialRing): Tidy. + * algebra/sex.spad.pamphlet (SExpressionCategory): Fix breakage + from last commit. + +2008-11-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/seg.spad.pamphlet (SegmentCategory): Extend + ConvertibleFrom S. + * algebra/newpoint.spad.pamphlet (PointCategory): Extend + ConvertibleFrom List R. + * algebra/misc.spad.pamphlet (SingletonAsOrderedSet): Now + ConvertibleTo Symbol. + * algebra/integer.spad.pamphlet (RomanNumeral): Now + ConvertibleFrom Symbol. + * algebra/float.spad.pamphlet (Float): Now ConvertibleFrom SF. + * algebra/sex.spad.pamphlet (SExpressionCategory): Extend + ConvertibleFrom Str, ConvertibleFrom Sym, ConvertibleFrom Int, + ConvertibleFrom Flt, ConvertibleFrom List %. + +2008-11-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/alql.spad.pamphlet (Database): Now CoercibleFrom List S. + * algebra/asp.spad.pamphlet (Asp20): Now CoercibleFrom MAT FEXPR. + (Asp6): Now CoercibleFrom Vector FEXPR. + * algebra/catdef.spad.pamphlet (Algebra): Extend CoercibleFrom R. + (Ring): Extend CoercibleFrom Integer. + * algebra/formula.spad.pamphlet (ScriptFormulaFormat): Now + CoercibleFrom E. + * algebra/fortran.spad.pamphlet (FortranCode): Remove redundant + signature. + * algebra/fs2ups.spad.pamphlet + (FunctionSpaceToUnivariatePowerSeries): Tidy parameter. + * algebra/laurent.spad.pamphlet + (UnivariateLaurentSeriesConstructorCategory): Extend CoercibleFrom + UTS. + * algebra/manip.spad.pamphlet (PolynomialRoots): Tidy parameter. + * algebra/modmon.spad.pamphlet (ModMonic): Now CoercibleFrom Rep. + * algebra/ore.spad.pamphlet (UnivariateSkewPolynomial): Now + CoercibleFrom Variable x. + +2008-11-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/annacat.spad.pamphlet (NumericalIntegrationProblem): + Remove redundant signature. + (NumericalODEProblem): Likewise. + (NumericalPDEProblem): Likewise. + (NumericalOptimizationProblem): Likewise. + * algebra/forttyp.spad.pamphlet (FortranType): Likewise. + * algebra/void.spad.pamphlet (Void): Now CoercibleTo OutputForm. + +2008-11-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/wtpol.spad.pamphlet (WeightedPolynomials): No + HomotopicTo P. + (OrdinaryWeightedPolynomials): Likewise. + * algebra/modmonom.spad.pamphlet (ModuleMonomial): Now + HomotopicTo MM. + * algebra/matrix.spad.pamphlet (coerce$RectangularMatrix): Remove + redundant signature. + * algebra/lodop.spad.pamphlet (OrdinaryDifferentialRing): Now + HomotopicTo HomotopicTo R. + * algebra/alql.spad.pamphlet (DataList): Now HomotopicTo List S. + * algebra/array1.spad.pamphlet (Tuple): Now HomotopicTo + PrimitiveArray S. + * algebra/kl.spad.pamphlet (CachableSet): Now HomotopicTo S. + * algebra/java.spad.pamphlet (JavaBytecode): Now HomotopicTo Byte. + * algebra/fname.spad.pamphlet (FileNameCategory): Extends + HomotopicTo String. + * algebra/data.spad.pamphlet (Byte): Now HomotopicTo Character. + +2008-11-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/coerce.spad.pamphlet (HomotopicTo): New. + * algebra/exposed.lsp.pamphlet: Expose it. + * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include HOMOTOP. + +2008-11-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/coerce.spad.pamphlet (CoercibleFrom): New. + (ConvertibleFrom): Likewise. + (RetractableTo): Use it. + * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include + KRCFROM and KVTFROM. + * share/algebra/: Update databases. + +2008-11-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (loadExports): New. + * interp/sys-driver.boot (initializeGlobalState): Set + $compileDefaultsOnly. + * interp/lisplib.boot (isFunctor): Load exports file if present. + * interp/define.boot (compDefineCategory2): Don't write out + category load time stuff if we are compiling only defaults. + * interp/boot-pkg.lisp: Import loadFileIfPresent. + * lisp/core.lisp.in (|loadFileIfPresent|): New. + (|loadIfPresent|): Use it. + +2008-11-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nrunfast.boot (resolveNiladicConstructors): New. + (newHasTest): Use it to handle signature export test. + * testsuite/interpreter/has.input: New. + +2008-11-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (compDefineExports): Now take operation + exported list, instead of category object. Tidy. + * interp/define.boot (compDefineFunctor1): Adjust call to + compDefineExports. + +2008-11-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (|getOptionValue|): Make second argument optional. + * interp/sys-driver.boot (initializeGlobalState): Set + $compileExportsOnly. + * interp/lisplib.boot (compDefineExports): New. + * interp/define.boot (skipCategoryPackage?): New. + (compDefineCategory1): Use it. + (compDefineFunctor): Don't compile to NRLIB if interested only in + exports. + (compDefineFunctor1): Honor $compileExportsOnly. + * interp/sys-macros.lisp (|withOutputFile|): New. + * interp/sys-utility.boot (quoteForm): Likewise. + +2008-11-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot: More cleanup. + * interp/iterator.boot: Likewise. + +2008-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot: Clean up. + * interp/database.boot: Likewise. + * interp/debug.lisp: Likewise. + * interp/define.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-cndata.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/guess.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/macros.lisp: Likewise. + * interp/nrungo.boot: Likewise. + * interp/preparse.lisp: Likewise. + * interp/spad.lisp: Likewise. + * interp/sys-macros.lisp: Likewise. + * interp/trace.boot: Likewise. + * interp/types.boot: Likewise. + * interp/vmlisp.lisp: Likewise. + * interp/word.boot: Likewise. + +2008-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/package.boot: Fold content into functor.boot. Delete. + * interp/Makefile.pamphlet: Adjust. + +2008-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-syscmd.boot: Remove dead code. + * interp/spad.lisp: Likewise. + +2008-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet (OBJS): Remove cfuns. Include + hashcode. + * interp/cfuns.lisp: Delete. + +2008-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot: Import "msgdb", not "c-util". Move + compiler driver to i-syscmd.boot. + * interp/define.boot: Import "nruncomp", "functor", "package". + * interp/wi2.boot (NRTgetLocalIndex): Remove duplicate. + +2008-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad.lisp (incTimeSum): Remove. + * interp/modemap.boot ($forceAdd): Define. + * interp/nruncomp.boot ($NRTderivedTargetIfTrue): Likewise. + ($killOptimizeIfTrue): Likewise. + * interp/i-toplev.boot (processInteractive): Tidy. + * interp/c-util.boot ($compErrorMessageStack): Define. + * interp/compiler.boot (compApply): Remove. + ($compTimeSum): Likewise + ($resolveTimeSum): Likewise. + (compCompilerPredicate): Tidy. + (comp3): There is no such thing as KAPPA. + +2008-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.pamphlet: Individual .spad files are .PRECIOUS. + +2008-11-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot: Define global vars. + * interp/compiler.boot: Likewise. + * interp/define.boot: Likewise. + * interp/sys-globals.boot: Likewise. + * interp/wi1.boot ($frontier): Removed, as unused. + * interp/wi2.boot ($attributesName): Likewise. + ($goGetList): Likewise. + ($NRTaddList): Likewise. + ($NRTloadTimeAlist): Likewise. + ($lisplibMissingFunctions): Likewise. + ($alternateViewList): Likewise. + +2008-11-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-data.boot: Remove uses of BOUNDP. + * interp/br-op1.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/category.boot: Likewise. + * interp/g-cndata.boot: Likewise. + * interp/i-util.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + +2008-11-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/postpar.boot (postcheckTarget): Likewise. + (isPackageType): Likewise. + * interp/lisplib.boot (getSlotFromDomain): Remove. + * interp/macros.lisp (|saySpadMsg|): Remove. + * interp/vmlisp.lisp (qsetq): Remove. + (STATEP, FUNARGP, PAPPP): Likewise. + (LISTOFQUOTES, LISTOFFREES): Likewise. + +2008-11-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (Syntax): Print syntax objects as + s-expressions. + * algebra/sex.spad.pamphlet (SExpression): Print strings as + String. + +2008-11-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet (template.$(FASLEXT)): Remove. + * interp/template.boot: Move non-dead code where appropriate. + Remove file. + * boot/ast.boot (bfQ): Improve. + +2008-11-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (|$ExtraRuntimeLibraries|): Listify. + (extra-runtime-libs): Tidy. + * lisp/Makefile.in (edit): stringify $(oa_c_runtime_extra) elements. + +2008-11-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/utils.c (OPENAXIOM_DEFAULT_DRIVER): Can no longer be + openaxiom_unknown_driver. + (openaxiom_preprocess_arguments): If a file is specified, then it + is a script unless told otherwise. + +2008-11-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot: Import "ggreater". + * interp/category.boot: Import "g-cndata" + * interp/c-util.boot: Import "g-opt". + * interp/Makefile.pamphlet: Adjust Make rules. + +2008-11-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/2212001 + * sman/sman.c (process_arguments): Fix thinko. + (process_options): Complain about unknown options. + +2008-11-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * sman/sman.c (ptsPath): Remove. + * sman/Makefile.in: Add additional C runtimes for link. + * lib/openpty.c: Include <pty.h> and <util.h> where available. + (ptyopen): Lose third parameter. Tidy. + (makeNextPtyNames): Now static. + * clef/edible.c (controllerPath): Remove. + Adjust call to ptyopen. + * clef/Makefile.in (clef_LDADD): Add extra C runtimes. + +2008-10-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (genECLnativeTranslation): Fix thinko. + +2008-10-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-macros.lisp (APPEND2): Remove. + +2008-10-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-analy.boot (bottomUpDefaultCompile): Declared local + variables really are locals. + * interp/i-map.boot (findLocalVars1): Fix typo. + +2008-10-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-syscmd.boot (summary): Quote path. + (copyright): Likewise. + +2008-10-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/presea.in: Rename from hyper/presea. `awk' is not + substitued at configuration time. + +2008-10-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * clef/edible.c: #include "cfuns.h" for oa_getenv use. + * graph/Gdraws/Gfun.c: Likewise. + * graph/view2D/control2d.c: Likewise. + * graph/view2D/main2d.c: Likewise. + * graph/view2D/process2d.c: Likewise. + * graph/view3D/main3d.c: Likewise. + * graph/view3D/process3d.c: Likewise. + * graph/viewAlone/spoon2D.c: Likewise. + * graph/viewAlone/spoonComp.c: Likewise. + * graph/viewman/fun2D.c: Likewise. + * graph/viewman/fun3D.c: Likewise. + * hyper/extent2.c: Likewise. + * hyper/hthits.c: Likewise. + * hyper/htinp.c: Likewise. + * hyper/initx.c: Likewise. + * hyper/lex.c: Likewise. + * hyper/parse-types.c: Likewise. + * hyper/spadint.c: Likewise. + * hyper/titlebar.c: Likewise. + * lib/fnct_key.c: Likewise. + * sman/sman.c: Likewise. + +2008-10-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/open-axiom.h: Define WIN32_LEAN_AND_MEAN + * lib/sockio-c.c (oa_inet_pton) [__WIN32__]: Use inet_addr. + +2008-10-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-os.boot: Import oa_socket_read_byte as + readByteFromStreamSocket. Import oa_socket_write_byte as + writeByteToStreamSocket. + * include/sockio.h (oa_socket_read_byte): Declare. + (oa_socket_write_byte): Likewise. + * lib/sockio-c.c (oa_socket_read_byte): Define. + (oa_socket_write_byte): Likewise. + * algebra/net.spad.pamphlet (readByteIfCan!$InetClientStreamSocket): + Implement. + (writeByteIfCan!$InetClientStreamSocket): Likewise. + * etc/asq.c.pamphlet: Update build rules for asq$(EXEEXT). + +2008-10-24 Alfredo Portes <doyenatccny@gmail.com> + + * hyper/addfile.c: Use oa_getenv function. + * hyper/titlebar.c: Likewise. + * src/hyper/parse-types.c: Likewise. + * src/hyper/htinp.c: Likewise. + * src/hyper/extent2.c: Likewise. + * src/hyper/spadint.c: Likewise. + * src/hyper/htadd.c: Likewise. + * src/hyper/lex.c: Likewise. + * src/hyper/initx.c: Likewise. + * src/sman/sman.c: Likewise. + * src/graph/view2D/main2d.c: Likewise. + * src/graph/view3D/testcol.c: Likewise. + * src/graph/view3D/main3d.c: Likewise. + * src/graph/viewman/fun2D.c: Likewise. + * src/graph/viewman/fun3D.c: Likewise. + * src/graph/Gdraws/Gfun.c: Likewise. + * src/graph/viewAlone/spoon2D.c: Likewise. + * src/graph/viewAlone/spoonComp.c: Likewise. + * src/lib/cfuns-c.c: Likewise. + * src/lib/fnct_key.c: Likewise. + * src/lib/sockio-c.c: Likewise. + * src/lib/cursor.c: Likewise. + * src/clef/edible.c: Likewise. + * src/etc/asq.c.pamphlet: Likewise. + +2008-10-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add basic support for stream client socket. + * lib/sockio-c.c (oa_inet_pton): Define. + (oa_get_host_address): Likewise. + * algebra/net.spad.pamphlet (IP4Address): New. + (NetworkClientSocket): Likewise. + (InetClientStreamSocket): Likewise. + * algebra/data.spad.pamphlet (DataArray): Rename from DataBuffer. + (ByteBuffer): Rename from ByteArray. Reimplement. + * algebra/exposed.lsp.pamphlet: Expose IP4Address, + InetClientStreamSocket, NetworkClientSocket. + +2008-10-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/exposed.lsp.pamphlet: Unexpose BinaryFile. + * algebra/files.spad.pamphlet (BinaryFile): Remove. + +2008-10-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/net.spad.pamphlet (InputOutputBinaryFile): New. + (position$InputBinaryFile): New. + (position!$InputBinaryFile): Likewise. + * algebra/exposed.lsp.pamphlet: Expose InputOutputBinaryFile. + * algebra/Makefile.pamphlet (axiom_algebra_layer_user): Add IOBFILE. + +2008-10-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Expand on native call translation. + * interp/sys-os.boot (oa_filedesc_read): Adjust declaration. + (oa_filedesc_write): Likewise. + +2008-10-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/debug.lisp (WHOCALLED): Fix thinko. + +2008-10-19 Alfredo Portes <doyenatccny@gmail.com> + + * include/open-axiom.h: Replace __MINGW32__ declaration + with __WIN32__. + * include/sockio.h: Likewise. + * hyper/ex2ht.c: Likewise. + * lib/cfuns-c.c: Likewise. + +2008-10-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/Makefile.in (openaxiom_host_has_regex): Define. + (all-hyper-pre): Install scripts too. + +2008-10-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (Syntax): Now belong to + RetractableTo Integer, RetractableTo DoubleFloat, RetractableTo + Symbol, and RetractableTo String. + +2008-10-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (Syntax): Simplify. + +2008-10-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/debug.lisp (WHOCALLED): Add dummy definition. + +2008-10-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-output.boot (callForm2String): Properly display package + call. + +2008-10-17 Waldek Hebisch <hebisch@math.uni.wroc.pl> + + Fix AW/374 + * algebra/radix.spad.pamphlet (intgroup$RadixExpansion): Check for + big radix. + +2008-10-17 Alfredo Portes <doyenatccny@gmail.com> + + Fix AW/293 + * algebra/gaussian.spad.pamphlet (ComplexCategory): Remove complex + attribute. + +2008-10-17 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/271 + * interp/sys-constants.boot ($Field): New. + * interp/i-coerce.boot (retract2Specialization): Ignore + expressions whose types do no belong to Field. + + +2008-10-17 Martin Rubey <martin.rubey@univie.ac.at> + + Fix AW/413, AW/414 + * src/algebra/fr.spad.pamphlet: Fix missing returns in loops. + * src/algebra/gdpoly.spad.pamphlet: Likewise. + * src/algebra/lmdict.spad.pamphet: Likewise. + * src/algebra/plot3d.spad.pamphlet: Likewise. + * src/algebra/prs.spad.pamphlet: Likewise. + * src/algebra/sups.spad.pamphlet: Likewise. + +2008-10-17 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/410 + * interp/i-syscmd.boot (displaySpad2Cmd): Handle constructor + abbreviation. + +2008-10-17 Gregory Vanuxem <g.vanuxem@wanadoo.fr> + + Fix AW/260 + * graph/view2D/graph2d.c (freeGraph): + +2008-10-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/scan.boot (scanKeyWords): `assume' is a keyword. + +2008-10-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-spec1.boot (categoryImplies): New. + (evalCategory): Use it. + +2008-10-15 Waldek Hebisch <hebisch@math.uni.wroc.pl> + + Fix AW/101 + * algebra/laplace.spad.pamphlet (lapkernel): Handle derivatives. + +2008-10-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (backendCompile1): Move to c-util.boot. + (COMP): Likewise. Rename to backendCompile. + (compileFileQuietly): Move to c-util.boot. + (compAndDefine): Likewise. + (compQuietly): Likewise. + (compileQuitely): Likewise. + +2008-10-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/mkfunc.spad.pamphlet (unparse$InputForm): Use + inputForm2String$Lisp. + +2008-10-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/mkfunc.spad.pamphlet (coerce$InputForm): Display + InputForm as a one-dimensional stream of characters suitable + for input to the interpreter. + * interp/i-output.boot: Implement conversion of InputForm to + displayed OutputForm. + +2008-10-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-spec2.boot (upQUOTE): Quoted forms belong to InputForm. + * interp/sys-constants.boot ($InputForm): New. + +2008-10-13 Waldek Hebisch <hebisch@math.uni.wroc.pl> + + Fix AW/338 + * algebra/fspace.spad.pamphlet (smprep$FunctionSpace): Fix thinko + +2008-10-13 Waldek Hebisch <hebisch@math.uni.wroc.pl> + + Fix AW/292 + * algebra/defintef.spad.pamphlet (checkForPole): Handler exponention. + (checkSMP): Likewise. + +2008-10-13 Waldek Hebisch <hebisch@math.uni.wroc.pl> + + Fix AW/23 + * algebra/fspace.spad.pamphlet (isExpt): Tidy. + * algebra/algfunc.spad.pamphlet (inroot): Likewise. + +2008-10-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Don't step over Common Lisp MAP. + * interp/i-analy.boot (bottomUp): Change MAP to %Map. + (isEltable): Likewise. + * interp/i-coerce.boot (retract): Likewise. + * interp/i-eval.boot (getArgValue): Likewise. + * interp/i-funsel.boot (selectLocalMms): Likewise. + * interp/i-intern.boot (getValueFromEnvironment): Likewise. + * interp/i-map.boot (mkAuxiliaryName): Likewise. + (augmentMap): Likewise. + (displayMap): Likewise. + (putBodyInEnd): Likewise. + (expandRecursiveBody): Likewise. + * interp/i-output.boot (outputTran): Likewise. + * interp/i-spec1.boot (declare): Likewise. + * interp/i-syscmd.boot (displayMacro): Likewise. + * interp/i-toplev.boot (interpret2): Likewise. + * interp/patches.lisp (MAP): Remove. + * interp/trace.boot (isUncompiledMap): Likewise. + +2008-10-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Add support for Lisp declarations in generated Lisp code. + * interp/i-map.boot (compileCoerceMap): Tell backend that + minivector is global. + * interp/i-spec1.boot (compileADEFBody): Likewise. + * interp/slam.boot (reportFunctionCompilation): Likewise. + * interp/define.boot (spadCompileOrSetq): Tell backend to ignore + last argument for simple functions. + * interp/c-util.boot (skipDeclarations): New. + (lastDeclarationNode): Likewise. + (declareGlobalVariables): Likewise. + (transformToBackendCode): Use them to allow for Lisp + declarations in middle-end forms. + * interp/sys-driver.boot (AxiomCore::%sysInit): Reading Lisp level + Floating point numbers default to double precision. + * algebra/strap: Update. + +2008-10-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nlib.lisp (rpackfile): Remove obsolete code. + +2008-10-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (backendCompileNEWNAM): New. + (pushLocalVariable): Likewise. + (mutateToBackendCode): Likewise. + (transformToBackendCode): Likewise + * interp/comp.lisp (FLUIDVARS): Remove. + (LOCVARS): Likewise. + (SPECIALVARS): Likewise. + ($CLOSEDFNS): Likewise. + (COMP-NAM): Likewise. + (COMP-TRAN): Likewise. + (COMP-TRAN-1): Likewise. + * interp/compiler.boot (compWithMappingMode): Use + transformToBackendCode. + (COMP-1): Use backendCompileNEWNAM. + * interp/i-analy.boot (bottomUpCompile): Use mutateToBackendCode. + +2008-10-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (backendFluidize): New. + * interp/comp.lisp (COMP-TRAN): Use it. + (COMP-FLUIDIZE): Remove. + +2008-10-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (backendCompile2): Bootified from COMP-2. + * interp/compiler.boot (COMP): Use it. + * interp/comp.lisp (COMP-2): Remove. + +2008-10-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot ($middleEndMacroList): New. + (middleEndExpand): New. + (backendCompileILAM): Bootify COMP-ILAM. + (backendCompileSLAM): Bootify COMP-SLAM. + (backendCompileSPADSLAM): Bootify COMP-SPADSLAM. + * interp/comp.lisp (COMP-2): Use them. + (COMP-ILAM): Remove. + (COMP-SLAM): Likewise. + (COMP-SPADLSAM): Likewise. + (COMP-TRAN): Use middleEndExpand. + (COMP-EXPAND): Remove. + ($COMP-MACROLIS): Likewise. + +2008-10-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (loadNativeModule): Don't save loaded + shared objects. + +2008-10-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/domain.spad.pamphlet (ConstructorKinid): New domain. + (Constructor): Likewise. + * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include + CTORKIND. + (axiom_algebra_layer_user): Include CTOR. + +2008-10-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + SF/1872404 fixed. + * testsuite/compiler/1872404.spad: New. + +2008-10-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + SF/1872445 fixed. + * testsuite/compiler/1872445.spad: New. + +2008-10-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Allow compound argument types in Boot signatures. + * boot/parser.boot (bpArgtypeList): New. + (bpMapping); Use it. + * boot/tokens.boot: Define neutral element for CONCAT. + +2008-10-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (bfReduce): Check neutral value for original + operator too. + (bfReduceCollect): Likewise. + +2008-10-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-util.boot (printPrompt): New. + * interp/ht-util.boot (executeInterpreterCommand): Use it. + * interp/int-top.boot (SpadInterpretStream): Likewise. + * interp/metalex.lisp (get-a-line): Likewise. + * interp/server.boot (serverReadLine): Likewise. + (serverLoop): Likewise. + +2008-10-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.pamphlet (axiom_algebra_layer_user): Include + RGBCMDL, RGBCSPC. + * algebra/color.spad.pamphlet (RGBColorModel): New. + (RGBColorSpace): Likewise. + * algebra/exposed.lsp.pamphlet: Expose them + +2008-10-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compCategoryItem): Don't check signatures yet. + * interp/c-util.boot (isKnownCategory): New. + (diagnoseUknownType): Use it. Expand. + * interp/compiler.boot (compCat): Use it. + +2008-10-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot: Remove unused variable $maximalViews. + * interp/package.boot: Likewise. + +2008-10-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/functor.boot (DescendCode): Update capsule directory only + for non-default implementations. + * interp/c-util.boot ($capsuleDirectory): New. + (clearCapsuleDirectory): Likewise. + (getCapsuleDirectoryEntry): Likewise. + (updateCapsuleDirectory): Likewise. + (foldSpadcall): Likewise. + (foldExportedFunctionReferences): Likewise. + * interp/define.boot (compFunctorBody): Use it. + +2008-10-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-macros.lisp (|quietlyIfInteractive|): New. + * interp/compiler.boot (quietlyIfInteractive): Use it. + (compQuietly): Likewise. + (compileQuietly): Likewise. + +2008-10-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot ($optExportedFunctionReference): New. + (setCompilerOptimizations): Set it. + * interp/define.boot ($capsuleFunctionStack): New. + (spadCompileOrSetq): Collect capsule function definitions. + (compFunctorBody): Compile them at end of capsule. + +2008-10-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (getFunctionReplacement): Tidy. + * algebra/data.spad.pamphlet (Byte): Likewise. + +2008-10-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (isAtomicForm): New. + (replaceSimpleFunctions): Use it. Simplify back to original + implementation. + (proclaimCapsuleFunction): Constructor parameters are generic. + * interp/sys-utility.boot (getVMType): Handle wildcard. + * algebra/stream.spad.pamphlet: Don't build STREAM with + proclamation on -- it currently violates type rules. + +2008-10-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/data.spad.pamphlet (sample$Byte): New. + +2008-10-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (eqSubstAndCopy): New. + (eqSubst): Likewise. + (replaceSimpleFunctions): Handle XLAM-replaceable functions. + * interp/wi1.boot (pairList): Remove duplicate. + +2008-10-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (clearReplacement): New. + (getFunctionReplacement): Likewise. + (replaceSimpleFunctions): Likewise. + * interp/define.boot (spadCompileOrSetq): Use it. + +2008-10-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.pamphlet: Turn on optimization for algbera build. + +2008-10-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/data.spad.pamphlet (Byte): Add coercion to and from + Character. + +2008-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-spec1.boot (upcase): Tidy. + * interp/i-spec2.boot (evalIsntPredicate): Likewise. + * interp/sys-utility.boot (existingFile?): Likewise. + +2008-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/outform.spad.pamphlet (doubleFloatFormat$OutputForm): Move + from DoubleFloat. + +2008-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/net.spad.pamphlet (InputBinaryFile): Tidy. + +2008-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/array2.spad.pamphlet (TwoDimensionalArrayCategory): Tidy. + * algebra/sregset.spad.pamphlet (SquareFreeRegularTriangularSet): + Remove unused function decompose. + +2008-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/mkfunc.spad.pamphlet (InputForm): Remove local mkProperOp. + (compile$InputForm): Tidy. + * algebra/boolean.spad.pamphlet (setelt$IndexedBits): A bit is + not a Boolean. + * interp/i-intern.boot (mkAtreeForToken): New. + +2008-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot ($optProclaim): New. + ($optReplaceSimpleFunctions): Likewise. + (setCompilerOptimizations): Likewise. Set them. + (proclaimCapsuleFunction): New. + * interp/compiler.boot (compileSpad2Cmd): Handle option ')optimize'. + * interp/define.boot (compile): Proclaim if appropriate. + * interp/sys-driver.boot (compileSpadLibrary): Honor optimization + level set on commmand line. + * interp/sys-utility.boot (getVMType): Tidy. + * interp/types.boot (%Void): Likewise. + (IntegerSection): New. + +2008-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-output.boot: Move dispatch table from property.lisp. + * interp/buildom.boot: Likewise. + * interp/def.lisp: Likewise. + +2008-10-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/files.spad.pamphlet (IOMode): New domain. + * algebra/net.spad.pamphlet (InputBinaryFile): Likewise. + (OutputBinaryFile): Likewise. + * interp/sys-utility.boot (openBinaryFile): New. + (readByteFromFile): Likewise. + (writeByteToFile): Likewise. + (closeFile): Likewise. + +2008-09-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/regset.spad.pamphlet (RegularTriangularSet): Remove + unused local decompose function. + +2008-09-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/outform.spad.pamphlet (OutputForm): Remove bogus + definition for Rep. Tidy. + +2008-09-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/matrix.spad.pamphlet (new$Matrix): New. + Remove uses of pretend. Define Rep. + +2008-09-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/cfuns.h (oa_copy_file): Declare. + * lib/cfuns-c.c (oa_chdir): Define. + (oa_dirname): Fix typo. + * hyper/htadd.c (copy_file): Remove. + (build_db_filename): Tidy. + (delete_file): Use oa_copy_file. + +2008-09-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-analy.boot (putCallInfo): New. + (bottomUp): Use it. + * interp/i-spec1.boot (upand): Likewise. + (upor): Likewise. + (upcase): Likewise. + * interp/i-spec2.boot (uperror): Likewise. + +2008-09-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/fortmac.spad.pamphlet (MachineFloat): Don't redeclare base. + +2008-09-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpReturn): Allow assignment. + +2008-09-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet: Tie the recursive knots between + syntax domains. + +2008-09-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (SpadAst): New. + * algebra/Makefile.pamphlet (axiom_algebra_layer_user): Add SPADAST. + * share/algebra: Update algebra databases. + +2008-09-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (SpadAstExports): New. + * algebra/Makefile.pamphlet (axiom_algebra_layer_user): Add + SPADXPT. Update dependency rules. + * share/algebra: Update algebra databases. + +2008-09-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (Boolean): Now belong to + OrderedFinite. + +2008-09-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-macros.lisp (|byteEqual|): New. + * algebra/boolean.spad.pamphlet (PropositionalLogic): Extend + SetCategory. + (PropositionalFormula): Now unconditional exports coercion to + OutputForm. Adjust implementation. + (KleeneTrivalentLogic): New. + * algebra/data.spad.pamphlet (Byte): Tidy. + * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Move PROPLOG + to layer 1. + +2008-09-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/cfuns.h (oa_dirname): Declare. + * lib/cfuns-c.c (openaxiom_is_path_separator): New. + (oa_dirname): Define. + (writeablep): Use it. + * algebra/fname.spad.pamphlet (writable?$FileName): Tidy. + +2008-09-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (getTypeOfSyntax): Infer more syntax domains. + * algebra/Makefile.pamphlet: Add dependency rules for syntax + domains. + * algebra/exposed.lsp.pamphlet: Expose more syntax domains. + +2008-09-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (getConstructorSignature): Relax. + +2008-09-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (displayAmbiguousSignatures): New. + (ambiguousSignatureError): Likewise. + * interp/define.boot (hasSigInTargetCategory): Use it to reject + ambiguous lhs of a definition. + * interp/lisplib.boot (leaveIfErrors): Fix typo. + * algebra/aggcat.spad.pamphlet: Disambiguate definitions. + * algebra/card.spad.pamphlet: Likewise. + * algebra/dhmatrix.spad.pamphlet: Likewise. + * algebra/divisor.spad.pamphlet: Likewise. + * algebra/expexpan.spad.pamphlet: Likewise. + * algebra/ffcat.spad.pamphlet: Likewise. + * algebra/ffcg.spad.pamphlet: Likewise. + * algebra/ffnb.spad.pamphlet: Likewise. + * algebra/ffp.spad.pamphlet: Likewise. + * algebra/generic.spad.pamphlet: Likewise. + * algebra/groebf.spad.pamphlet: Likewise. + * algebra/modring.spad.pamphlet: Likewise. + * algebra/moebius.spad.pamphlet: Likewise. + * algebra/mts.spad.pamphlet: Likewise. + * algebra/naalgc.spad.pamphlet: Likewise. + * algebra/ore.spad.pamphlet: Likewise. + * algebra/outform.spad.pamphlet: Likewise. + * algebra/pf.spad.pamphlet: Likewise. + * algebra/poly.spad.pamphlet: Likewise. + * algebra/polycat.spad.pamphlet: Likewise. + * algebra/prtition.spad.pamphlet: Likewise. + * algebra/radix.spad.pamphlet: Likewise. + * algebra/rep2.spad.pamphlet: Likewise. + * algebra/stream.spad.pamphlet: Likewise. + * algebra/string.spad.pamphlet: Likewise. + * algebra/tree.spad.pamphlet: Likewise. + * algebra/triset.spad.pamphlet: Likewise. + * algebra/view2D.spad.pamphlet: Likewise. + * algebra/sf.spad.pamphlet: Remove signature for hash. + * algebra/si.spad.pamphlet: Likewise. + +2008-09-18 Bill Page <bill.page@newsynthesis.org> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/mkfunc.spad.pamphlet (parseString$InputForm): New. + +2008-09-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (getTypeOfSyntax): Infer more syntax domains. + * algebra/syntax.spad.pamphlet: Add more syntax domains. + * algebra/exposed.lsp.pamphlet: Expose more syntax object domains. + * algebra/Makefile.pamphlet (axiom_algebra_layer_user): Add more + syntax object files. + +2008-09-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/net.spad.pamphlet (Conduit): New. + (InputByteConduit): Likewise. + (OutputByteConduit): Likewise. + (InputOutputByteConduit): Likewise. + * algebra/exposed.lsp.pamphlet: Expose Conduit, InputByteConduit, + OutputByteConduit, InputOutputByteConduit. + * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include CONDUIT. + (axiom_algebra_layer_13): Include INBCON, INBCON-, OUTBCON, OUTBCON-. + (axiom_algebra_layer_14): Include IOBCON. + +2008-09-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-os.boot (readablep): Import. + (writeablep): Document. + * algebra/fname.spad.pamphlet (exists?$FileName): Use existingFile? + (readable?$FileName): Use readablep. + (writeable?$FileName): Use writeable. + +2008-09-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (TRANSLATE-OPTION-VALUE): New. + (parseOption): Use it. + +2008-09-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (|$NativeTypeTable|): Don' include `pointer' + and `buffer'. + * lisp/Makefile.in (pointer_type): Remove. + (edit): Tidy. + * boot/ast.boot (nativeType): Tidy. Handle `pointer' and `buffer' + here. + * boot/translator.boot (genImportDeclaration): Tidy. + +2008-09-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (AxiomCore::%sysInit) [ECL]: Remove + settings for ECL-base builds. + (getIntermediateLispFile): Tidy. + +2008-09-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (displayMissingFunctions): Fix typo. + +2008-09-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + Alfredo Portes <doyenatccny@gmail.com> + + * lib/sockio-c.c (openaxiom_sleep): Move to open-axiom.h. + * clef/edible.c: Include "open-axiom.h". Use openaxiom_sleep, not + sleep. + * graph/view2D/viewport2D.c: Likewise. + * graph/viewAlone/spoon2D.c: Likewise. + * graph/viewAlone/spoonComp.c: Likewise. + * graph/viewman/fun2D.c: Likewise. + * graph/viewman/fun3D.c: Likewise. + * hyper/spadint.c: Likewise. + * sman/session.c: Likewise. + * sman/sman.c: Likewise. + +2008-09-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpImport): Invert syntax for importing foreign + functions. + * boot/strap/parser.clisp: Update. + * interp/sys-os.boot: Change to new syntax throughout. + +2008-09-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Ensure SingleFloat is 32-bit, DoubleFloat 64-bit. + * interp/types.boot: Tidy. + * interp/sys-constants.boot: Define limits for builtin numeric types. + * interp/sys-os.boot: Import sys-constants. + * interp/foam_l.lisp: Import sys-constants. Align builtin numeric + types with OpenAxiom runtime's. + * interp/fortcall.boot: Tidy. + * interp/i-output.boot: Likewise. + * interp/Makefile.pamphlet (foam_l.$(FASLEXT)): Now require + sys-constants.$(FASLEXT). + * algebra/si.spad.pamphlet: Use $ShortMinimum and $ShortMaximum + for SingleInteger limits. + * algebra/sf.spad.pamphlet: Use $DoubleFloatMaximum, + $DoubleFloatMinimum for DoubleFloat limits. + * algebra/strap: Update cached Lisp translation. + +2008-09-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/sockio.h (openaxiom_filedesc): New. Abstract over + differences between Win32 named pipes and POSIX local sockets. + * lib/sockio-c.c: Use it. + +2008-09-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/sockio-c.c (oa_open_ip4_client_stream_socket): Use deprecated + inet_addr on MinGW host. + +2008-09-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-os.boot (openIP4ClientStreamSocket): New. + (readFromStreamSocket): Likewise. + (writeToStreamSocket): Likewise. + (closeSocket): Likewise. + * include/sockio.h: Include <arpa/inet.h> + (oa_open_ip4_client_stream_socket): Declare. + (oa_socket_write): Likewise. + (oa_socket_read): Likewise. + * lib/sockio-c.c (openaxiom_unload_socket_module): New. + (openaxiom_load_socket_module): Tidy. + (openaxiom_socket_is_invalid): New. + (is_invalid_socket): Use it. + (oa_open_ip4_client_stream_socket): Define. + (oa_socket_read): Likewise. + (oa_socket_write): Likewise. + +2008-09-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/cfuns-c.c (oa_unlink): Tidy. + +2008-09-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp (processDir): Lose last argument. Don't + change directory. + (localdatabase): Adjust call. + * interp/lisplib.boot (getAllIndexPathnames): Take an argument. + (getAllAldorObjectFiles): Likewise. + +2008-09-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-util.boot (getTypeOfSyntax): Handle more ASTs. + * algebra/syntax.spad.pamphlet (SpadSyntaxCategory): Add + pretty-printer. + (HeadAst): Use Identifier. + (TypeAst,MappingAst,ImportAst,SignatureAst,AttributeAst,JoinAst, + IfAst,RepeatAst,WhileAst,InAst,CollectAst,ConstructAst, + ExitAst,ReturnAst,SequenceAst,LetAst,PretendAst,CoerceAst, + RestrictAst,CallAst,SegmentAst): New domains. + * algebra/Makefile.pamphlet (axiom_algebra_layer_user): Add + TYPEAST, IMPTAST, MAPPAST, ATTRAST, JOINAST, IFAST, RPTAST + WHILEAST, INAST, CLLCAST, LSTAST, EXITAST, RETAST, SEGAST, + PRTDAST, CRCAST, LETAST. + * share/algebra: Update databases. + +2008-09-02 Alfredo Portes <doyenatccny@gmail.com> + + * hyper/util.ht: Use OpenAxiom name in Hyperdoc pages. + * hyper/rootpage.ht: Likewise. + +2008-09-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (Literal): New. + (Identifier): Likewise. + (Signature): Tidy. + * algebra/exposed.lsp.pamphlet: Expose IDENT and LITERAL. + * algebra/Makefile.pamphlet (axiom_algebra_layer_user): Add + LITERAL and IDENT. + (user-stamp): Don't depend directly on bootstrap-stamp. + * share/algebra/: Update databases. + +2008-09-01 Martin Rubey <martin.rubey@univie.ac.at> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/431 + * algebra/ore.spad.pamphlet (SpareUnivariateSkewPolynomial): + Implement **. + +2008-09-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Make ^ an alias for **. + * interp/postpar.boot (postAtom): Replace "^" with "**". + * interp/format.boot (reportOpSymbol): Announce that "^" is an + alias for "**". + * interp/nrungo.boot (compiledLookup): Be sure to look for "**" + when operation is "^". + * interp/define.boot (noteCapsuleFunctionDefinition): New. + (clearCapsuleFunctionTable): Likewise. + (noteExport): Likewise. + (clearExportsTable): Likewise. + (compDefineCapsuleFunction): Rename "^" to "**". Take a note + of the capsule function being compiled. + (compCapsule): Clear previous capsule functions table. + (doItIf): Keep track of predicate validity. + (compCategory): Clear previous exports table. + (compCategoryItem): Take notes of declared attributes and signatures. + * algebra/catdef.spad.pamphlet (DivisionRing): Remove duplicate + definition for "^". + (Group): Likewise. + (Monoid): Likewise. + (SemiGroup): Likewise. + * algebra/poly.spad.pamphlet (PolynomialRing): Remove duplicate + definitins of "^". + (SparseUnivariatePolynomial): Likewise. + * algebra/multpoly.spad.pamphlet (SparseMultivariatePolynomial): + Remove duplicate definitions for "^". + * algebra/interval.spad.pamphlet (Interval): Remove duplicate + definition for "^". + * algebra/curve.spad.pamphlet (FunctionFieldCategory): Remove + duplicate declaration for represents. + * algebra/strap/: Update cached Lisp translations. + * share/algebra: Update databases. + +2008-08-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/stream.spad.pamphlet (Stream): Remove duplicate of concat. + * algebra/naalgc.spad.pamphlet (FramedNonAssociativeAlgebra): + disambiguate coordinates. + + * algebra/aggcat.spad.pamphlet (FiniteLinearAggregate): Remove + duplicate definition of reverse. + * algebra/algcat.spad.pamphlet (FramedAlgebra): Remove duplicate + definition of regularRepresentation. Explicitly disambiguate + the argument of coodinates. + * algebra/efupxs.spad.pamphlet + (ElementaryFunctionsUnivariatePuiseuxSeries): Remove duplicate + definition of asinhIfCan, acoshIfCan, asechIfCan, acshIfCan. + * algebra/equation2.spad.pamphlet (Equation): Remove duplicate + definition of *: (S,%) -> %. + Remove duplicate of factorAndSplit. + * algebra/fortpak.spad.pamphlet (MultiVariableCalculusFunctions): + Remove duplicate definition of jacobian. + * algebra/tree.spad.pamphlet (BinaryTree): Remove duplicate + definition of empty. + +2008-08-31 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Alfredo Portes <doyenatccny@gmail.com> + + * hyper/pages/util.ht: Restore commented commands. + +2008-08-31 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Alfredo Portes <doyenatccny@gmail.com> + + * algebra/intef.spad.pamphlet: Fix Bug AW/308. + +2008-08-31 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Alfredo Portes <doyenatccny@gmail.com> + + * algebra/gaussian.spad.pamphlet: Fix Bug AW/15. + +2008-08-31 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Alfredo Portes <doyenatccny@gmail.com> + + * algebra/manip.spad.pamphlet: Fix Bug AW/278. + +2008-08-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (Boolean): Remove definition of + operator ^. + * algebra/aggcat.spad.pamphlet (BitAggregate): Likewise. + * algebra/color.spad.pamphlet: Replace use of '^' as logical + negation by 'not'. + * algebra/ddfact.spad.pamphlet: Likewise. + * algebra/fortran.spad.pamphlet: Likewise. + * algebra/gaussfac.spad.pamphlet: Likewise. + * algebra/gbeuclid.spad.pamphlet: Likewise. + * algebra/gbintern.spad.pamphlet: Likewise. + * algebra/ghensel.spad.pamphlet: Likewise. + * algebra/groebsol.spad.pamphlet: Likewise. + * algebra/ideal.spad.pamphlet: Likewise. + * algebra/idecomp.spad.pamphlet: Likewise. + * algebra/indexedp.spad.pamphlet: Likewise. + * algebra/listgcd.spad.pamphlet: Likewise. + * algebra/mfinfact.spad.pamphlet: Likewise. + * algebra/modgcd.spad.pamphlet: Likewise. + * algebra/multfact.spad.pamphlet: Likewise. + * algebra/multsqfr.spad.pamphlet: Likewise. + * algebra/newpoint.spad.pamphlet: Likewise. + * algebra/npcoef.spad.pamphlet: Likewise. + * algebra/permgrps.spad.pamphlet: Likewise. + * algebra/pgcd.spad.pamphlet: Likewise. + * algebra/pleqn.spad.pamphlet: Likewise. + * algebra/qalgset.spad.pamphlet: Likewise. + * algebra/radeigen.spad.pamphlet: Likewise. + * algebra/rep2.spad.pamphlet: Likewise. + * algebra/solverad.spad.pamphlet: Likewise. + * algebra/space.spad.pamphlet: Likewise. + * algebra/view2D.spad.pamphlet: Likewise. + * algebra/strap/: Update cached Lisp translateion + * share/algebra/: Update databases. + +2008-08-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/sockio-c.c (oa_open_local_client_stream_socket): Use + OPENAXIOM_AF_LOCAL, not AF_LOCAL. + +2008-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (initializeGlobalState): Parse --bootstrap. + +2008-08-29 Waldek Hebisch <hebisch@math.uni.wroc.pl> + + * hyper/htinp.c: Use strcpy instead of strcat. + * hyper/presea: Misc. + * hyper/pages/man0.ht: Fix htsearch path. + * hyper/pages/MSET.ht: Fix link name. + * hyper/pages/util.ht: Fix paths. + * hyper/pages/xmpexp.ht: Fix link name. + * hyper/pages/ug01.ht: Likewise. + +2008-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/aggcat.spad.pamphlet: Import used domains. + * algebra/any.spad.pamphlet: Likewise. + * algebra/catdef.spad.pamphlet: Likewise. + * algebra/drawopt.spad.pamphlet: Likewise. + * algebra/equation2.spad.pamphlet: Likewise. + * algebra/ituple.spad.pamphlet: Likewise. + * algebra/mkfunc.spad.pamphlet: Likewise. + * algebra/omdev.spad.pamphlet: Likewise. + * algebra/out.spad.pamphlet: Likewise. + * algebra/plot.spad.pamphlet: Likewise. + * algebra/print.spad.pamphlet: Likewise. + * algebra/seg.spad.pamphlet: Likewise. + * algebra/stream.spad.pamphlet: Likewise. + * algebra/system.spad.pamphlet: Likewise. + +2008-08-29 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Alfredo Portes <doyenatccny@gmail.com> + + Fix AW/280 + * interp/br-search.boot (grepConstruct): Return error messages + verbatim. + +2008-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (isKnownType): New. + (diagnoseUknownType): Likewise. + * interp/define.boot (compCategoryItem): Use it. Check for + unknown types. + +2008-08-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (augModemapsFromDomain1): Move to modemap.boot + (mkEvalableCategoryForm): Move to define.boot + +2008-08-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-os.boot (readFromFileHandle): New. + (writeToFileHandle): Likewise. + (closeFileHandle): Likewise. + (openLocalClientStreamSocket): Likewise + (oa_filedesc_read): Likewise. + (oa_filedesc_write): Likewise. + (oa_filedesc_close): Likewise. + * include/sockio.h (oa_open_local_client_stream_socket): Declare. + * lib/sockio-c.c (oa_open_local_client_stream_socket): Define. + (oa_filedesc_read): Likewise. + (oa_filedesc_write): Likewise. + (oa_filedesc_close): Likewise. + +2008-08-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Tidy. + +2008-08-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * etc/Makefile.in: Tidy databases construction rule. + +2008-08-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/data.spad.pamphlet (DataBuffer): New. + +2008-08-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/net.spad.pamphlet: New. + * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include + HOSTNAME and PORTNUM. + * algebra/exposed.lsp.pamphlet: Export them. + +2008-08-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in [CLISP]: Set global customization variables. + Don't translate C-strings. + * boot/ast.boot (nativeType) [SBCL]: Don't translate C-strings. + +2008-08-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/any.spad.pamphlet (Maybe): New domain. + * algebra/exposed.lsp.pamphlet: Expose it. + * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include MAYBE. + +2008-08-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/view3D.spad.pamphlet (TUBE): Remove as unused. + (FParamR): Likewise. + (URF): Likewise. + +2008-08-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * OpenAxiom-1.2.0 has been released. + +2008-08-21 Grégory Vanuxem <g.vanuxem@orange.fr> + + * interp/g-timer.boot (printTimeIfTrue): Don't compute the + quotient of the integer division. + +2008-08-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (|systemRootDirectory|): Lookup option by name. + (|systemLibraryDirectory|): Likewise. + +2008-08-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/g-error.boot (systemErrorHandler): New. + * interp/sys-driver.boot (restart): Use it. + +2008-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/Makefile.in (oa_boot_linkset): Tidy. + ($(oa_boot_linkset)): New Make rule. + * lisp/Makefile.in (oa_base_lisp_linkset): Tidy. + ($(oa_base_lisp_linkset)): New Make rule. + * lisp/core.lisp.in (linkset-from): Read the linkset from the file. + +2008-08-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compMacro): Honor $verbose. + * interp/modemap.boot (putDomainsInScope): Likewise. + * interp/wi1.boot (compMacro): Likewise. + +2008-08-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/open-axiom.h (oa_buffer_address): New macro. + * sman/session.c (read_from_spad_io): Use It. + (accept_session_connection): Likewise. + (read_from_session): Likewise. + * sman/sman.c (read_from_spad_io): Likewise. + (read_from_manager): Likewise. + (exec_command_env): Explicitly cast the null pointer + to char*. + +2008-08-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (AxiomCore::%sysInit): Fix indentation + thinko. + +2008-08-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/open-axiom.h (oa_buffer_address): New macro. + * sman/session.c (read_from_spad_io): Use It. + (accept_session_connection): Likewise. + (read_from_session): Likewise. + * sman/sman.c (read_from_spad_io): Likewise. + (read_from_manager): Likewise. + (exec_command_env): Explicitly cast the null pointer + to char*. + +2008-08-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (compDefineLisplib): Don't update + $CategoryFrame with modemap for the constructor we just finished + compiling. + +2008-08-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/database.boot (pathToDatabase): Honor $verbose. + * interp/compiler.boot (COMP-1): Likewise. + +2008-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($verbose): Move from sys-driver.boot. + (initializeGlobalState): Set it and honor it. + * interp/daase.lisp (initial-getdatabase): Be talkative only when + asked. + +2008-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($updateCatTableIfTrue): Default to false. + * interp/sys-driver.boot (AxiomCore::%sysInit): Have ECL quiet. + (initializeGlobalState): Initialize new world states. + * interp/define.boot (compDefine): Tidy. + (compDefineCategory2): Explicitly initialize $TOP_LEVEL and + $definition. + * interp/daase.lisp (|fillDatabasesInCore|): Use + $buildingSystemAlgebra. + * interp/compiler.boot (compMakeDeclaration): Explicitly + initialize $insideExpressionIfTrue. + * boot/translator.boot (AxiomCore::%sysInit): Supper GCL and ECL + compiler notes, but ask for warning. + +2008-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Makefile.pamphlet (all-algstrap): New. + * algebra/strap: Update cached Lisp translation. + +2008-08-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (openDatabases): Rename from RESTART0. + (initializeGlobalState): Tidy. + (executeSpadScript): Don't display start up messages. + (compileSpadLibrary): Likewise. + (buildDatabasesHandler): Likewise. + (systemMain): Initialize global states. + * interp/nrunfast.boot: Defin $NRTvec, $monitorNewWorld. + * interp/daase.lisp (|fillDatabasesInCore|): Rename from + RESETHASHTABLES. + (|closeAllDatabaseStreams|): Rename from closeAllDatabases + * interp/util.lisp (build-interpsys): Initialize macro table. + * interp/htcheck.boot: Don't initialize macro table here. + +2008-08-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/daase.lisp (DaaseName): Move to database.boot. Rename as + pathToDatabase. + (|closeAllDatabases|): New. Split from RESETHASHTABLES. + * interp/util.lisp (build-interpsys): Call it here. + +2008-08-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet (%.$(LNKEXT) %.$(FASLEXT)): Tidy. + (%.$(LNKEXT) %.$(FASLEXT)): Likewise. + +2008-08-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/strap: Update cached Lisp translation. + * lisp/core.lisp.in (linkset-from-if): Fix typo. + +2008-08-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/strap: New. Sequester cached Lisp translation of + algebra bootstrap domains here. + +2008-08-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot (compDefineCategory2): Use rwriteLispForm. + (compDefineFunctor1): Likewise. + * interp/wi1.boot (compDefineCategory2): Likewise. + (compDefineFunctor1): Likewise. + +2008-08-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (|%basicSystemIsComplete|): New. Export. + (|link|): Use prologue for all systems. + * interp/sys-driver.boot (systemMain): New. Break from restart(). + (restart): Tidy. + * interp/boot-pkg.lisp: Don't push :OPEN-AXIOM-BOOT-COMPLETE. + +2008-08-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (|$StandardLinking|): New. Export. + * lisp/Makefile.in (edit): Update. + * interp/daase.lisp: Don't load initial databases when + --system-algebra. + * interp/Makefile.pamphlet (${SAVESYS}): Build with --system-algebra. + +2008-08-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (BPINAME): Define for ECL too. + * interp/util.lisp (*BIN-TYPE*): Remove. Use $faslType throughout. + * interp/daase.lisp (get-current-directory): Tidy conditional + definition. + +2008-08-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (getOptionValue): Export. + * interp/sys-driver.boot (initializeGlobalState): Record value for + --system-algebra. + * interp/sys-globals.boot ($buildingSystemAlgebra): Declare. + * interp/compiler.boot (compileSpad2Cmd): Don't build local + database if compiling system algebra. + * interp/i-syscmd.boot (compileAsharpCmd1): Likewise. + * algebra/Makefile.pamphlet (%.NRLIB/code.$(FASLEXT)): Use + --system-algebra. + (SPADPRSR.NRLIB/code.$(FASLEXT)): Likewise. + (PARSER.NRLIB/code.$(FASLEXT)): Likewise. + +2008-08-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet: Simplify build of interpsys and AXIOMsys. + (interpsys_modules): Remove. + (IN_modules): Likewise. + (AS_modules): Likewise. + (makeint.lisp): Simplify. + (makeint.$(LNKEXT)): New make rule. + (${SAVESYS}): Tidy. + (${AXIOMSYS}): Likewise. + * interp/util.lisp (build-interpsys): Lose first parameter. Tidy. + +2008-08-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (buildDatabasesHandler): New. + Install it as handler for --build-databases. + * etc/Makefile.in ($(openaxiom_databases)): Adjust. + +2008-08-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet (OBJS): Don't include union.$(FASLEXT) + twice. + (ASCOMP): Don't include here. + +2008-08-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * input/expr.input.pamphlet: Fix typo. + +2008-08-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (LINKSET-FROM): New. + (SYSTEM-SUBDIRECTORY): Likewise. + (LINKSET-FROM-IF): Likewise. + (COMPLETE-FASL-LIST-FOR-LINK): Use it. + (getPrologue): New. + (link): Take an additional optional parameter for prologue. Tidy. + (makeHandler): Adjust. + * lisp/Makefile.in: Use LNKEXT where appropriate. + (oa_base_lisp_linkset): New. + ($(oa_target_lispdir)/core.$(LNKEXT)): New rule. + (base-lisp$(EXEEXT)): Now depends on $(oa_base_lisp_linkset). + (mostlyclean-local): Remove $(oa_target_lispdir) too. + * boot/Makefile.in: Use LNKEXT instead of FASLEXT. + (boot_objects_extra): Remove. + (oa_target_bootdir): New. + (oa_boot_linkset): Likewise. + (stamp): Require $(oa_boot_linkset). + ($(oa_target_bootdir)/%.$(LNKEXT)): New rule. + (strap/bootsys$(EXEEXT)): Add prologue code. + (stage1/bootsys$(EXEEXT)): Likewise. + (stage2/bootsys$(EXEEXT)): Likewise. + (mostlyclean-local): Remove $(oa_target_bootdir) too. + +2008-08-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/patches.lisp (RESTART0): Don't duplicate code; call + CREATE-INITIALIZERS. + (|COMP,TRAN|): Remove. + (|spadHash|): Likewise. + (|$internalHistoryTable|): Don't define here. + (|isBpiOrLambda|): Remove. + (|libraryFileLists|): Likewise. + (|normalizeArgFileName|): Likewise. + (save-system) [LUCID]: Likewise. + (|undoINITIALIZE|): Likewise. + (|isLowerCaseLetter|): Don't define here. + (|isUpperCaseLetter|): Likewise. + (|isLetter|): Likewise. + (printCopyright): Remove. + (user-homedir-pathname): Likewise. + (BUMPCOMPERRORCOUNT): Likewise. + (|cpCms|): Likewise. + (|normalizeTimeAndStringify|): Likewise. + (whocalled): Likewise. + (|compressHashTable|): Likewise. + (SETLETPRINTFLAG): Don't define here. + (RESTART0): Move to sys-driver.boot + * interp/g-util.boot (charRangeTest): Remove. + +2008-08-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (SPAD-SAVE): Fold content into + savesystem. Remove. + +2008-08-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet: Move warm.data.stanza to topics.boot. + +2008-08-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/obey.lisp: Remove. + * interp/Makefile.pamphlet (OBJS): Don't include obey.$(FASLEXT). + * interp/br-data.boot: Replace OBEY with runCommand. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/compat.boot: Likewise. + * interp/debug.lisp: Likewise. + * interp/g-util.boot: Likewise. + * interp/ht-root.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/patches.lisp: Likewise. + * interp/spad.lisp: Likewise. + * interp/util.lisp: Likewise. + * interp/vmlisp.lisp: Likewise. + +2008-08-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet: Clean up. + * interp/sys-driver.boot (SET-RESTART-HOOK): Remove. + +2008-08-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad.pamphlet (AbstractSyntaxCategory): New. + (HeadAst): Likewise. + +2008-08-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/422 + * interp/i-spec1.boot (upDeclare): Fields are not declarations. + * interp/i-map.boot (getUserIdentifiersIn): Ignore field names. + * testsuite/interpreter/aw-422.input: New. + +2008-08-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/pf2sex.boot (pf2Sex1): Handle more ASTs. + (pfType2SexOrNil): New. + (pfDoc2SexOrNil): Likewise. + (pfWith2Sex): Likewise. + (pfAdd2Sex): Likewise. + (pfWDeclare2Sex): Likewise. + (pfAttribute2Sex): Likewise. + (pfWIf2Sex): Likewise. + (pfExport2Sex): Likewise. + (pfInline2Sex): Likewise. + (pfImport2Sex): Likewise. + (pfQualType2Sex): Likewise. + * interp/ptrees.boot (pf0InlineItems): New. + * interp/i-spec2.boot (up%Import): New. + (sorry): Likewise. + (up%Export): Likewise. + (up%Inline): Likewise. + (up%With): Likewise. + (up%Add): Likewise. + * interp/i-intern.boot (mkAtree3): Handle %Inline, %With, %Add, + and %Export. + * interp/i-spec1.boot ($specialOps): Adjust. + * doc/msgs/s2-us.msgs (S2IP0006): New. + +2008-08-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/open-axiom.h (OPENAXIOM_HAVE_GRAPHICS): Define. + * sman/sman.c (process_arguments): Use it. + (process_arguments): Likewise. + +2008-08-09 Alfredo Portes <doyenatccny@gmail.com> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + * sman/sman.c: Do not start hyperdoc/graphics + if OpenAxiom was build without X support. + +2008-08-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * input/grpthry.input.pamphlet: Fix typo. + +2008-08-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot: Rename AST code LET to %LET throughout. + * interp/c-util.boot: Likewise. + * interp/comp.lisp: Likewise. + * interp/compiler.boot: Likewise. + * interp/cparse.boot: Likewise. + * interp/def.lisp: Likewise. + * interp/define.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/i-eval.boot: Likewise. + * interp/i-intern.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-spec2.boot: Likewise. + * interp/iterator.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/newaux.lisp: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/package.boot: Likewise. + * interp/parse.boot: Likewise. + * interp/pf2atree.boot: Likewise. + * interp/pf2sex.boot: Likewise. + * interp/postpar.boot: Likewise. + * interp/property.lisp: Likewise. + * interp/pspad1.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/spad.lisp: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + +2008-08-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/pf2sex.boot (pfMacro2Sex): New. + (pfMLambda2Sex): Likewise. + (pf2Sex1): Use them. + * interp/i-spec2.boot ($VoidValueObject): New. + ($VoidCodeObject): Likewise. + (setValueToVoid): Likewise. + (setCodeToVoid): Likewise. + (upDEF): Call setValueToVoid. + (upfree): Call setCodeToVoid + (uplocal): Likewise. + (interpIF): Call setValueToVoid. + (up%Macro): New. + (up%MLambda): Likewise. + * interp/i-spec1.boot ($specialOps): Add %Macro and %MLambda. + * interp/macex.boot (macMacro): Really return the original macro + as the documentation says. + +2008-08-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/Makefile.in ($(axiom_target_libdir)/libopen-axiom-core.$(LIBEXT)): Tidy. + + * interp/pf2sex.boot (pfApplication2Sex): Don't transform ">", + "=>", and "<=" expressions. + + * algebra/aggcat.spad.pamphlet (part?$SetAggregate): Rename + from <$SetAggregate. + (part?$FiniteSetAggregate): Rename from <$FiniteSetAggregate + * algebra/mset.spad.pamphlet (part?$Multiset): Rename from + <$Mulitset. + * algebra/pleqn.spad.pamphlet (overset?$ParametricLinearEquations): + Use part? instead of <. + * algebra/qalgset.spad.pamphlet (overset?$QuasiAlgebraicSet): Likewise. + * input/mset.input.pamphlet: Adjust. + * input/mset2.input.pamphlet: Likewise. + +2008-08-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/apply.boot: Move content to compiler.boot. Remove. + * interp/Makefile.pamphlet (OCOBJS): Remove apply.$(OBJEXT). + +2008-08-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (boot-completed-p): New. + (|$useDynamicLink|): Likewise. + (|$effectiveFaslType|): Hold extension of linkable FASL. + (|$NativeModuleExt|): Tidy. + (|$CoreLibName|): New. + (|$ExtraRuntimeLibraries|): Likewise. + (extra-runtime-libs): Likewise. + (complete-fasl-list-for-link): Likewise. + (|link|) [ECL]: Link against system libraries. + (|compileLispFile|): Tidy. + (begin-compile-time): New. + (end-compile-time): Likewise. + (compile-time-p): Likewise. + (import-module): Use it. + * lisp/Makefile.in ($(OUT)/lisp$(EXEEXT)): Use oa_c_runtime_extra. + * lib/Makefile.in (oa_installed_corelib): New. + * boot/initial-env.lisp: Don't export systemRootDirectory and + systemLibraryDirectory from here. + * boot/translator.boot (systemRootDirectory): Move to lisp/core.lisp. + (systemLibraryDirectory): Likewise. + (loadSystemRuntimeCore): Do nothing for GCL and ECL. + * interp/boot-pkg.lisp: Inform that Boot system is compleye. + +2008-08-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (genOptimizeOptions): New. + (shoeClLines): Use it. + (shorClCLines): Likewise. + * lisp/core.lisp.in ($LispOptimizeOptions): New; export. + +2008-08-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet (makeint.lisp): Tidy. + +2008-08-05 Grégory Vanuxem <g.vanuxem@orange.fr> + + * interp/foam_l.lisp: Export Nil. + +2008-08-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot (npWith): Commit to parsing upon `with'. + (npAdd): Commit to parsing upon `add'. + (npDef): Tell npDefTail to look for '=='. + (npMdef): Accept argument to indicate '==' or '==>' forms. + (npSingleRule): A Rule is given by '=='. + (npDefTail): Take the kind of definition as a parameter. + (npDefinitionItem): Macro definitions are definitions. + (npMDEFinition): Remove. + (npMDEF): Hand off to npMdef to parse macro definitions. + (npMacro): Macros introduced by `macro' keyword uses '=='. + +2008-08-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot (npExpress1): Make assignment an expression, + therefore a statement. + +2008-08-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2037811 + * interp/vmlisp.lisp (EMBED): Evaluate lambda forms to FUNCTIOn type. + * interp/trace.boot (transTraceItem): Fix thinko. + (spadTrace): Use assoc, not ASSOC. + (addTraceItem): Test for domain objects before constructors. + +2008-08-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/2037804 + * interp/i-syscmd.boot (cd): Convert new directory name + to PATHNAME type before setting as default. + +2008-08-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot ($npPParg): Remove. + ($npPCff): Likewise. + (npPPff, npPCff): Take an argument. + (npPPf): Likewise. + (npPPg, npPCg): Likewise. + (npPP, npPC): Pass around a suspension of the argument. + +2008-08-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Use $(mkdir_p) in lieu of $(mkinstalldirs), + during build. Also use 'cp -p' instead of $(INSTALL). + * algebra/Makefile.pamphlet: Likewise. + * graph/Makefile.in: Likewise. + * boot/Makefile.in: Likewise. + * hyper/Makefile.in: Likewise. + * input/Makefile.pamphlet: Likewise. + * interp/Makefile.pamphlet: Likewise. + * lib/Makefile.in: Likewise. + * lisp/Makefile.in: Likewise. + * share/Makefile.in: Likewise. + +2008-08-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/pf2sex.boot: Replace CAR with first, and CARD with second + throughout. + +2008-08-03 Alfredo Portes <doyenatccny@gmail.com> + + * interp/setvart.boot: Fix wrong parenthesis. + * interp/format.boot: Add mathObject2String function. + +2008-08-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($compilingInputFile): Remove. + ($minivectorNames): Likewise. + * interp/i-map.boot (compileCoerceMap): Don't set $minivectorNames + and $minivectorCode. + * interp/i-spec1.boot (compileADEFBody): Likewise. + * interp/i-toplev.boot (processInteractive): Likewise. + * interp/nrungo.boot (NRTgetMinivectorIndex): Likewise. + * interp/slam.boot (reportFunctionCompilation): Likewise. + +2008-08-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nrungo.boot (NRTisRecurrenceRelation): Lookup "not" with + signature % -> %. + * interp/br-con.boot: Use "~=" for inequality. + +2008-08-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot: Use constants by names. + * interp/i-analy.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-intern.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/nrungo.boot: Likewise. + * interp/postpar.boot: Likewise. + * interp/wi1.boot: Likewise. + +2008-08-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/parser.boot (bpTerm): Term forms depend on the kind of + variable. + (bpTypeItem): New. + (bpTypeItemList): Use it. + (bpTypeAliasDefition): Tidy. + (bpCaseItem): Accept wildchars in pattern terms. + * boot/ast.boot (bfCompDef): Don't name unused pattern variables. + (bfSmintable): A character compares EQL. + (bfCI): Ignore wildcard pattern variables. + * boot/strap: Update cached Lisp translation. + +2008-08-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/macros.lisp (sayBrightlyNT1): Tidy. + (sayBrightly1): Likewise. + * interp/msgdb.boot (sayNewLine): Take two defauled arguments. + (sayString): Take a second defaulted arguments. + (spadStartUpMsgs): Tidy. + (brightPrint): Likewise. + (brightPrint0): Likewise. + (brightPrint0AsTeX): Likewise. + (brightPrint1): Likewise. + (brightPrintHighlight): Likewise. + (brightPrintHighlightAsTeX): Likewise. + (brightPrintCenter): Likewise. + (brightPrintCenterAsTeX): Likewise. + (brightPrintRightJustify): Likewise. + * interp/i-output.boot (mathprint): Take a second defaulted argument. + * boot/ast.boot (%Assignment): Rename from Assignment. + +2008-08-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/msgdb.boot (BRIGHTPRINT-0): Remove. + (BRIGHTPRINT): Likewise. + * interp/macros.lisp (sayBrightly1): Use brightPrint0 and brightPrint. + (sayBrightlyNT1): Likewise. + +2008-07-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (getConstructorFormOfMode): Remove. + (getConstructorMode): Likewise. + (isConstructorForm): Likewise. + +2008-07-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/scan.boot: Tidy. + * interp/ptrees.boot: Define AST for type schemes. + * interp/cparse.boot (npType): Parse type schemes. + (npQuantifierVariable): New. + (npADD): Accept only monotypes. + * interp/pf2sex.boot (pf2Sex1): Handle type schemes. + (pfQuantified2Sex): New. + +2008-07-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/cparse.boot (npMonoType): Rename from npType. + + * boot/strap: Update cached Lisp translation. + + * boot/parser.boot (bpExportItemTail): New. + (bpExportItem): Likewise. + (bpExportItemList): Use it. + (bpSimplMapping): New. + (bpMapping): Use it. + * boot/translator.boot (translateToplevel): Tidy. + * include/open-axiom.h [__MINGW32__]: Include <windows.h>. + * interp/astr.boot: Export functions. + * interp/posit.boot: Likewise. + +2008-07-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compNot): Rename from compileNot. + +2008-07-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * input/pat.input.pamphlet (square): Define square an operatpr. + + Fix SF/2015650 + * interp/compiler.boot (coerceExtraHard): Forms with type Category + are categories. + +2008-07-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * share/algebra: Update databases. + * algebra/Makefile.pamphlet (axiom_algebra_layer_9): Add SIG. + * algebra/syntax.spad.pamphlet (Signature): New. + +2008-07-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-funsel.boot (findUniqueOpInDomain): Use evaluation type + context. + +2008-07-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (initializeGlobalState): New. + (executeSpadScript): Use it. + (compileSpadLibrary): Likewise. + * interp/i-syscmd.boot (spool): Synchronize with standard output. + * boot/translator.boot (bpOutItem): Tidy. + + * interp/nruncomp.boot (NRTencode): Don't encode enumerations. + (listofBoundVars): Enumerations don't bind any varaible. + +2008-07-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compQuote): Restrict quoting to literal + symbols. + * algebra/any.spad.pamphlet: Use nil for empty list. + * algebra/boolean.spad.pamphlet: Fix quoting. + +2008-07-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-spec2.boot (findConstantInDomain): Abstract from + upDollar. + (upDollar): Use it. Don't return general constants as mappings. + * interp/fnewmeta.lisp (|PARSE-FloatTok|): Fix typo. + +2008-07-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/template.boot (evalSlotDomain): Likewise. + (NRTaddInner): Likewise. + * interp/nrunfast.boot (lazyMatch): Handle Enumeration. + (newExpandLocalTypeForm): Likewise. + * interp/lisplib.boot (isFunctor): Enumeration is a functor too. + * interp/nruncomp.boot (NRTencode): Encode Enumeration too. + +2008-07-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad.lisp (S-PROCESS): Remove Old Boot specific codes. + * interp/server.boot (parseAndInterpret): Don't set $BOOT. + * interp/setvars.boot (resetWorkspaceVariables): Likewise. + * interp/spad-parser.boot (parseSpadFile): Likewise. + * interp/postpar.boot: Disable Old Boot handling codes. + * interp/metalex.lisp (quote-if-string): Don't test for $BOOT. + * interp/parsing.lisp (IOStat): Likewise. + (IOClear): Likewise. + * interp/ht-util.boot (parseAndEval): Don't set $BOOT. + * interp/int-top.boot (ncTopLevel): Likewise. + * interp/fnewmeta.lisp: Remove Old Boot specific productions. + * interp/sys-macros.lisp (-REDUCE): Don't test for $BOOT. + (SPADDO): Likewise. + * interp/comp.lisp (COMP-TRAN-1): Likewise. + * interp/util.lisp (|string2SpadTree|): Likewise. + * interp/bootlex.lisp (READBOOT): Remove. + (READ-BOOT): Likewise. + (spad): Don't initialize $BOOT. + * interp/debug.lisp (/D-2): Likewise. + +2008-07-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/initial-env.lisp: Export $InteractiveMode and + string2BootTree. + * boot/translator.boot (BOOTTOCL): Tidy. + (BOOTTOCLC): Likewise. + (BOOTTOCLLINES): Likewise. + (BOOTTOCLCLINES): Likewise. + (string2BootTree): Define. + (translateToplevelExpression): Tidy. + (translateToplevel): Handle atoms. Tidy. + (shoePCompileTrees): Don't use bStreamPackageNull. + * interp/boot-pkg.lisp: Import $interactiveMode and string2BootTree. + * interp/util.lisp (string2BootTree): Remove. + (OLD-BOOT::BOOT): Likewise. + * interp/bootlex.lisp (boot): Likewise. + (boot-parse-1): Likewise. + * interp/compiler.boot (compileNot): Fix thinko. + * interp/sys-globals.boot ($InteractiveMode): Don't define here. + +2008-07-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parse.boot ($normalizeTree): New. + (parseNotEqual): Likewise. + * interp/compiler.boot (compCompilerPredicate): New. + (compileNot): Use it. + * interp/define.boot (compSubDomain1): Likewise. + (doItIf): Likewise. + * interp/bootlex.lisp (boot): Set $nornamizeTree. + * algebra/Makefile.pamphlet (axiom_algebra_layer_9): Move from + layer 4 to here. + +2008-07-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/parse.boot (parseTran): Don't set $op. Don't strip parse + tree codes. + (parseConstruct): Handle parse tree code. + (parseUpArrow): Likewise. + (parseLeftArrow): Likewise. + (parseIs): Likewise. + (parseIsnt): Likewise. + (parseLET): Likewise. + (parseLETD): Likewise. + (parseColon): Likewise. + (parseBigelt): Likewise. + (parseCoerce): Likewise. + (parseAtSign): Likewise. + (parsePretend): Likewise. + (parseHas): Likewise. + (parseDEF): Likewise. + (parseMDEF): Likewise. + (parseCategory): Likewise. + (parseGreaterThan): Likewise. + (parseGreaterEqual): Likewise. + (parseLessEqual): Likewise. + (parseNotEqual): Likewise. + (parseAnd): Likewise. + (parseOr): Likewise. + (parseEquivalence): Likewise. + (parseImplies): Likewise. + (parseExclusiveOr): Likewise. + (parseExit): Likewise. + (parseLeave): Likewise. + (parseReturn): Likewise. + (parseJoin): Likewise. + (parseInBy): Likewise. + (parseSegment): Likewise. + (parseIn): Likewise. + (parseIf): Likewise. + (parseWhere): Likewise. + (parseSeq): Likewise. + (parseVCONS): Likewise. + +2008-07-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nruncomp.boot (NRTassocIndex): Document. + (NRTgetLocalIndexClear): Remove. + (NRTgetLocalIndex1): Lose second unused argument; move body to + NRTgetLocalIndex. + * interp/define.boot (doIt): Call NRTgetLocalIndex, not + NRTgetLocalIndexClear. + * interp/wi2.boot (NRTgetLocalIndex): Rename from NRTgetLocalIndex1. + +2008-07-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compFormMatch): Tidy. + (getFormModemaps): Likewise. + (compComma): New. + * interp/c-util.boot (isTupleInstance): New. + (isHomoegenousVarargSignature): Likewise. + (enoughArguments): Likewise. + (wantArgumentsAsTuple): Likewise. + * interp/apply.boot (reshapeArgumentList): New. + (compFormWithModemap): Use it. + +2008-07-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/429 + * algebra/multpoly.spad.pamphlet (IndexedExponents): Fix comment type. + +2008-07-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/category.boot (isCategory): Document. + (isCategoryForm): Likewise. Tidy. + (mkCategory): Likewise. + +2008-07-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <bill.page@newsynthesis.org> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/428 + * algebra/syntax.spad.pamphlet (ConstructorCall): Now a member of + SetCategory. + (Domain): Likewise. + * share/algebra: Update databases. + * testsuite/interpreter/aw-428.input: New. + +2008-07-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compExpression): Tidy. + (coerceExtraHard): Convert domain instantiations to domain objects. + (compAndDefine): Capture by name, not pointer. + (compQuietly): Likewise. + (compileQuietly): Likewise. + * interp/macros.lisp (PRINT-AND-EVAL-DEFUN): Move to sys-utility.boot. + (EVAL-DEFUN): Likewise. + (COMPILE-DEFUN): Likewise. + * interp/postpar.boot (postBootNotEqual): Register post-parsers by + name, not by pointers. + +2008-06-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/variable.spad.pamphlet (ModePatternVariable): New. + +2008-06-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/comp.lisp (|compAndDefine|): Move to interp/compiler.boot + (COMP): Likewise. + (|compQuietly|): Likewise. + (|compileQuietly|): Likewise. + (COMP-1): Likewise. + + * interp/define.boot (compDefineCategory): Check that a category + was indeed abbreviated a category. + +2008-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/421. + * interp/i-spec2.boot (uphas): When compiling a function, don't + bother evaluating type variables. + * testsuite/interpreter/aw-412.input: Add. + +2008-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-analy.boot (conceptualType): Only Mode, Domain, and + Category are conceptually abstract. + * testsuite/interpreter/category.input: Add a testcase. + +2008-05-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/interop.boot (newHasCategory): Category is a category, and + all domains belong to Category. + * testsuite/interpreter/category.input: New. + +2008-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/showimp.boot (showPredicates): Fix typo. + * testsuite/interpreter/show.input: New. + +2008-05-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (OrderedMonoid): Nown + OrderedSemiGroup and a Monoid. + * share/algebra: Updata databases. + +2008-05-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/open-axiom.h (openaxiom_handle): New datatype. + * hyper/node.h [!X_DISPLAY_MISSING]: Use it. + +2008-05-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/catdef.spad.pamphlet (OrderedSemiGroup): New. + * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include OSGROUP. + +2008-05-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-coerce.boot (retract2Specialization): Leave if object + is an Expression, but not a fraction. + + * interp/define.boot (compDefineFunctor1): Robustify. + * hyper/parse-types.c (htperror): Fix thinko. + +2008-05-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (stackAndThrow): Take an optional parameter. + * interp/compiler.boot (compReturn): Robustify. + (unknownTypeError): Likewise. + * interp/info.boot (knownInfo): Likewise. + + * algebra/modgcd.spad.pamphlet: Fix sectioning thinko. + +2008-05-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/57 + * etc/Makefile.in: Make all databases part of the final system. + +2008-05-22 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/token.h: Avoid numeric constants macros. + Prefix enumerations with "openaxiom_". + * hyper/cond.c: Adjust. + * hyper/display.c: Likewise. + * hyper/event.c: Likewise. + * hyper/extent1.c: Likewise. + * hyper/extent2.c: Likewise. + * hyper/htadd.c: Likewise. + * hyper/htinp.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/spadint.c: Likewise. + * hyper/titlebar.c: Likewise. + + * hyper/hyper.h: Move lexing stuff to hyper/lex.h + * hyper/htadd.c: Don't include hyper.h. Include cfuns.h and + node.h instead. + +2008-05-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/hthits.c (regerr): Remove. + * include/ex2ht.H1: Remove. + * include/hthits.H1: Remove. + + * lib/cfuns-c.c (oa_getenv): Fix thinko. + (oa_getcwd): Likewise. + * lib/cfuns-c.c (oa_access_file_for_read): Likewise. + + * hyper/lex.c: Don't include hyper.h, hterror.h and + sockio.h. Include node.h. + * hyper/hyper.h: Don't include X11 headers. Include node.h. + Mode node data structures to node.h. + * hyper/cond.c: Don't include hterror.h. Include lex.h + * hyper/Makefile.in (HEADERS): Include node.h. Remove hterror.h. + (hypertex_SOURCES): Remove hterror.c + (htadd_SOURCES): Likewise. + * hyper/node.h: New. + * hyper/hterror.h: Remove. + * hyper/hterror.c (token_name): Move to hyper/lex.c. + (print_token): Likewise. + (print_next_ten_tokens): Likewise. + (print_page_and_filename): Likewise. + (jump): Likewise. + (ebuffer): Likewise. + (htperror): Move to parse-types.c + Remove file. + + * include/cfuns.h (oa_get_tmpdir): Declare. + (oa_access_file_for_read): Likewise. + * lib/cfuns-c.c (oa_getcwd): Define. + (oa_access_file_for_read): Likewise. + (oa_get_tmpdir): Likewise. + * hyper/addfile.c: Don't include hyper.h + (build_ht_filename): Use oa_getcwd, oa_access_file_for_read. + (temp_file_open): Use oa_get_tmpdir. + * hyper/htadd.c (build_db_filename): Don't fall back to bogus + filename. + * hyper/hyper.h (temp_dir): Remove. + (def_spad): Likewise. + + * hyper/hyper.h (connect_spad): Declare. + (gPageBeingParsed): Likewise. + * hyper/htadd.c (session_server): Remove. + (MenuServerOpened): Likewise. + (gXDisplay): Likewise. + (gXScreenNumber): Likewise. + * hyper/lex.c (reset_connection): Move to hyper/parse.c + (connect_spad): Move to hyper/spadint.c + (spad_busy): Likewise. + (get_char1): Remove conditional code. + * hyper/Makefile.in (mostclean-local): Tidy. + +2008-05-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * graph/Gdraws/Makefile.in (HEADERS): Don't include hash.H1. + * include/halloc.h: Rename from include/halloc.H1. + * include/lex.H1: Remove. + * include/hterror.H1: Likewise. + * hyper/halloc.c: Likewise. + * hyper/hash.c: Likewise. + * hyper/Makefile.in (hypertex_SOURCES): Don't include hash.c, + halloc.c. + +2008-05-21 Igor Kahvkine <ikhavkin@uwo.ca> + Waldek Hebisch <hebisch@math.uni.wroc.pl> + + Fix AW/32 + * algebra/sttaylor.spad.pamphlet + (powern$StreamTaylorSeriesOperations): Tidy. + +2008-05-21 Martin Rubey <martin.rubey@univie.ac.at> + + Fix AW/343 + * algebra/free.spad.pamphlet (<$FreeAbelianGroup): Fix ordering. + +2008-05-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Cleanup. + * boot/includer.boot: Likewise. + * boot/parser.boot: Likewise. + * boot/pile.boot: Likewise. + * boot/scanner.boot: Likewise. + * boot/tokens.boot: Likewise. + * boot/translator.boot: Likewise. + +2008-05-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Port from btx-branch. + * lisp/core.lisp.in ($effectiveFaslType): New. + * boot/translator.boot (needsStableReference?): Handle the ECL case. + (coerceToNativeType): Likewise. + (genImportDeclaration): Likewise. + (shoeRemoveStringIfNec): Fix thinko. + ($bootDefined): Define. + ($bootDefinedTwice): Likewise. + ($lispWordTable): Likewise. + (getIntermediateLispFile): Use $effectiveFaslType. + (loadSystemRuntimeCore): Use coreError, not systemError. + +2008-05-18 Martin Rubey <martin.rubey@univie.ac.at> + + Fix AW/412 + * algebra/aggcat.spad.pamphlet (=$TableAggregate): Fix thinko. + +2008-05-18 Gregory Vanuxem <g.vanuxem@wanadoo.fr> + + Fix AW/149 + * hyper/keyin.h (UnsupportedModMask): Rename from ShiftModMask. + * hyper/keyin.c (UnsupportedModMask): Likewise. + (get_modifier_mask): New. + (init_keyin): Use it. + * hyper/dialog.c (dialog): Adjust. + +2008-05-18 Bill Page <bill.page@newsynthesis.org> + + Fix AW/117 + * algebra/vector.spad.pamphlet (DirectProductCategory): Also a + Monoid is base type belongs to Monoid. + (DirectProduct): Implement multiplication is base type belongs to + Monoid. + +2008-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/221 + * algebra/catdef.spad.pamphlet (OrderedAbelianSemiGroup): Now a + join of OrderedSet and AbelianSemiGroup. + * algebra/integer.spad.pamphlet (PositiveInteger): Now belongs to + both OrderedAbelianSemiGroup and Monoid. Update cached Lisp + translation. + * shared/algebra: Update databases. + +2008-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/313 + * algebra/reclos.spad.pamphlet (sqrt$RealClosedField): Fix signature. + +2008-05-18 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/319 + * hyper/pages/MSET.ht: Fix typo. + +2008-05-18 Martin Rubey <martin.rubey@univie.ac.at> + + Fix AW/321 + * hyper/htsearch (htpagedir): Avoid deprecated switch. + +2008-05-18 Martin Rubey <martin.rubey@univie.ac.at> + + Fix AW/340 + * algebra/numtheor.spad.pamphlet + (divisors$IntegerNumberTheoryFunctions): Fix thinko. + +2008-05-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/alql.spad.pamphlet (IndexCard): Don't use pretend. + +2008-05-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/16 + * interp/i-analy.boot (isConceptualCategory): New. + * interp/i-object.boot (getValueNormalForm): Use it. + * testsuite/interpreter/aw-16.input: New. + +2008-05-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-object.boot (wrapped2Quote): Reomve. + (getValueNormalForm): New. + * interp/i-code.boot (intCodeGenCOERCE): Use it. + * interp/i-coerce.boot (coerceIntByMap): Likewise. + * interp/i-eval.boot (getArgValue): Likewise. + (getArgValue2): Likewise. + * interp/i-funsel.boot (selectMms): Likewise. + * interp/i-map.boot (rewriteMap): Likewise. + * interp/i-spec2.boot (IFcodeTran): Likewise. + (evalLET): Likewise. + (upreturn): Likewise. + * interp/g-cndata.boot (isConstructorName): New. + * testsuite/interpreter/eval-dep-type.input: New. + + * interp/format.boot (form2String1): Handle PAREN. + * interp/g-cndata.boot (condUnabbrev): Handle homogeneous varargs + for constructors taking tuples. + * interp/i-resolv.boot: Revolve domains and categories. + +2008-05-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/420 + * interp/compiler.boot (compSetq1): Use %Comma, not Tuple. + (setqMultiple): Likewise. + * interp/def.lisp (DEF-IS2): Likewise. + * interp/define.boot (compAdd): Likewise. + * interp/fnewmeta.lisp (|PARSE-Enclosure|): Likewise. + * interp/fortcall.boot (lmultiToUnivariate): Likewise. + (functionAndJacobian): Likewise. + (vectorOfFunctions): Likewise. + * interp/mark.boot (markMultipleExplicit): Likewise. + (markInsertBodyParts): Likewise. + * interp/nruncomp.boot (NRTaddDeltaCode): Likewise. + * interp/nrunopt.boot (NRTextendsCategory1): Likewise. + * interp/postpar.boot (postTransform): Likewise. + (postTran): Likewise. + (postPretend): Likewise. + (postConstruct): Likewise. + (postBlockItem): Likewise. + (postCategory): Likewise. + (postForm): Likewise. + (postTransScripts): Likewise. + (postJoin): Likewise. + (postMapping): Likewise. + (postCollect): Likewise. + (postInSeq): Likewise. + (postType): Likewise. + (post%Comma): Rename from postTuple. + (unComma): Rename from unTuple. + (comma2Tuple): Remove. + * interp/trace.boot (traceSpad2Cmd): Use %Comma, not Tuple. + * interp/wi1.boot (compSetq1): Likewise. + (setqMultiple):Likewise. + * boot/translator.boot (compileBootHandler): Give up if + translation to Lisp contained errors. + * testsuite/compiler/aw-420.spad: New. + + * interp/Makefile.pamphlet: Simplify. + +2008-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (leaveIfErrors): Take constructor name + parameter. + (finalizeLisplib): Adjust call. + (compDefineLisplib): Likewise. + +2008-05-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/lisplib.boot (leaveIfErrors): New. + (compDefineLisplib): Use it. + (finalizeLisplib): Likewise. + * algebra/Makefile.pamphlet (%.NRLIB/code.$(FASLEXT)): Invoke the + compiler directly. + (SPADPRSR.NRLIB/code.$(FASLEXT)): Likewise. + (PARSER.NRLIB/code.$(FASLEXT)): Likewise. + * interp/compiler.boot (compSetq1): Fix thinko. + * interp/define.boot (hasSigInTargetCategory): Give a clue to the + pretty printer. + * interp/sys-utility.boot ($ERASE): Remove declaration. + +2008-05-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/nregset.spad.pamphlet (recip$NormalizationPackage): Fix + thinko. + +2008-05-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (warnLiteral): Just warn, really. + * algebra/riccati.spad.pamphlet (RationalRicDE): Don't import + inexistent RatODETools. + +2008-05-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/c-util.boot (isLiteral): Declare. + (makeLiteral): Likewise. + * interp/compiler.boot (compSymbol): Use isLiteral. + * interp/wi1.boot (compSymbol): Likewise. + + * algebra/asp.spad.pamphlet (Asp30): Don't name local variable as + record field. + (Asp31): Likewise. + (asp34): Likewise. + (Asp77): Likewise. + (Asp8): Likewise. + (Asp9): Likewise. + * algebra/fortran.spad.pamphlet (FortranCode): Likewise. + * algebra/moebius.spad.pamphlet (MoebiusTransform): Likewise. + +2008-05-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Restrict loop variable scopes, take 2. + * interp/iterator.boot (compReduce1): Maintain proper scope for + loop variables. + (compRepeatOrCollect): Really maintain proper scope for loop variables. + * interp/compiler.boot (eltModemapFilter): Highlight faulty selector. + (seteltModemapFilter): Likewise. + * interp/c-util.boot (stackMessage): Don't build message if there + is no argument for substitution. + * algebra/aggcat.spad.pamphlet (#$UnaryRecursiveAggregate): + Declare free loop variable. + (cycleEntry$UnaryRecursiveAggregate): Likewise. + (cycleLength): Likewise. + (merge$OneDimensionalArrayAggregate): Likewise. + (delete$OneDimensionalArrayAggregate): Likewise. + (position$ListAggregate): Likewise. + * algebra/array1.spad.pamphlet (merge!$IndexedFlexibleArray): Likewise. + * algebra/combfunc.spad.pamphlet (K2fact$CombinatorialFunction): + Likewise. + * algebra/curve.spad.pamphlet + (nonSingularModel$FunctionFieldCategory): Likewise. + * algebra/dpolcat.spad.pamphlet + (differentiate$DifferentialPolynomialCategory): Likewise. + * algebra/efstruc.spad.pamphlet + (validExponential$ElementaryFunctionStructurePackage): Likewise. + (ker2explogs$InnerTrigonometricManipulations): Likewise. + (complexNormalize$TrigonometricManipulations): Likewise. + +2008-05-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/iterator.boot (compRepeatOrCollect): Don't iterator + variables and variables declared in a loop are local to that loop. + * interp/g-error.boot (needsToSplitMessage): New. + (errorSupervisor): Use it. + * interp/compiler.boot (compSymbol): Highlight erron=eous symbol. + * interp/wi1.boot (stackMessage): Remove duplicate. + * algebra/ffcat.spad.pamphlet (FiniteFieldCategory): Tidy. + * algebra/fff.spad.pamphlet (FiniteFieldFunctions): Likewie. + * algebra/groebsol.spad.pamphlet (GroebnerSolve): Likewise. + * algebra/intfact.spad.pamphlet (IntegerRoots): Likewise. + * algebra/mkfunc.spad.pamphlet (InputForm): Likewise. + * algebra/numtheor.spad.pamphlet (IntegerNumberTheoryFunctions): + Likewise. + * algebra/permgrps.spad.pamphlet (PermutationGroup): Likewise. + * algebra/random.spad.pamphlet (RandomFloatDistributions): Likewise. + * algebra/sgcf.spad.pamphlet + (SymmetricGroupCombinatoricFunctions): Likewise. + * algebra/triset.spad.pamphlet (PolynomialSetUtilitiesPackage): + Likewise. + * algebra/twofact.spad.pamphlet (TwoFactorize): Likewise. + + * interp/apply.boot: Miscellanous cleanup. + * interp/compiler.boot: Likewise. + * interp/c-util.boot: Likewise. + * interp/define.boot: Likewise. + * interp/format.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/info.boot: Likewise. + * interp/i-toplev.boot: Likewise. + * interp/int-top.boot: Likewise. + * interp/iterator.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/package.boot: Likewise. + * interp/sys-driver.boot: Likewise. + +2008-05-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/as.boot: Remove Old Boot semantics. + * interp/br-con.boot: Likewise. + * interp/br-data.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-op2.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/compiler.boot: Likewise. + * interp/define.boot: Likewise. + * interp/fortcall.boot: Likewise. + * interp/functor.boot: Likewise. + * interp/htsetvar.boot: Likewise. + * interp/newfort.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunopt.boot: Likewise. + + * interp/c-util.boot: Remove Old Boot semantics. + * interp/database.boot: Likewise. + * interp/format.boot: Likewise. + * interp/g-timer.boot: Likewise. + * interp/i-analy.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-coerfn.boot: Likewise. + * interp/i-eval.boot: Likewise. + * interp/i-intern.boot: Likewise. + * interp/i-output.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/msgdb.boot: Likewise. + * interp/newfort.boot: Likewise. + * boot/includer.boot (diagnosticLocation): New. + * boot/ast.boot (bfReName): Use it. + +2008-05-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/java.spad.pamphlet: New. Implement JavaBytecode. + * algebra/data.spad.pamphlet (bitand$Byte): New. + (bitior$Byte): Likewwise. + (byte$Byte): Likewise. + * algebra/Makefile.pamphlet (axiom_algebra_layer_15): Include + JAVACODE. + + * boot/translator.boot (translateToplevel): Split out of bpOutItem. + (maybeExportDecl): New. + + * boot/translator.boot (bpOutItem): Handle namespace declaration. + Update all boot files to use `namespace' instead of `)package'. + * interp/: Likewise. + +2008-05-07 Bill Page <bill.page@newsynthesis.org> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (true$Boolean): Simplify. + (=$Boolean): Likewise. + (equiv$Boolean): Likewise. + * interp/spad.lisp (|BooleanEquality|): Remove. + +2008-05-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/boolean.spad.pamphlet (Boolean): Don't pretend to + Boolean. Updated cached Lisp translation. + + * interp/types.boot (%Integer): Alias for Lisp INTEGER class. + * interp/sys-utility.boot (getVMType): Integer is represented by + %Integer. + * interp/postpar.boot (postSignature): Don't ignore constants. + +2008-05-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/define.boot: Explicitly initialize fluid variables. + * interp/functor.boot: Likewise. + * interp/g-opt.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/package.boot: Likewise. + * interp/parse.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/record.boot: Likewise. + * interp/template.boot: Likewise. + * interp/trace.boot: Likewise. + * interp/wi1.boot: Likewise. + * interp/wi2.boot: Likewise. + + * lisp/core.lisp.in: Incorporate changes from btx-branch. + * lisp/Makefile.in: Likewise. + +2008-05-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (getVMType): Fix thinko. + + * interp/c-util.boot (compilerMessage): Tidy. + +2008-05-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sockio.lisp: Remove. + +2008-04-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Declare tokens as constants. + + * boot/parser.boot (bpExportItemList): New. + (bpExports): Likewise. + (bpModule): Use it. + * boot/ast.boot (bfCreateDef): Tidy. + * boot/strap: Update cached Lisp translation. + +2008-04-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/util.lisp (build-interpsys): Call %sysInit. + * boot/translator.boot (shoeClLines): Output module finalization. + (shoeClCLines): Likewise. + (genImportDeclaration): Tidy. + (bpOutItem): Likewise. + ($OpenAxiomCoreModuleLoaded): Remove. + * interp/sys-driver.boot: Tidy. + +2008-04-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in: Export %ByteArray and makeByteArray. + (CONCAT): Tdiy. + * lib/sockio-c.c: Tidy. + * lib/cfuns-c.c (oa_getenv): Define. + * interp/sys-os.boot (getEnv): Import. + (sockGetString): Tidy. + * interp/sockio.lisp (sockGetString): Remove GCL's defentry. + * interp/server.boot (serverReadLine): sockGetString now takes + only one argument. + * interp/br-saturn.boot (operationIsNiladicConstructor): New. + (operationIsConstructor): Likewise. + (displayDomainOp): Use them. + * include/cfuns.h (oa_getenv): Declare. + * include/sockio.h: Tidy. + * boot/translator.boot (needsStableReference?): New. + (coerceToNativeType): Likewise. + (prepareArgumentsForNativeCall): Likewise. + (genImportDeclaration): Use them. + +2008-04-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * sman/spadclient.c: Cleanup. + * sman/sman.c: Likewise. + * sman/session.c: Likewise. + * lib/spadcolors.c: Likewise. + * lib/sockio-c.c: Likewise. + * include/spadint.H1: Likewise. + * include/sockio.h: Likewise. + * include/hterror.H1: Likewise. + * include/com.h: Likewise. + * hyper/spadint.c: Likewise. + * hyper/spadbuf.c: Likewise. + * hyper/parse.c: Likewise. + * hyper/lex.c: Likewise. + * hyper/hyper.h: Likewise. + * hyper/hyper.c: Likewise. + * hyper/hterror.c: Likewise. + * hyper/htadd.c: Likewise. + * graph/viewman/viewman.c: Likewise. + * graph/viewman/makeGraph.c: Likewise. + * graph/viewman/globalsM.h: Likewise. + * graph/view3D/viewport3d.c: Likewise. + * graph/view3D/testcol.c: Likewise. + * graph/view3D/spadAction3d.c: Likewise. + * graph/view3D/main3d.c: Likewise. + * graph/view3D/component3d.c: Likewise. + * graph/view2D/viewport2D.c: Likewise. + * graph/view2D/process2d.c: Likewise. + * graph/view2D/main2d.c: Likewise. + +2008-04-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp/core.lisp.in (|pathBasename|): New. + * interp/br-con.boot (kPageArgs): Remove. + (dbPresentCons): Likewise. + * interp/br-data.boot (purgeLocalLibdb): Likewise. + * interp/br-op1.boot (dbPresentOps): Likewise. + (dbConform): Likewise. + (dbGatherThenShow): Likewise. + (displayDomainOp): Likewise. + (htSayIndentRel): Likewise. + * interp/br-saturn.boot (htpAddInputAreaString): Likewise. + (htpSetLabelInputStringArea): Likewise. + (htTab): Likewise + * interp/br-search.boot (htShowPageStar): Likewise. + (htSay): Likewise. + (bcConform1): Likewise. + * interp/cformat.boot (pkey): Likewise. + * interp/ht-util.boot (htpAddToPageDescrption): + Likewise. + (bcHt): Likewise. + (htInitPage): Likewise. + (htAddHeading): Likewise. + (htShowPage): Likewise. + (htShowPageNoScroll): Likewise. + (htMakePage): Likewise. + (htMakePage1): Likewise. + (htMakeErrorPage): Likewise. + (htProcessBcStrings): Likewise. + (btBcLinks): Likewise. + (btBcLispLinks): Likewise. + (setUpDefault): Likewise. + (htMakeButton): Likewise. + (htDoneButton): Likewise. + * interp/hypertex.boot (endHTPage): Likewise. + * interp/i-syscmd.boot (makeInitialModemapFrame): Likewise. + * interp/macro.lisp (sayNewLine): Likewise. + * interp/nhyper.boot (endHTPage): Likewise. + * interp/pathname.boot (deleteFile): Likewise. + * interp/Makefile.pamphlet (YEARWEEK): Make TIMESTAMPT constant. + * boot/translator.boot (getIntermediateLispFile): New. + (compileBootHandler): Use it. + +2008-04-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: Tidy. + * boot/includer.boot: Likewise. + * boot/parser.boot: Likewise. + * boot/pile.boot: Likewise. + * boot/scanner.boot: Likewise. + * boot/tokens.boot: Likewise. + * boot/translator.boot: Likewise. + * boot/strap: Update Lisp translation. + * lisp/core.lisp.in: Tidy. + +2008-04-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/br-data.boot: Tidy. + * interp/br-util.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/clammed.boot: Likewise. + * interp/define.boot: Likewise. + * interp/g-cndata.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/ht-util.boot: Likewise. + * interp/i-map.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/nrungo.boot: Likewise. + * interp/rulesets.boot: Likewise. + * interp/slam.boot: Likewise. + * interp/i-spec1.boot: Likewise. + * interp/Makefile.pamphlet (br-util.$(FASLEXT)): Don't compile as + Old Boot. + (bc-solve.$(FASLEXT)): Likewise. + (ht-util.$(FASLEXT)): Likewise. + (rulesets.$(FASLEXT)): Likewise. + (i-object.$(FASLEXT)): Likewise. + (i-util.$(FASLEXT)): Likewise. + (nrunfast.$(FASLEXT)): Likewise. + (nrungo.$(FASLEXT)): Likewise. + (iterator.$(FASLEXT)): Likewise. + (cattable.$(FASLEXT)): Likewise. + (c-doc.$(FASLEXT)): Likewise. + (posit.$(FASLEXT)): Likewise. + (modemap.$(FASLEXT)): Likewise. + (slam.$(FASLEXT)): Likewise. + (clammed.$(FASLEXT)): Likewise. + (g-opt.$(FASLEXT)): Likewise. + (g-error.$(FASLEXT)): Likewise. + (pathname.$(FASLEXT)): Likewise. + (g-util.$(FASLEXT)): Likewise. + (g-cndata.$(FASLEXT)): Likewise. + * boot/tokens.boot: Remove renaming of NOT to NULL, when compiling + Old Boot. + +2008-04-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (getVMType): New. + * interp/sys-macros.lisp (|byteLessThan|): New. + (|byteGreaterEqual|): Likewise. + (|makeSimpleArray|): Likewise. + (|makeFilledSimpleArray|): Likewise. + (|getSimpleArrayEntry|): Likewise. + (|setSimpleArrayEntry|): Likewise. + (|sizeOfSimpleArray|): Likewise. + (|maxIndexOfSimpleArray|): Likewise. + * interp/compiler.boot (checkCallingConvention): Tidy return type. + * algebra/exposed.lsp.pamphlet: Expose Byte and ByteArray. + * algebra/data.spad.pamphlet: New. + * algebra/array1.spad.pamphlet (PrimitiveArray): Rewrite. + Update cached Lisp translation. + * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include BYTE. + (axiom_algebra_layer_12): Include BYTEARY. + * share/algebra: Update databases. + +2008-04-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/template.boot (evalSlotDomain): Tidy. + * interp/macros.lisp (Record): Remove. + * interp/buildom.boot (RecordInner): Remove. + (Record): Rename from Record0. Tidy. + * interp/Makefile.pamphlet (buildom.$(FASLEXT)): Don't compiel as + Old Boot. + +2008-04-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet (parse.$(FASLEXT)): Don't compile as + Old Boot. + * interp/parse.boot (parseTypeEvaluate): Remove. + (parseTypeEvaluateArgs): Likewise. + (parseType): Don't evaluate type during parsing. + ($oldParserExpandAbbrs): Remove. + (parseTypeError): Likewise. + (specialModeTran): Likewise. + + * interp/fnewmeta.lisp: Don't overstep on use namespace with + Attribute, Signature, and Reduce. + * interp/postpar.boot: Likewise. + * interp/ptrees.boot: Likewise. Tidy. + * interp/Makefile.pamphlet (ptrees.$(FASLEXT)): Don't compile as + Old Boot. + +2008-04-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/Makefile.pamphlet (postpar.$(FASLEXT)): Dont' compile as + Old Boot code. + * interp/postpar.boot: Adjust function declarations. + (aplTran): Remove. + (containsBang): Likewise. + (containsBang): Likewise. + (aplTranList): Likewise. + (hasAplExtension): Likewise. + (deepestExpression): Likewise. + (postTransform): Adjust. + + * driver/utils.c (openaxiom_build_rts_options): Fix thinko. + +2008-04-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot: Cleanup. + +2008-04-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot (%DefaultValue): New %Ast node. + (bfParameterList): New. + (bfInsertLet): Use it. + (bfInsertLet1): Handle parameter with default values. + * boot/parser.boot (bpRegularBVItemTail): Split from bpRegularBVItem. + (bpRegularBVItem): Tidy. + +2008-04-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/ast.boot: + * interp/define.boot ($mutableDomain): Define. + (compDefineFunctor): Initialize it before compiling a functor. + +2008-04-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot: Don't special case ListCategory, String, + VECTOR, and VectorCategory. + +2008-04-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot: Don't rename NOT. + * interp/define.boot: Add declarations. + * interp/types.boot (%Signature): New. + +2008-04-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/as.boot: Remove explicit use GETDATABASE. + * interp/br-con.boot: Likewise. + * interp/br-data.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-op2.boot: Likewise. + * interp/br-prof.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/c-doc.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/clammed.boot: Likewise. + * interp/daase.lisp: Likewise. + * interp/database.boot: Likewise. + * interp/define.boot: Likewise. + * interp/format.boot: Likewise. + * interp/g-cndata.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/hashcode.boot: Likewise. + * interp/i-coerce.boot: Likewise. + * interp/i-eval.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/mark.boot: Likewise. + * interp/modemap.boot: Likewise. + * interp/nruncomp.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/nrunopt.boot: Likewise. + * interp/parse.boot: Likewise. + * interp/postpar.boot: Likewise. + * interp/pspad1.boot: Likewise. + * interp/pspad2.boot: Likewise. + * interp/showimp.boot: Likewise. + * interp/template.boot: Likewise. + * interp/topics.boot: Likewise. + * interp/types.boot (%Atom): New. + * algebra/Makefile.pamphlet (axiom_algebra_layer_0): Tidy. + (axiom_algebra_layer_4): Likewise. + (axiom_algebra_layer_19): Likewise. + +2008-04-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/apply.boot: Tidy signature declarations. + * interp/as.boot: Use getConstructorKindFromDB throughout. + * interp/br-con.boot: Likewise. + * interp/br-data.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-op2.boot: Likewise. + * interp/br-prof.boot: Likewise. + * interp/br-saturn.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/clam.boot: Likewise. + * interp/clammed.boot: Likewise. + * interp/compiler.boot: Tidy signature declarations. + * interp/construct.lisp: Use getConstructorKindFromDB throughout. + * interp/daase.lisp: Likewise. + * interp/database.boot (getConstructorAbbreviationFromDB): New. + (getConstructorCategoryFromDB): Likewise. + (getConsructorKindFromDB): Likewise. + (getConstructorAncestorsFromDB): Likewise. + (getConstructorSourceFileFromDB): Likewise. + * interp/define.boot: Use getConstructorKindFromDB throughout. + * interp/domain.lisp: Likewise. + * interp/format.boot: Likewise. + * interp/g-cndata.boot: Likewise. + * interp/g-util.boot: Likewise. + * interp/i-eval.boot: Likewise. + * interp/i-funsel.boot: Likewise. + * interp/i-resolv.boot: Likewise. + * interp/i-syscmd.boot: Likewise. + * interp/interop.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/nrunfast.boot: Likewise. + * interp/parse.boot: Likewise. + * interp/setvars.boot: Likewise. + * interp/sys-constant.boot ($EmptyVector): Fix thinko + * interp/types.boot (%Maybe): New. + (%ConstructorKind): Likewise. + * input/exsum.input.pamphlet: Fix thinko. + * input/mapleok.input.pamphlet: Fix typos. + +2008-04-12 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/ax.boot: Use getConstructorModemap throughout. + * interp/br-data.boot: Likewise. + * interp/br-op1.boot: Likewise. + * interp/br-prof.boot: Likewise. + * interp/br-search.boot: Likewise. + * interp/br-util.boot: Likewise. + * interp/cattable.boot: Likewise. + * interp/daase.lisp: Likewise. + * interp/g-util.boot: Likewise. + * interp/lisplib.boot: Likewise. + * interp/nrunopt.boot: Likewise. + +2008-04-12 Juergen Weiss <weiss@uni-mainz.de> + + * interp/define.boot (compCapsuleItems): Fix thinko. + * interp/newaux.lisp: Increase the binding power of "+->". + +2008-04-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot: Register compiler for Enumeration + instantiations. + * interp/modemap.boot (compCat): Move to compiler.boot. + +2008-04-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/translator.boot (bpOutItem): Tidy. + * boot/parser.boot (bpTypeAliasDefition): Support parameterized alias. + * boot/ast.boot (quote): New. + (backquote): Likewise. + (genTypeAlias): Likewise. + +2008-04-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nlib.lisp (recompile-lib-file-if-necessary): Remove. + * interp/comp.lisp (|compileFileQuietly|): Move to compiler.boot. + +2008-04-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/Lattice.pamphlet: Remove. + +2008-04-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/spad.lisp (|evalSharpOne|): Remove. + * interp/i-coerce.boot: New. + (coerceUnion2Branch): Use it instead of evalSharpOne. + +2008-04-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-analy.boot (pushDownOp?): Use setShellEntry. + * interp/nrunfast.boot (replaceGoGetSlot): Likewise. + (lazyDomainSet): Likewise. + * interp/nrungo.boot (goGet): Likewise. + +2008-04-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compWithMappingMode): Use getShellEntry. + * interp/define.boot (compDefineFunctor1): Use setShellEntry. + (canCacheLocalDomain): Likewise. + (compilerCases): Likewise. + (doIt): Likewise. + * interp/functor.boot (setVector0): Likewise. + (setVector3): Likewise. + (setVector4part4): Likewise. + (setVector5): Likewise. + (mkVectorWithDeferral): Likewise. + (DescendCodeAdd1): Likewise. + (DescendCode): Likewise. + (ConsantCreator): Likewise. + (SetFunctionSlots): Likewise. + (CheckVector): Likewise. + * interp/g-opt.boot (optCall): Use getShellEntry. + (optSpecialCall): Likewise. + * interp/i-util.boot (devaluate): Likewise. + * interp/nruncomp.boot (buildFunctor): Use setShellEntry. + (NRTsetVector4a): Likewise. + (NRTputInLocalReferences): Use getShellEntry. + (NRTputInHead): Likewise. + * interp/nrunopt.boot (augmentPredVector): Use setShellEntry. + * interp/nruntime.boot (getShellEntry): New. + (setShellEntry): Likewise. + * interp/package.boot (processPackage): Use getShellEntry. + (PackageDescendCode): Use setShellEntry. + * interp/sys-globals.boot ($QuickCode): Remove. + * interp/template.boot (NRTdescendCodeTran): Use setShellEntry. + * interp/types.boot (%Void): New. + (%Shell): New. + * interp/wi2.boot (compDefineFunctor1): Use setShellEntry. + +2008-04-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-constants.boot ($quitTag): Define here. + * interp/spaderror.lisp ($quitTag): Don't define here. + +2008-04-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * graph/include/Gfun.H1: Remove K&R prototypes. + * graph/include/buttons2d.H1: Likewise. + * graph/include/buttons3d.H1: Likewise. + * graph/include/cleanup.H1: Likewise. + * graph/include/closeView3d.H1: Likewise. + * graph/include/component3d.H1: Likewise. + * graph/include/control2d.H1: Likewise. + * graph/include/control3d.H1: Likewise. + * graph/include/fun2D.H1: Likewise. + * graph/include/fun3D.H1: Likewise. + * graph/include/graph2d.H1: Likewise. + * graph/include/illuminate3d.H1: Likewise. + * graph/include/lightbut3d.H1: Likewise. + * graph/include/lighting3d.H1: Likewise. + * graph/include/main2d.H1: Likewise. + * graph/include/main3d.H1: Likewise. + * graph/include/make2D.H1: Likewise. + * graph/include/make3D.H1: Likewise. + * graph/include/makeGraph.H1: Likewise. + * graph/include/mesh3d.H1: Likewise. + * graph/include/msort3d.H1: Likewise. + * graph/include/pot2d.H1: Likewise. + * graph/include/pot3d.H1: Likewise. + * graph/include/process2d.H1: Likewise. + * graph/include/process3d.H1: Likewise. + * graph/include/quit3d.H1: Likewise. + * graph/include/quitbut3d.H1: Likewise. + * graph/include/readView.H1: Likewise. + * graph/include/save3d.H1: Likewise. + * graph/include/savebut3d.H1: Likewise. + * graph/include/smoothShade3d.H1: Likewise. + * graph/include/spadAction2d.H1: Likewise. + * graph/include/spadAction3d.H1: Likewise. + * graph/include/spoon2D.H1: Likewise. + * graph/include/spoonComp.H1: Likewise. + * graph/include/sselect.H1: Likewise. + * graph/include/stuff2d.H1: Likewise. + * graph/include/stuff3d.H1: Likewise. + * graph/include/surface3d.H1: Likewise. + * graph/include/transform3d.H1: Likewise. + * graph/include/viewAlone.H1: Likewise. + * graph/include/viewport2D.H1: Likewise. + * graph/include/viewport3d.H1: Likewise. + * graph/include/volume3d.H1: Likewise. + * graph/include/write2d.H1: Likewise. + * graph/include/write3d.H1: Likewise. + * graph/view2D/buttons2d.c: Likewise. + * graph/view2D/control2d.c: Likewise. + * graph/view2D/graph2d.c: Likewise. + * graph/view2D/main2d.c: Likewise. + * graph/view2D/pot2d.c: Likewise. + * graph/view2D/spadAction2d.c: Likewise. + * graph/view2D/stuff2d.c: Likewise. + * graph/view2D/viewport2D.c: Likewise. + * graph/view2D/write2d.c: Likewise. + * graph/view3D/buttons3d.c: Likewise. + * graph/view3D/closeView3d.c: Likewise. + * graph/view3D/component3d.c: Likewise. + * graph/view3D/control3d.c: Likewise. + * graph/view3D/illuminate3d.c: Likewise. + * graph/view3D/lightbut3d.c: Likewise. + * graph/view3D/lighting3d.c: Likewise. + * graph/view3D/main3d.c: Likewise. + * graph/view3D/mesh3d.c: Likewise. + * graph/view3D/msort3d.c: Likewise. + * graph/view3D/pot3d.c: Likewise. + * graph/view3D/process3d.c: Likewise. + * graph/view3D/project3d.c: Likewise. + * graph/view3D/quit3d.c: Likewise. + * graph/view3D/quitbut3d.c: Likewise. + * graph/view3D/save3d.c: Likewise. + * graph/view3D/savebut3d.c: Likewise. + * graph/view3D/smoothShade3d.c: Likewise. + * graph/view3D/spadAction3d.c: Likewise. + * graph/view3D/stuff3d.c: Likewise. + * graph/view3D/surface3d.c: Likewise. + * graph/view3D/testcol.c: Likewise. + * graph/view3D/transform3d.c: Likewise. + * graph/view3D/viewport3d.c: Likewise. + * graph/view3D/volume3d.c: Likewise. + * graph/viewAlone/spoon2D.c: Likewise. + * graph/view3D/write3d.c: Likewise. + * graph/viewAlone/spoonComp.c: Likewise. + * graph/viewAlone/viewAlone.c: Likewise. + * graph/viewman/cleanup.c: Likewise. + * graph/viewman/fun2D.c: Likewise. + * graph/viewman/fun3D.c: Likewise. + * graph/viewman/make2D.c: Likewise. + * graph/viewman/makeGraph.c: Likewise. + * graph/viewman/readView.c: Likewise. + * hyper/scrollbar.c: Likewise. + * lib/util.c: Likewise. + +2008-04-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/system.spad.pamphlet (System): New package. + * algebra/Makefile.pamphlet (axiom_algebra_layer_12): Include SYSTEM. + * src/share/algebra: Update databases. + +2008-04-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * graph/view2D/process2d.c (processEvents): Tidy. + * graph/view3D/process3d.c (processEvents): Likewise. + +2008-04-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/hyper.h: Simplify font definitions. + +2008-04-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * hyper/event.c (mainEventLoop): Fix thinko. + +2008-04-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/xpm.h: Don't include <malloc.h> + * lib/XDither.c: Likewise. + * lib/XShade.c: Likewise. + +2008-04-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/bsdsignal.h: Include <signal.h>. + (OPENAXIOM_SIGCHLD): New macro. + * hyper/hyper.c (main): Use OPENAXIOM_SIGCHLD. + * graph/viewman/viewman.c: Don't include <signal.h> directly. + (main): Use OPENAXIOM_SIGCHLD. + * graph/viewman/sselect.c: Don't include <signal.h> directly. + (superSelect): Tidy. Use OPENAXIOM_SIGCHLD. + +2008-04-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/Makefile.in (libopen_axiom_core_objects): Tidy. + +2008-04-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/postpar.boot (postBootNotEqual): New. Disallow `^=' in + Spad codes. + +2008-04-02 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/acplot.spad.pamphlet: Replace `^=' with `~='. + * algebra/aggcat.spad.pamphlet: Likewise. + * algebra/algext.spad.pamphlet: Likewise. + * algebra/algcat.spad.pamphlet: Likewise. + * algebra/algfunc.spad.pamphlet: Likewise. + * algebra/allfact.spad.pamphlet: Likewise. + * algebra/array1.spad.pamphlet: Likewise. + * algebra/array2.spad.pamphlet: Likewise. + * algebra/asp.spad.pamphlet: Likewise. + * algebra/card.spad.pamphlet: Likewise. + * algebra/carten.spad.pamphlet: Likewise. + * algebra/clifford.spad.pamphlet: Likewise. + * algebra/combinat.spad.pamphlet: Likewise. + * algebra/contfrac.spad.pamphlet: Likewise. + * algebra/cra.spad.pamphlet: Likewise. + * algebra/crfp.spad.pamphlet: Likewise. + * algebra/curve.spad.pamphlet: Likewise. + * algebra/defintef.spad.pamphlet: Likewise. + * algebra/defintrf.spad.pamphlet: Likewise. + * algebra/degred.spad.pamphlet: Likewise. + * algebra/derham.spad.pamphlet: Likewise. + * algebra/divisor.spad.pamphlet: Likewise. + * algebra/efstruc.spad.pamphlet: Likewise. + * algebra/eigen.spad.pamphlet: Likewise. + * algebra/elemntry.spad.pamphlet: Likewise. + * algebra/expr.spad.pamphlet: Likewise. + * algebra/ffcat.spad.pamphlet: Likewise. + * algebra/ffcg.spad.pamphlet: Likewise. + * algebra/fff.spad.pamphlet: Likewise. + * algebra/ffhom.spad.pamphlet: Likewise. + * algebra/ffnb.spad.pamphlet: Likewise. + * algebra/ffp.spad.pamphlet: Likewise. + * algebra/ffpoly.spad.pamphlet: Likewise. + * algebra/ffpoly2.spad.pamphlet: Likewise. + * algebra/files.spad.pamphlet: Likewise. + * algebra/float.spad.pamphlet: Likewise. + * algebra/gaussian.spad.pamphlet: Likewise. + * algebra/gaussfac.spad.pamphlet: Likewise. + * algebra/funcpkgs.spad.pamphlet: Likewise. + * algebra/fspace.spad.pamphlet: Likewise. + * algebra/free.spad.pamphlet: Likewise. + * algebra/fr.spad.pamphlet: Likewise. + * algebra/fortran.spad.pamphlet: Likewise. + * algebra/formula.spad.pamphlet: Likewise. + * algebra/gpol.spad.pamphlet: Likewise. + * algebra/gpgcd.spad.pamphlet: Likewise. + * algebra/ghensel.spad.pamphlet: Likewise. + * algebra/geneez.spad.pamphlet: Likewise. + * algebra/gdpoly.spad.pamphlet: Likewise. + * algebra/gdirprod.spad.pamphlet: Likewise. + * algebra/gbintern.spad.pamphlet: Likewise. + * algebra/gbeuclid.spad.pamphlet: Likewise. + * algebra/gb.spad.pamphlet: Likewise. + * algebra/intef.spad.pamphlet: Likewise. + * algebra/intclos.spad.pamphlet: Likewise. + * algebra/intaux.spad.pamphlet: Likewise. + * algebra/intalg.spad.pamphlet: Likewise. + * algebra/intaf.spad.pamphlet: Likewise. + * algebra/indexedp.spad.pamphlet: Likewise. + * algebra/idecomp.spad.pamphlet: Likewise. + * algebra/ideal.spad.pamphlet: Likewise. + * algebra/groebsol.spad.pamphlet: Likewise. + * algebra/groebf.spad.pamphlet: Likewise. + * algebra/kl.spad.pamphlet: Likewise. + * algebra/irexpand.spad.pamphlet: Likewise. + * algebra/intrf.spad.pamphlet: Likewise. + * algebra/integer.spad.pamphlet: Likewise. + * algebra/intpm.spad.pamphlet: Likewise. + * algebra/intfact.spad.pamphlet: Likewise. + * algebra/manip.spad.pamphlet: Likewise. + * algebra/lodop.spad.pamphlet: Likewise. + * algebra/lodof.spad.pamphlet: Likewise. + * algebra/lodo.spad.pamphlet: Likewise. + * algebra/lmdict.spad.pamphlet: Likewise. + * algebra/listgcd.spad.pamphlet: Likewise. + * algebra/list.spad.pamphlet: Likewise. + * algebra/lingrob.spad.pamphlet: Likewise. + * algebra/limitps.spad.pamphlet: Likewise. + * algebra/laurent.spad.pamphlet: Likewise. + * algebra/laplace.spad.pamphlet: Likewise. + * algebra/modmon.spad.pamphlet: Likewise. + * algebra/modgcd.spad.pamphlet: Likewise. + * algebra/moddfact.spad.pamphlet: Likewise. + * algebra/mlift.spad.pamphlet: Likewise. + * algebra/mlift.spad.jhd.pamphlet: Likewise. + * algebra/mfinfact.spad.pamphlet: Likewise. + * algebra/matrix.spad.pamphlet: Likewise. + * algebra/mathml.spad.pamphlet: Likewise. + * algebra/matfuns.spad.pamphlet: Likewise. + * algebra/matcat.spad.pamphlet: Likewise. + * algebra/nlode.spad.pamphlet: Likewise. + * algebra/nlinsol.spad.pamphlet: Likewise. + * algebra/newpoint.spad.pamphlet: Likewise. + * algebra/naalgc.spad.pamphlet: Likewise. + * algebra/naalg.spad.pamphlet: Likewise. + * algebra/multsqfr.spad.pamphlet: Likewise. + * algebra/multpoly.spad.pamphlet: Likewise. + * algebra/multfact.spad.pamphlet: Likewise. + * algebra/mts.spad.pamphlet: Likewise. + * algebra/mset.spad.pamphlet: Likewise. + * algebra/mring.spad.pamphlet: Likewise. + * algebra/modring.spad.pamphlet: Likewise. + * algebra/modmonom.spad.pamphlet: Likewise. + * algebra/openmath.spad.pamphlet: Likewise. + * algebra/op.spad.pamphlet: Likewise. + * algebra/oderf.spad.pamphlet: Likewise. + * algebra/odeef.spad.pamphlet: Likewise. + * algebra/odealg.spad.pamphlet: Likewise. + * algebra/numtheor.spad.pamphlet: Likewise. + * algebra/numsolve.spad.pamphlet: Likewise. + * algebra/numeigen.spad.pamphlet: Likewise. + * algebra/npcoef.spad.pamphlet: Likewise. + * algebra/pfr.spad.pamphlet: Likewise. + * algebra/permgrps.spad.pamphlet: Likewise. + * algebra/perman.spad.pamphlet: Likewise. + * algebra/perm.spad.pamphlet: Likewise. + * algebra/pdecomp.spad.pamphlet: Likewise. + * algebra/pattern.spad.pamphlet: Likewise. + * algebra/patmatch1.spad.pamphlet: Likewise. + * algebra/padic.spad.pamphlet: Likewise. + * algebra/pade.spad.pamphlet: Likewise. + * algebra/outform.spad.pamphlet: Likewise. + * algebra/ore.spad.pamphlet: Likewise. + * algebra/primelt.spad.pamphlet: Likewise. + * algebra/polycat.spad.pamphlet: Likewise. + * algebra/poly.spad.pamphlet: Likewise. + * algebra/poltopol.spad.pamphlet: Likewise. + * algebra/plot3d.spad.pamphlet: Likewise. + * algebra/plot.spad.pamphlet: Likewise. + * algebra/pleqn.spad.pamphlet: Likewise. + * algebra/pinterp.spad.pamphlet: Likewise. + * algebra/pgcd.spad.pamphlet: Likewise. + * algebra/realzero.spad.pamphlet: Likewise. + * algebra/rderf.spad.pamphlet: Likewise. + * algebra/rdeef.spad.pamphlet: Likewise. + * algebra/radix.spad.pamphlet: Likewise. + * algebra/qalgset.spad.pamphlet: Likewise. + * algebra/puiseux.spad.pamphlet: Likewise. + * algebra/pseudolin.spad.pamphlet: Likewise. + * algebra/pscat.spad.pamphlet: Likewise. + * algebra/prtition.spad.pamphlet: Likewise. + * algebra/smith.spad.pamphlet: Likewise. + * algebra/sign.spad.pamphlet: Likewise. + * algebra/sgcf.spad.pamphlet: Likewise. + * algebra/setorder.spad.pamphlet: Likewise. + * algebra/rule.spad.pamphlet: Likewise. + * algebra/rinterp.spad.pamphlet: Likewise. + * algebra/rf.spad.pamphlet: Likewise. + * algebra/riccati.spad.pamphlet: Likewise. + * algebra/rep2.spad.pamphlet: Likewise. + * algebra/rep1.spad.pamphlet: Likewise. + * algebra/reclos.spad.pamphlet: Likewise. + * algebra/syssolp.spad.pamphlet: Likewise. + * algebra/symbol.spad.pamphlet: Likewise. + * algebra/sum.spad.pamphlet: Likewise. + * algebra/sttaylor.spad.pamphlet: Likewise. + * algebra/string.spad.pamphlet: Likewise. + * algebra/stream.spad.pamphlet: Likewise. + * algebra/special.spad.pamphlet: Likewise. + * algebra/space.spad.pamphlet: Likewise. + * algebra/solverad.spad.pamphlet: Likewise. + * algebra/solvelin.spad.pamphlet: Likewise. + * algebra/view3D.spad.pamphlet: Likewise. + * algebra/view2D.spad.pamphlet: Likewise. + * algebra/vector.spad.pamphlet: Likewise. + * algebra/unifact.spad.pamphlet: Likewise. + * algebra/twofact.spad.pamphlet: Likewise. + * algebra/tree.spad.pamphlet: Likewise. + * algebra/transsolve.spad.pamphlet: Likewise. + * algebra/tex.spad.pamphlet: Likewise. + * algebra/taylor.spad.pamphlet: Likewise. + * algebra/xpoly.spad.pamphlet: Likewise. + * algebra/xlpoly.spad.pamphlet: Likewise. + * algebra/wtpol.spad.pamphlet: Likewise. + +2008-04-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * boot/tokens.boot (second): Now candidate for renaming in + generated Lisp code. + (third): Likewise. + +2008-04-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * input/mapleok.input.pamphlet: Fix typo. + +2008-04-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix AW/386. + * interp/i-spec1.boot (transformCollect): Move to i-intern.boot. + (upLoopIters): Don't silently return nil for unknown iterators. + * interp/i-intern.boot (transformCollect): Tidy. Reject invalid + iterator forms. + * doc/msgs/s2-us.msgs (S2SIS0061): New. + +2008-04-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/nagman.H1: Remove. + * include/session.H1: Move content to sman/session.c. Remove. + * sman/session.c: Don't include "session.H1" anymore. + * sman/spadclient.c: Don't include "spadclient.H1" anymore. + * include/spadclient.H1: Remove. + * include/spadbuf.H1: Move content to hyper/spadbuf.c. Remove. + * hyper/spadbuf.c: Don't include "spadbuf.H1" anymore. + * hyper/htadd.c: Don't include "htadd.H1" anymore. + * include/htadd.H1: Move content to hyper/htadd.c. Remove. + +2008-04-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/openpty.c: Remove conditional inclusion of <stropts.h> + * hyper/spadbuf.c: Remove conditional inclusion of <bstring.h> + * sman/session.c: Likewise. + * hyper/halloc.c: Remove conditional inclusion of <malloc.h> + +2008-03-31 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-utility.boot (loadModule): New. + * interp/daase.lisp (initial-getdatabase): Use it instead of + Lisp's LOAD. + * interp/lisplib.boot (loadLib): Likewise. + (loadLibNoUpdate): Likewise. + +2008-03-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/i-intern.boot (mkAtree3): Don't apply syntactic + transformation on `~=' expressions. + +2008-03-30 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/buildom.boot: Cache constructor instantiations. + * interp/clam.boot (haddProp): Update comment. + +2008-03-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Fix SF/1849435. + * interp/buildom.boot: Rewrite builtin domains to work with old + runtime scheme. + * interp/nruncomp.boot (NRTencode): Tidy. + * interp/nrungo.boot (basicLookup): lookupInTable is part of the + old runtime scheme too. + (lookupInDomain): Tidy. + (lookupInCategories): Simplify. + +2008-03-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/comp.lisp: Fix thinko. + +2008-03-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/int-top.boot (intloopReadConsole): Use $InputStream. + * interp/bootlex.lisp (init-boot/spad-reader): Use $OutputStream. + * interp/comp.lisp (|compQuietly|): Likewise. + (|compileFileQuietly|): Likewise. + (|compileQuietly|): Likewise. + * interp/unlisp.lisp (|Prompt|): Likewise. + * interp/server.boot (serverReadLine): Indent while body. + +2008-03-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lib/Makefile.in: Fix DLL build on Cygwin. + * lisp/Makefile.in: Adjust. + +2008-03-26 Gregory Vanuxem <g.vanuxem@wanadoo.fr> + Alfredo Portes <doyenatccny@gmail.com> + + * src/graph/view2D/Makefile.in: Add $(EXEEXT) to view2D. + +2008-03-26 Waldek Hebisch <hebisch@math.uni.wroc.pl> + Alfredo Portes <doyenatccny@gmail.com> + + * src/sman/sman.c.pamphlet: sman_catch_signals(): Use SIGABRT + (instead of SIGIOT) if available. + +2008-03-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + 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 <gdr@cs.tamu.edu> + + * interp/nlib.lisp (get-input-index-stream): Remove. + (getindextable): Likewise. + +2008-03-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * interp/sys-utility.boot: Define more type abbreviations. + * interp/apply.boot: Adjust signature declarations. + * interp/compiler.boot: Likewise. + +2008-03-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * lib/cfuns-c.c (oa_chdir): Add missing `return'. + +2008-03-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <doyenatccny@gmail.com> + Arthur Ralfs <acralfs@shaw.ca> + + * 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 <gdr@cs.tamu.edu> + + * boot/translator.boot: Switch to new native type translation. + * interp/sys-driver.boot (stdStreamIsTerminal): Simplify. + +2008-03-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * lib/Makefile.in ($(axiom_target_libdir)/libopen-axiom-core.$(DLLEXT)): Tidy. + ($(axiom_target_libdir)/libspad.la): Likewise. + +2008-03-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * algebra/polset.spad.pamphlet (exactQuo$PSETCAT-): Don't + conditionally define as local function. Update cached Lisp + translation. + +2008-03-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * doc/msgs/s2-us.msgs: Say Spad, not old compiler. + +2008-03-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/nocompil.lisp: Remove. + * interp/Makefile.pamphlet: Adjust. + +2008-03-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * interp/parse.boot (parseDollarGreaterThan): Remove. + (parseDollarGreaterEqual): Likewise. + (parseDollarLessEqual): Likewise. + (parseDolloarNotEqual): Likewise. + +2008-03-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * graph/: Depamphletize. + * include/addfile.h: Move from hyper. + * include/addfile.H1: Move external declarations into + addfile.h. Remove. + +2008-03-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * hyper/: De-pamphletize. + +2008-03-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/compiler.boot (compColon): Literal flag types are valid + types. + +2008-03-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * interp/vmlisp.lisp (|opOf|): Remove duplicate. + * lisp/core.lisp.in (|resetErrorCount|): New function. Export. + +2008-02-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * boot/parser.boot (bpSimpleCatch): New. + (bTry): Use it. + * boot/strap: Update. + +2008-02-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + 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 <gdr@cs.tamu.edu> + + * OpenAxiom-1.1.0 has been released. + +2008-02-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/utils.c (openaxiom_execute_core) [__WIN32__]: Enclose + every argument in quotes. + +2008-02-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/sys-driver.boot (executeSpadScript): By default make + script execution quiet. Support --verbose for verbose processing. + +2008-02-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * interp/sys-globals.boot ($consistencyCheck): Remove. + ($insideCanCoerceFrom): Define. + +2008-02-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + Fix AW/311 + * interp/i-syscmd.boot (displayOperationsFromLisplib): Say no + exported operations when there is nothing to display. + +2008-01-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + 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 <gdr@cs.tamu.edu> + + * algebra/any.spad.pamphlet (empty$Scope): Use literal empty list. + (empty$Environment): Likewise. + +2008-01-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + Waldek Hebisch <hebisch@math.uni.wroc.pl> + + Fix AW/102 + * interp/iterator.boot (getIdentity): Properly identify the + algebra empty list. + +2008-01-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + Apply patch by Stephen Wilson <<wilsons@multiboard.com> + 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * algebra/any.spad.pamphlet (getProperty$Environment): New. + (setProperty!$Environment): Likewise. + (getProperties$Environment): Likewise. + (setProperties!$Environment): Likewise. + +2008-01-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + 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 <gdr@cs.tamu.edu> + + 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 <gdr@cs.tamu.edu> + + 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 <gdr@cs.tamu.edu> + + Fix SF/1850071 + * algebra/syntax.spad (compound?$Syntax): New. + +2008-01-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + 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 <gdr@cs.tamu.edu> + + Fix SF/1867459 + * interp/postpar.boot (postError): Fix thinko. + * interp/parse.boot ($defOp): Define. + * testsuite/compiler/1867459.spad: New. + +2008-01-13 Ralf Hemmecke <ralf@hemmecke.de> + Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/bags.spad.pamphlet (map!$Stack): Cache the result in the + underlying reference. + +2008-01-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/msg.boot (getStFromMsg): Fix typo. + +2008-01-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * algebra/syntax.spad (getOperator): Inject into the right + Union branch. + +2008-01-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * interp/msgdb.boot (brightPrint0): Disable highlightinh on Win32. + * lib/cfuns-c.c (std_stream_is_terminal): Tidy. + +2008-01-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * 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 <gdr@cs.tamu.edu> + + * sman/sman.c: Remove debug and dead codes. + +2008-01-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * driver/main.c (main) [__WIN32__]: Fix off-by-one thinko. + +2008-01-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * scripts/axiom.in: Remove. + * driver: New directory. + * driver/main.c: New. Now implement driver as native + application. + +2007-12-27 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * booklets: Remove. + * Makefile.pamphlet (all-book): Remove. + +2007-11-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Remove all-depsys rule. + (all-interpsys): Now depend on all-boot. + +2007-09-19 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-interpsys): Now depend on all-depsys. + +2007-08-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-check): New rule. + * Makefile.in: Regenerate. + +2007-08-17 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-lisp): Don't make $(axiom_build_bindir) + here. Pass target tp $(MAKE). + (all-boot): Likewise. + (all-lib): Don't make $(OUT) here. Pass target to $(MAKE). + * Makefile.in: Regenerate. + +2007-08-05 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-lisp): Don't make all-boot a prereqsite. + (all-boot): Make all-lisp a prerequisite. + * Makefile.in: Regenerate. + +2007-07-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Remove obsolete comments. + (all-doc): Don't create int/ directory. + (all-graph): Likewise. + +2007-06-20 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-algebra): Depend on all-hyper. + * Makefile.in: Regenerate. + +2007-05-28 Gabriel Dos Reis <gdr@cs.tam.,edu> + + * Makefile.pamphlet (all-clef): Don't use AX_FLAGS. + (all-sman): Likewise. + (all-hyper): Likewise. + (all-share): Likewise. + (all-book): Likewise. + (all-lib): Likewise. + (all-boot): Likewise. + (all-depsys): Likewise. + (all-interpsys): Likewise. + (all-interpsys): Likewise. + (all-axiomsys): Likewise. + (all-axiomsys): Likewise. + (all-lisp): Likewise. + (all-algebra): Likewise. + (all-input): Likewise. + (all-asq): Likewise. + (all-doc): Likewise. + (all-graph): Likewise. + * Makefile.in: Regenerate. + +2007-03-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-boot): Don't make all-lisp a prerequisite. + (all-depsys): Require only all-boot. + (all-interpsys): Additionally require all-lisp. + (all-lisp): Additionally require all-boot. + * Makefile.in: Regenerate. + +2007-03-25 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-depsys): New target. + (all-interpsys): Make it a prerequisite. + * Makefile.in: Regenerate. + +2007-03-13 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-boot): Depend on all-lisp only when + --enable-gcl. + (all-interpsys): Depend on both all-lisp and all-boot. + * Makefile.in: Regenerate. + +2006-12-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Eradicate use of ENV. + +2006-12-21 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-input): Don't depend on all-clef. + * Makefile.in: Regenerate. + +2006-12-16 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-interpsys): Don't make int/algebra. + (all-algebra): Don't make int/input + (all-input): Likewise. + * Makefile.in: Regenerate. + +2006-12-15 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-graph): Don't make obj/ sub-directory. + +2006-12-14 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-algebra): Avoid creating unnecessary + directories. + * Makefile.in: Regenerate. + +2006-12-10 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (SUBDIRS): Restore. + * Makefile.in: Regenerate. + +2006-12-09 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/sockio-c.H1 (close_socket): Adjust first parameter type. + +2006-12-07 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-algebra): Stop generating part of + algebra/Makefile at build time. + * Makefile.in: Regenerate. + +2006-12-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (SUBDIRS): Remove. + Use AX_FLAGS to communicate variables to sub-processes. + * Makefile.in: Regenerate. + +2006-12-06 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (all-lib): Make $(OUT) directory before the + actual make. + (stamp): Have dependencies computed at configureation time. + * Makefile.in: Regenerate. + +2006-12-04 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/com.h: Add preliminary support for Windows sockets. + (axiom_socket): New typedef. Abstract over differences between + Windows and POSIX worlds. + (axiom_close_socket): Declare. + (axiom_write, axiom_read): New functions. Encapsulate read and + write to sockets. + +2006-12-01 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/cfuns-c.H1 (CLgetpid): Remove declaration. + +2006-11-29 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * include/addfile.H1: Remove K&R C style function declarations. + * include/bsdsignal.h: Likewise. + * include/bsdsignal.H1: Likewise. + * include/cfuns-c.H1: Likewise. + * include/cond.H1: Likewise. + * include/cursor.H1: Likewise. + * include/dialog.H1: Likewise. + * include/display.H1: Likewise. + * include/edible.H1: Likewise. + * include/edin.H1: Likewise. + * include/event.H1: Likewise. + * include/ex2ht.H1: Likewise. + * include/extent1.H1: Likewise. + * include/extent2.H1: Likewise. + * include/fnct_key.H1: Likewise. + * include/form_ext.H1: Likewise. + * include/group.H1: Likewise. + * include/halloc.H1: Likewise. + * include/hash.H1: Likewise. + * include/hash.h: Likewise. + * include/htadd.H1: Likewise. + * include/hterror.H1: Likewise. + * include/hthits.H1: Likewise. + * include/htinp.H1: Likewise. + * include/hyper.H1: Likewise. + * include/initx.H1: Likewise. + * include/input.H1: Likewise. + * include/item.H1: Likewise. + * include/keyin.H1: Likewise. + * include/lex.H1: Likewise. + * include/macro.H1: Likewise. + * include/mem.H1: Likewise. + * include/nagman.H1: Likewise. + * include/openpty.H1: Likewise. + * include/parse_aux.H1: Likewise. + * include/parse.H1: Likewise. + * include/parse_input.H1: Likewise. + * include/parse_paste.H1: Likewise. + * include/parse_types.H1: Likewise. + * include/pixmap.H1: Likewise. + * include/prt.H1: Likewise. + * include/ReadBitmap.H1: Likewise. + * include/scrollbar.H1: Likewise. + * include/session.H1: Likewise. + * include/show_types.H1: Likewise. + * include/sman.H1: Likewise. + * include/sockio-c.H1: Likewise. + * include/spadbuf.H1: Likewise. + * include/spadclient.H1: Likewise. + * include/spadcolors.H1: Likewise. + * include/spadint.H1: Likewise. + * include/titlebar.H1: Likewise. + * include/util.H1: Likewise. + * include/wct.H1: Likewise. + * include/XDither.H1: Likewise. + * include/XShade.H1: Likewise. + * include/XSpadFill.H1: Likewise. + +2006-11-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * lisp: Rename from ../lsp. + +2006-11-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (stamp): Also depends on all-sman. + * Makefile.in: Regenerate. + +2006-11-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (stamp): Depend on Autoconf-subst'ed variable + @axiom_src_all@. + * Makefile.in: Regenerate. + +2006-11-24 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Rework. + (clef-stamp, sman-stamp, hyper-stamp, share-stamp, book-stamp, + lib-stamp, boot-stamp, interp-stamp, alg-stamp, input-stamp, + etc-stamp, doc-stamp, graph-stamp): Remove. + (all-clef, all-sman, all-hyper, all-share, all-book, all-lib, + all-boot, all-interpsys, all-algebra, all-input, all-asq, all-doc, + all-graph, all-axiomsys): New phony targets. Replace all stamp + based targets. Stamps are now managed by each phony targets. + Spell out dependencies. + * Makefile.in: Regenerate. + +2006-10-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (mostlyclean-local, clean-local, + distclean-local): New. + +2006-10-26 Bill Page <Bill.Page@drdc-rddc.gc.ca> + + * Makefile.pamphlet ($(alg-stamp)): Don't append to + $(builddir)/algebra/more-rules.mk. Just overwrite it. + * Makefile.in: Regenerate. + +2006-10-23 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Don't specify path to axiom.sty. + +2006-10-08 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Remove references to ${MNT} throughout. + * Makefile.in: Regenerate. + +2006-09-26 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (DIRS, DOCS, CLNS): Remove. + Globally rename <dir>dir to <dir>. + (clef-stamp, sman-stamp, hyper-stamp, share-stamp, book-stamp, + lib-stamp, boot-stamp, interp-stamp, alg-stamp, input-stamp, + etc-stamp, doc-stamp, graph-stamp): New variables. + + Remove <dir>clean make rules. + Rename <dir>dir make rules to $(<dir>-stamp) rules. Spell out + dependencies. + * Makefile.in: Regenerate. + +2006-09-18 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Tidy. + (subdir, pamphlets): New. + * Makefile.in: Regenerate. + +2006-09-11 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: Throughout, replatce ${SRC} with + $(axiom_src_srcdir). + * Makefile.in: Regenerate. + +2006-09-03 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet: (${SRC}/clef/Makefile): Remove. + (clefdir): Depend on $(builddir)/clef/Makefile. + (clefdocument): Likewise. + (clefclean): Likewise. + + (${SRC}/sman/Makefile): Remove. + (smandir): Depend on $(builddir)/sman/Makefile. + (smandocument): Likewise. + (smanclean): Likewise. + + (${SRC}/hyper/Makefile): Remove. + (hyperdir): Depend on $(builddir)/hyper/Makefile + (hyperdocument): Likewise. + (hyperclean): Likewise. + + (${SRC}/share/Makefile): Remove. + (sharedir): Depend on $(builddir)/share/Makefile. + (sharedocument): Likewise. + (shareclean): Likewise. + + (${SRC}/booklets/Makefile): Remove. + (bookletsdir): Depend on $(builddir)/booklets/Makefile. + (bookletsdocument): Likewise. + (bookletsclean): Likewise. + + (${SRC}/lib/Makefile): Remove. + (libdir): Depend on $(builddir)/lib/Makefile + (libdocument): Likewise. + (libclean): Likewise. + + (${SRC}/boot/Makefile): Remove. + (bootdir): Depend on $(builddir)/boot/Makefile + (bootdocument): Likewise. + (bootclean): Likewise. + + (${SRC}/interp/Makefile): Remove. + (interpdir): Depend on $(builddir)/interp/Makefile. + (interpdocument): Likewise. + (interpclean): Likewise. + + (${SRC}/algebra/Makefile): Remove. + (algebradir): Depend on $(srcdir)/algebra/Makefile.pamphlet. + Output additional rules in $(builddir)/algebra/more-rules.mk. + (algebradocument): Depend on $(builddir)/algebra/Makefile. + (algebraclean): Likewise. + + (${SRC}/input/Makefile): Remove. + (inputdir): Depend on $(builddir)/input/Makefile. + (inputdocument): Likewise. + (inputclean): Likewise. + + (${SRC}/etc/Makefile): Remove. + (etcdir): Depend on $(builddir)/etc/Makefile. + (etcdocument): Likewise. + (etcclean): Likewise. + + (${SRC}/doc/Makefile): Remove. + (docdir): Depend on $(builddir)/doc/Makefile. + (docdocument): Likewise. + (docclean): Likewise. + + (${SRC}/graph/Makefile): Remove. + (graphdir): Depend on $(builddir)/graph/Makefile. + (graphdocument): Likewise. + (graphclean): Likewise. + + ($(DOC)/%.dvi): Split into multiple rules. Use + $(axiom_build_document). + (${DOC}/axiom.sty): Remove. + + * Makefile.in: New. + +2006-08-28 Gabriel Dos Reis <gdr@cs.tamu.edu> + + * Makefile.pamphlet (<<scriptsdir>>=): Remove. Scripts are now + generated at configure time. + |