Age | Commit message (Collapse) | Author | Files | Lines |
|
* 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.
|
|
* 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.
|
|
with non-decimal radix.
* interp/scan.boot (rdigti?): Allow non-capital letters.
|
|
extended integer.
|
|
`max' values.
* algebra/si.spad.pamphlet (SingleInteger): Now satisfies
OrderedFinite. Tidy.
|
|
length of buffer to count of bytes read.
* algebra/si.spad.pamphlet (SingleInteger): Now formally subdomain
of Integer.
|
|
Branch to improve reflection.
r12493@gauss: gdr | 2008-12-20 23:29:51 -0600
Add domain representations for constructors.
r12494@gauss: gdr | 2008-12-21 14:27:37 -0600
Consolidate constructor domains.
r12502@gauss: gdr | 2008-12-22 20:36:21 -0600
Constructors are values.
r12504@gauss: gdr | 2008-12-25 13:58:01 -0600
r12505@gauss: gdr | 2008-12-25 18:48:04 -0600
Commit ChangeLog.
|
|
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.
|
|
(checkRepresentation): Rename from maybeInsertViewMorphisms. Tidy.
(compDefineFunctor1): Tidy.
(doIt): Insert view morphisms if appropriate.
|
|
* 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 macthing
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.
* interp/newaux.lisp (@@): New token. Align wih interpreter.
(otherwise): Remove binding specification.
(case): Now also a Nud token.
|
|
Branch for fixing CoercibleFrom changes.
r12405@gauss: gdr | 2008-12-05 01:34:50 -0600
* 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.
|
|
domain expression.
|
|
* 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.
|
|
|
|
* interp/define.boot (compDefineFunctor1): Adjust call.
|
|
* algebra/exposed.lsp.pamphlet: Expose it.
* algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include HOMOTOP.
|
|
(newHasTest): Use it to handle signature export test.
* testsuite/interpreter/has.input: New.
|
|
* 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.
|
|
(extra-runtime-libs): Tidy.
* lisp/Makefile.in (edit): stringify $(oa_c_runtime_extra) elements.
|
|
|
|
* 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.
|
|
variables really are locals.
* interp/i-map.boot (findLocalVars1): Fix typo.
|
|
Instantiate src/hyper/presea.
|
|
* 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.
|
|
(position$InputBinaryFile): New.
(position!$InputBinaryFile): Likewise.
* algebra/exposed.lsp.pamphlet: Expose InputOutputBinaryFile.
* algebra/Makefile.pamphlet (axiom_algebra_layer_user): Add IOBFILE.
|
|
|
|
(evalCategory): Use it.
|
|
(COMP): Likewise. Rename to backendCompile.
(compileFileQuietly): Move to c-util.boot.
(compAndDefine): Likewise.
(compQuietly): Likewise.
(compileQuitely): Likewise.
|
|
* 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.
|
|
(Constructor): Likewise.
* algebra/Makefile.pamphlet (axiom_algebra_layer_0): Include
CTORKIND.
(axiom_algebra_layer_user): Include CTOR.
|
|
RGBCMDL, RGBCSPC.
* algebra/color.spad.pamphlet (RGBColorModel): New.
(RGBColorSpace): Likewise.
* algebra/exposed.lsp.pamphlet: Expose them
|
|
* interp/compiler.boot (quietlyIfInteractive): Use it.
(compQuietly): Likewise.
(compileQuietly): Likewise.
|
|
($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.
|
|
definition for Rep. Tidy.
|
|
(bottomUp): Use it.
* interp/i-spec1.boot (upand): Likewise.
(upor): Likewise.
(upcase): Likewise.
* interp/i-spec2.boot (uperror): Likewise.
|
|
* algebra/Makefile.pamphlet (axiom_algebra_layer_user): Add
SPADXPT. Update dependency rules.
* share/algebra: Update algebra databases.
|
|
|
|
* 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.
|
|
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.
|
|
|
|
functions.
* boot/strap/parser.clisp: Update.
* interp/sys-os.boot: Change to new syntax throughout.
|
|
(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.
|
|
change directory.
(localdatabase): Adjust call.
* interp/lisplib.boot (getAllIndexPathnames): Take an argument.
(getAllAldorObjectFiles): Likewise.
|
|
(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.
|
|
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,%) -> %.
* algebra/fortpak.spad.pamphlet (MultiVariableCalculusFunctions):
Remove duplicate definition of jacobian.
* algebra/tree.spad.pamphlet (BinaryTree): Remove duplicate
definition of empty.
|
|
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.
|
|
* 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.
|
|
|
|
* algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include
HOSTNAME and PORTNUM.
* algebra/exposed.lsp.pamphlet: Export them.
* algebra/data.spad.pamphlet (DataBuffer): New.
|
|
|