2017-01-15  Gabriel Dos Reis  <gdr@axiomatics.org>

	* boot/bemol.cc: Use parser from libopen-axiom-core

2017-01-15  Gabriel Dos Reis  <gdr@axiomatics.org>

	* include/open-axiom/token (TokenValue::Indent,
	TokenValue::Unindent, TokenValue::Justify): Move definition to..
	* include/open-axiom/token-value: ...here.
	* syntax/token.cxx (operator<<): Adjust.

2017-01-02  Gabriel Dos Reis  <gdr@axiomatics.org>

	* lib/Makefile.in (core_SOURCES): Include files for IO,
	tokenization, and parsing.
	* include/open-axiom/Parser (boot_to_lisp): New exported entry point.
	* boot/Makefile.am (bemol_LDADD): Add libopen-axiom-core
	* include/open-axiom/dialect: Add documentation.
	* syntax/Parser.cxx: New.
	* utils/Makefile.am (libOpenAxiom_a_SOURCES): Adjust.

2016-12-29  Gabriel Dos Reis  <gdr@axiomatics.org>

	* lisp/core.lisp.in ($NativeModulePrefix): Define and export.
	* boot/ast.boot (%Ast): Ad %LoadUnit alternative.
	(genImportDeclaration): Take a third parameter.  Update caller.
	* boot/parser.boot (bpProvenance): New.
	(bpImport): Use it to parse load unit specification.
	* boot/translator.boot ($foreignLoadUnits): New.
	(translateToplevel): Update.
	(loadNativeModule): Tidy.
	(loadSystemRuntimeCore): Likewise.
	* lib/Makefile.in: Tidy reference to shared library pathname.
	* lisp/Makefile.in (edit): Translate oa_shrlib_prefix.

2016-12-26  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/i-output.boot (appChar): Don't modify string parameter.
	* algebra/Makefile.am (strap-1/FINITE.$(FASLEXT)): Update dependency.

2016-01-31  Gabriel Dos Reis  <gdr@axiomatics.org>

	Breaking change from previous version: No more support for command
	line --show-insn option, and library compiler ")set )report" option.
	* interp/g-opt.boot (optimizeFunctionDef): Remove reference to
	$reportOptimization. 
	* interp/g-timer.boot (timedOptimization): Likewise.
	* interp/i-syscmd.boot (compileSpad2Cmd): Likewise.
	($setOptions): Remove support for ")report".
	* interp/sys-driver.boot (initializeGlobalState): Likewise.

2016-01-17  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/daase.lisp (GETDATABASE): Remove PARENTS case.
	* interp/database.boot (getConstructorParentsFromDB): Take data
	from compiled code.

2016-01-16  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/sys-driver.boot (initializeDatabase): Be frugal when
	building the algebra.
	* interp/i-funsel.boot (isOpInDomain): Tidy.
	(findUniqueOpInDomain): Likewise.
	(hasSig): Likewise.
	* interp/i-special.boot (constantInDomain?): Likewise.
	* interp/lisplib.boot (isFunctor): Likewise.
	* interp/spad-parser.boot (storeBlanks!): Define.
	* interp/database.boot (getConstructorModemap): Take directly from
	generated code.
	(getConstructorOperationsFromDB): Likewise.
	(getSuperDomainFromDB): Tidy.
	* interp/daase.lisp (GETDATABASE): Remove CONSTRUCTORMODEMAP and
	OPERATIONALIST cases.
	(defaultPackageForm): New.
	(simpleMacro?): Likewise.
	(macroDefined?): Likewise.
	(writeMinimalDB): New.  Split out of printInitdbInfo.
	* interp/c-util.boot (completeDefaultPackageParameters): New.
	(makeDefaultPackageParameters): Likewise.
	* algebra/oderf.spad.pamphlet: Fix decades-old syntax error.

2016-01-07  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/br-data.boot (parentsOf): Remove.  Adjust users.

2016-01-06  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/c-util.boot (dbForCategory?): New.  Use in lieu of
	removed $insideCategoryIfTrue.
	* interp/sys-globals.boot ($insideCategoryIfTrue): Remove.  Adjust
	users. 

2016-01-06  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/define.boot (macroExpand): Do not expand the definiendum,
	except parameter types, in a definition.

