Age | Commit message (Collapse) | Author | Files | Lines |
|
|
|
(BEVC-MAKE-FULL): Likewise.
(MAKE-BVEC): Likewise.
* boot/tokens.boot (shoeKeyTableCons): Adjust.
(shoePunCons): Likewise.
(shoeDfu): Likewise.
(shoeXref): Likewise.
|
|
of HGET. Use tableLength instead of HCOUNT.
|
|
|
|
|
|
* boot/parser.boot (bpTyping): Support universally quantified types.
* boot/ast.boot: Rewrite APPEND as append.
(%Forall): New AST node.
* boot/translator.boot: Translate it.
|
|
|
|
|
|
|
|
* 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.
|
|
|
|
|
|
(RUN-DRIVER): Split from handleCommandLine.
|
|
Rewrite to pull out command line options wherever they are
except the ones after "--".
(topLevel): Bind *PACKAGE*; don't set it.
|
|
|
|
fact that GCL does not provide a separate
hook for linkers.
|
|
|
|
GCL or ECL.
* lisp/core.lisp.in: Implement appropriate change.
|
|
(GCL_LTLD): Likewise.
|
|
necesary with newer GCL-2.6.8pre.
* configure.ac: Dont' call it.
|
|
|
|
src/
* lisp/core.lisp.in ($FilesToRetain): New. Export.
* lisp/Makefile.in: Tidy.
* boot/translator.boot (retainFile?): New.
(compileBootHandler): Use it.
|
|
|
|
* 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.
|
|
|
|
* configure.ac.pamphlet: Support --enable-profiling.
* config/var-def.mk (oa_yesno_to_lisp_boolean): New.
(oa_enable_profiling): Likewise.
(oa_enable_lisp_profiling): Likewise.
src/
* lisp/Makefile.in (edit): Substitute for oa_enable_profiling.
* lisp/core.lisp.in ($EnableLispProfiling): New.
(compileLispFile): Use it.
|
|
* lisp/Makefile.in: Remove generated files when cleaning.
* interp/Makefile.pamphlet: Add executable extensions if appropriate.
|
|
* 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.
|
|
* 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.
|
|
* lisp/core.lisp.in: Default the read to DOUBLE-FLOAT for floating
point literals.
* boot/translator.boot (BOOTTOCLLINES): Don't set it here.
|
|
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.
|
|
|
|
* boot/ast.boot (genECLnativeTranslation): Use it.
|
|
* interp/compat.boot (editFile): Tidy.
* interp/br-op2.boot (modemap2Sig): Don't update $badStack.xo
|
|
* Makefile.pamphlet (AXIOM_SRC_TARGETS): Add all-databases.
src/ChangeLog
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.
|
|
* 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.
|
|
* 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.
|
|
(extra-runtime-libs): Tidy.
* lisp/Makefile.in (edit): stringify $(oa_c_runtime_extra) elements.
|
|
(parseOption): Use it.
|
|
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.
|
|
Don't translate C-strings.
* boot/ast.boot (nativeType) [SBCL]: Don't translate C-strings.
|
|
(|systemLibraryDirectory|): Likewise.
|
|
($(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.
|
|
* configure.ac.pamphlet: Activate safety+debug build for ECL-based
system.
src/
2008-08-19 Gabriel Dos Reis <gdr@cs.tamu.edu>
* lisp/core.lisp.in (|$useDynamicLink|)[ECL]: Test for :DFFI feature.
|
|
* 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.
|
|
* lisp/core.lisp.in (linkset-from-if): Fix typo.
|
|
(|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.
|
|
* lisp/Makefile.in (edit): Update.
* interp/daase.lisp: Don't load initial databases when
--system-algebra.
* interp/Makefile.pamphlet (${SAVESYS}): Build with --system-algebra.
|
|
* 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.
|
|
(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.
|