Age | Commit message (Collapse) | Author | Files | Lines |
|
* 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.
|
|
|
|
* interp/sys-driver.boot (restart): Use it.
|
|
* 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/compiler.boot (COMP-1): Likewise.
|
|
algebra bootstrap domains here.
|
|
|
|
* 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.
|
|
(|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.
|