2015-12-31  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/compiler.boot (coerceEasy): Allow expansion of current
	domain in target mode.
	(coerceHard): Remove bidirectional expansion of current domain.

2015-12-31  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/compiler.boot (modeIfTypeBeingDefined): New.
	(primitiveType): Add DB parameter as first.  Don't unconditionally
	reference primitive types if they are being defined.

2015-12-30  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/functor.boot (compCategories): Use the DB parameter is
	asking for modemaps of current constructor.

2015-12-30  Gabriel Dos Reis  <gdr@axiomatics.org>

	* algebra/attreg.spad.pamphlet (AttributeRegistry): Remove
	unitsKnown, leftUnitary, rightUnitary, canonicalsClosed,
	central, noetherian, NullSquare, JacobiIdentity.
	Adjust users.
	* interp/sys-constants.boot ($BuiltinAttributes): Likewise.

2015-12-29  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/nruncomp.boot ($AddChainIndex): Define.
	* interp/br-data.boot: Now import nruncomp.
	* interp/buildom.boot: Likewise.

2015-12-27  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/daase.lisp (DATABASE): Add new field 'optable'.
	(dbOperationTable): New accessor macro.
	* interp/define.boot (makeCompactDirect): Tidy.  Set dbOperationTable.
	* interp/lisplib.boot (writeOperationTable): New.
	(finalizeLisplib): Call it.

2015-12-26  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/nruncomp.boot (buildFunctor): Remove use of
	$ConstantAssignments. 
	* interp/functor.boot (DescendCode): Remove dead and bogus code
	for constant creation.
	(ConstantCreator): Remove.

2015-12-26  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/functor.boot (addConditionToGuard): New.  Split out of
	DescendCode. 
	(viewsUnderCondition): Likewise.

2015-12-26  Gabriel Dos Reis  <gdr@axiomatics.org>
	* interp/vmlisp.lisp (LASTELEM): Remove as unused.

2015-12-26  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/vmlisp.lisp (dispatchFunction): Remove.  Adjust users.
	* interp/c-util.boot (lookupDefiningFunction): Use opcode
	'%function' in lieu of 'dispatchFunction'.
	* interp/define.boot (doIt): Likewise.
	* interp/nruncomp.boot (descendCodeTran): Likewise.
	* interp/showimp.boot (dcOpPrint): Likewise.

2015-12-25  Gabriel Dos Reis  <gdr@axiomatics.org>

	* boot/tokens.boot: Do not rename 'apply'.

2015-12-24  Gabriel Dos Reis  <gdr@axiomatics.org>

	* boot/ast.boot (translateForm): New.
	* boot/translator.boot (translateToplevel): Use it.
	* boot/utility.boot (lastItem, lispMap, lispMap!, butLast,
	butLast!): New. 

2015-12-23  Gabriel Dos Reis  <gdr@axiomatics.org>

	* interp/lisplib.boot (lisplibDoRename): Retain generated Lisp
	file if asked.
	* lisp/core.lisp.in ($LispFileType): Export.
	* boot/translator.boot (retainFile?): Likewise.

2014-11-20  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* interp/lisplib.boot (lisplibDoRename): Fix thinko.

2014-11-20  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* lisp/core.lisp.in (forkStreamByName): New.
	* interp/int-top.boot (ncIntLoop): Use it.
	* interp/spad-parser.boot (parseSpadFile): Likewise.
	* interp/sys-globals.boot: Likewise.
	* interp/sys-macros.lisp (quietlyIfInteractive): Likewise.
	* interp/vmlisp.lisp (MAKE-INSTREAM): Likewise.
	(MAKE-OUTSTREAM): Likewise.
	(DEFIOSTREAM): Likewise.

2014-11-20  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* algebra/files.spad.pamphlet (endOfFile?)[TextFile]: Use builtin eof?
	* interp/br-data.boot (dbAugmentConstructorDataTable): Likewise.
	* interp/topics.boot (mkTopicHashTable): Likewise.
	* interp/vmlisp.lisp (MAKE-INSTREAM): Use inputTextFile.
	(MAKE-OUTSTREAM): Use outputTextFile.
	(EOFP): Remove.

2014-11-17  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* boot/bemol.cc: New.

2014-11-16  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* syntax/Makefile.in: Remove.
	* syntax/Makefile.am: Likewise.

2014-11-16  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* io/Makefile.in: Remove.
	* io/Makefile.am: Likewise.

