aboutsummaryrefslogtreecommitdiff
path: root/src/interp
AgeCommit message (Collapse)AuthorFilesLines
2009-03-26 * boot/ast.boot (nativeType): Accept int16 and int32.dos-reis2-5/+12
(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-08 * interp/fnewmeta.lisp (PARSE-Import): Parse extern entitydos-reis7-26/+165
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 * interp/compiler.boot (modeIsAggregateOf): Use RepIfRepHack.dos-reis4-8/+11
* interp/g-opt.boot (optimizeFunctionDef): Tidy. * interp/i-syscmd.boot (compileSpad2Cmd): Support ')report' option. * interp/sys-driver.boot (initializeGlobalState): Likewise.
2009-03-01(no commit message)dos-reis1-0/+4
2009-03-01 * interp/g-opt.boot (optimize): Remove non-qualifieddos-reis1-8/+6
interpretation of 'false' and 'true'. (optCond): Emit 'NOT', not 'NULL'. (optIF2COND): Likewise. (EqualBarGensym): Tidy.
2009-03-01 * interp/compiler.boot (compTopLevel): Initialize list ofdos-reis6-11/+50
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-03-01 Optimization should not change slot numbers.dos-reis1-3/+4
2009-02-28 * interp/define.boot (NRTPARSE): Remove.dos-reis2-51/+7
(mkCategoryPackage): Remove dead code. (compDefineFunctor1): Tidy. (compDefineCapsuleFunction): Likewise. (compileCases): Likewise.
2009-02-28Revert accidental changedos-reis1-0/+8
2009-02-28(no commit message)dos-reis1-8/+0
2009-02-23 * interp/compiler.boot (compAtom): Don't interpret 'nil' as emptydos-reis1-9/+4
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-22Remove unused code.dos-reis1-274/+1
2009-02-22 * interp/msgdb.boot: Avoid SETANDFILEQ.dos-reis1-9/+8
2009-02-22 * interp/compiler.boot (compRetractAlternative): Don't storedos-reis3-16/+16
pointers to the environment. (compRecoverAlternative): Likewise. (compMatch): Likewise. (compIterator): Likewise. (compIteratorV): Likewise. * interp/define.boot (checkRepresentation): Likewise. * interp/info.boot (actOnInfo): Likewise.
2009-02-192009-02-19 Aleksej Saushev <asau@inbox.ru>dos-reis2-7/+7
* configure.ac.pamphlet: Fix indention of CPP directives. Include <sys/types.h> when testing for openpty. src/ChangeLog 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-18 * interp/parse.boot (parseHas): Constants are not attributes.dos-reis3-12/+14
* 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 * algebra/data.spad.pamphlet (ByteBuffer): Tidy. Manage sizedos-reis1-2/+1
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-10 * interp/i-spec2.boot (upDollar): Fix thinko.dos-reis4-19/+19
* interp/compat.boot (editFile): Tidy. * interp/br-op2.boot (modemap2Sig): Don't update $badStack.xo
2009-02-09Tidy FunctionDescriptordos-reis1-1/+11
2009-02-09 * interp/i-spec2.boot (constantInDomain?): Move from i-coerce.boot.dos-reis2-18/+24
(findConstructor$Constructor): Take constant type as argument. (upDollar): Tidy.
2009-02-07 * algebra/system.spad.pamphlet (hostByteOrder$System): New.dos-reis4-17/+30
* algebra/data.spad.pamphlet (ByteOrder): New. * algebra/Makefile.pamphlet (axiom_algebra_layer_1): Include BYTEORD.
2009-02-062009-02-06 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis4-14/+16
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-05 * interp/domain.lisp: Remove.dos-reis2-228/+1
2009-01-31 Fix AW/83dos-reis1-2/+5
* interp/i-coerfn.boot (Dmp2P): Scalar tag is 0 for Polynomial T. * testsuite/interpreter/aw-83.input (a): New.
2009-01-30 * interp/g-error.boot (systemErrorHandler): Tidy.dos-reis1-3/+2
2009-01-17 * interp/br-saturn.boot (htpMakeEmptyPage): Use deprecated GENTEMPdos-reis3-9/+11
instead of GENSYM. * interp/ht-util.boot (htpName): Likewise. (mkCurryFun): Likewise. (htRadioButtons): Likewise. (htBcRadioButtons): Likewise * interp/br-con.boot (kisValidType): Use $LangSupportTypes.
2009-01-15 * algebra/riccati.spad.pamphlet (innerlb$PrimitiveRatRicDE): Fixdos-reis2-11/+62
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-12 * interp/category.boot: Miscellaneous cleanup.dos-reis8-141/+84
* 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-11 * interp/compiler.boot (getSuccessEnvironment): Don't specializedos-reis3-30/+16
on `has'. (getInverseEnvironment): Likewise. * algebra/equation2.spad.pamphlet (factorAndSplit$Equation): Fix misuses of `has'. * interp/functor.boot (mkTypeForm): Rename from mkDomainConstructor.
2009-01-11 Fix SF/2491986dos-reis1-1/+1
* interp/i-syscmd.boot (displayValue): Fix thinko. * testsuite/interpreter/sf-2491986.input (a): New.
2009-01-10 * interp/parse.boot ($parsingType): New.dos-reis1-12/+23
(parseType): New. Parse types forms. (parseTypeList): New. Parse list of type forms.
2009-01-10 * interp/compiler.boot (compPredicate): Rename from compBoolean. dos-reis1-5/+16
Lose second argument. Document.
2009-01-09 * algebra/data.spad.pamphlet (Byte): Satisfy OrderedFinite.dos-reis2-1/+7
(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 * interp/sys-utility.boot (readByteFromFile): Tidy.dos-reis2-11/+28
(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-07 * algebra/any.spad.pamphlet (Maybe): Rework.dos-reis1-0/+3
2009-01-06 * interp/sys-utility.boot (getVMType): IndexList are lists.dos-reis9-54/+199
* 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 * interp/daase.lisp (setdatabase): Set superdomain slot too.dos-reis2-2/+4
* interp/g-util.boot (superType): Handle current domain form. (maximalSuperType): Tidy. (noteSubDomainInfo): Call SETDATABASE.
2009-01-04 * interp/buildom.boot (createEnum): Fix quoting.dos-reis5-18/+17
* interp/compat.boot (system): Likewise. * interp/astr.boot (ncEltQ): Fix declaration. * interp/compiler.boot (compMapCond'): Likewise. (compMapCond): Likewise. (compMapCondFun): Remove declaration.
2009-01-032009-01-03 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis36-230/+252
* 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.
2009-01-03 * interp/buildom.boot (UnionEqual): Don't call orderUnionEntries.dos-reis3-63/+6
(coerceUn2E): Likewise. (mkUnionFunList): Likewise. * interp/i-coerce.boot (coerceUnion2Branch): Likewise. (coerceBranch2Union): Likewise. ($newCompilerUnionFlag): Remove. (orderUnionEntries): Likewise. (mkPredList): Remove dead code.
2009-01-02 * interp/c-util.boot (updateCapsuleDirectory): Record constantdos-reis1-3/+14
makers too. (replaceSimpleFunctions): Fold simple constant form makers.
2009-01-02 * interp/pf2sex.boot (pfLiteral2Sex): Fix evaluation of intergersdos-reis2-2/+17
with non-decimal radix. * interp/scan.boot (rdigti?): Allow non-capital letters.
2008-12-28 * interp/define.boot (compDefineFunctor1): Remove dead code.dos-reis3-25/+4
(compile): Likewise. * interp/functor.boot (isPackageFunction): Remove. * interp/wi2.boot (compDefineFunctor1): Remove dead code.
2008-12-27 * interp/c-util.boot (isSubset): Don't check for Object.dos-reis2-5/+3
* interp/cattable.boot (hasCat): Likewise. (simpTempCategoryTable): Don't substitute for Object.
2008-12-27 * algebra/net.spad.pamphlet (readBytes!$InputByteConduit): Setdos-reis1-1/+1
length of buffer to count of bytes read. * algebra/si.spad.pamphlet (SingleInteger): Now formally subdomain of Integer.
2008-12-26 r12485@gauss: gdr | 2008-12-17 16:26:21 -0600dos-reis6-12/+79
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.
2008-12-22 * interp/i-eval.boot (evaluateType0): Check for builtindos-reis2-5/+5
constructors. (evaluateType): Likewise. * interp/i-spec2.boot (isType): Reject unsaturated constructors.
2008-12-21 * interp/define.boot (checkRepresentation): Take a thirddos-reis1-8/+19
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 * interp/i-analy.boot (elaborateForm): New.dos-reis2-7/+13
* interp/i-spec2.boot (uphas): Use it. Evaluate first operand.
2008-12-20 * interp/define.boot (checkRepresentation): Take a seconddos-reis1-5/+10
argument. For domain extensions, warn about useless assignment to Rep, and syntactically conflicting assignment to Rep.