2014-11-16  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* utils/Makefile.am: New.

2014-11-15  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* llvm/: New directory.

2014-10-03  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* gui/server.cc (Server::input): Replace toAscii() with toLatin1()
	for Qt5-compat.

2014-09-16  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* rt/vm.cc (VM::Environment::Environment): Define.
	(VM::Environment::~Environment): Likewise.
	(VM::Symbol::Symbol): Rework.
	(VM::BasicContext::make_package): Define.
	(VM::BasicContext::make_keyword): Likewise.
	(VM:BasicContext::make_symbol): Remove.
	(VM::BasicContext::make_operator): Tidy.
	* include/vm.H (VM::to_bool): New.
	(VM::to_value): Likewise.
	(VM::SymbolAttribute): Likewise.
	(VM::Symbol): Rework.
	(VM::CmpByName): New helper class.
	(VM::setf_symbol_function): New helper function.
	(VM::Environment): Move from Lisp.H.
	(VM::FunctionBase): Derive from VM::Callable.
	* include/sexpr.H (Sexpr::SymbolSyntax::Kind): Now bitmask type.
	(Sexpr::binary_form): New.
	(Sexpr::Include): Derive from it.
	(Sexpr::Exclude): Likewise.
	(Sexpr::Allocator): Adjust.
	* syntax/sexpr.cc (Sexpr::finish_include): New.
	(Sexpr::finish_exclude): Likewise.
	(Sexpr::read_sharp_et_al): Use them.
	* include/Lisp.H: Adjust.  Move Environment to vm.H.
	(Lisp::Evaluator): Tidy.
	* rt/Lisp.cc (define_special_value_constants): New.
	(Lisp::Evaluator::Evaluator): Call it.

2014-08-26  Raoul B.  <raoulb@bluewin.ch>

	* algebra/combfunc.spad.pamphlet
	(iBesselKGrad)[FunctionalSpecialFunction]:  Fix thinko.

2014-08-26  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* Makefile.am (oa_src_include_headers): Remove.  These headers are
	now linked by configure.
	* boot/Makefile.am (noinst_PROGRAMS): Add bemol.
	(bemol_SOURCES): New.
	(bemol_LDADD): Likewise.
	(AM_CXXFLAGS): Set.
	* boot/bemol.cc: New file.  Initial tokenizer.
	* include/sexpr.H: Tidy.
	* include/token-value.def: New file.
	* include/token.H: Expand.  Add generic tokenizer.
	* syntax/token.cc: Rework.
	* interp/simpbool.boot (list1): Escape leading question mark of ?ORDER.
	(ordUnion): Likewise.

2014-08-17  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* boot/Makefile.am: New.
	* boot/Makefile.in: Regenerate.

2014-08-16  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* lisp/core.lisp.in (coreQuit) [SBCL]: Use sb-ext:exit since
	sb-ext:quit is deprecated.
	* clef/edible.c (flip_canonical): Remove as unused.
	(flip_raw): Likewise.
	(check_flip): Likewise.
	* include/open-axiom.h: Unceremonially #include <stdint.h>.
	* sman/sman.c (clean_up_terminal): Remove as unused.

2014-02-03  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* boot/Makefile.in: Fix global variable names.
	* clef/Makefile.in: Likewise.
	* doc/Makefile.in: Likewise.
	* driver/Makefile.in: Likewise.
	* etc/Makefile.in: Likewise.
	* graph/Gdraws/Makefile.in: Likewise.
	* graph/Makefile.in: Likewise.
	* graph/view2D/Makefile.in: Likewise.
	* graph/view3D/Makefile.in: Likewise.
	* graph/viewAlone/Makefile.in: Likewise.
	* graph/viewman/Makefile.in: Likewise.
	* hyper/Makefile.in: Likewise.
	* input/Makefile.in: Likewise.
	* interp/Makefile.in: Likewise.
	* lib/Makefile.in: Likewise.
	* lisp/Makefile.in: Likewise.
	* share/Makefile.in: Likewise.
	* sman/Makefile.in: Likewise.
	* utils/Makefile.in: Likewise.

2014-02-02  Gabriel Dos Reis  <gdr@integrable-solutions.net>

	* Makefile.am (all-gui): Depend on all-syntax.
	* gui/gui.pro.in: Fix qmake idiocy on mac os.
	* 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.