Age | Commit message (Collapse) | Author | Files | Lines |
|
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.
|
|
* 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.
|
|
on `has'.
(getInverseEnvironment): Likewise.
* algebra/equation2.spad.pamphlet (factorAndSplit$Equation): Fix
misuses of `has'.
* interp/functor.boot (mkTypeForm): Rename from mkDomainConstructor.
|
|
* interp/i-syscmd.boot (displayValue): Fix thinko.
* testsuite/interpreter/sf-2491986.input (a): New.
|
|
(parseType): New. Parse types forms.
(parseTypeList): New. Parse list of type forms.
|
|
Lose second argument. Document.
|
|
(SystemInteger, SystemNonNegativeInteger, Int8, Int16, Int32,
UInt8, UInt 16, UInt32): New.
* algebra/Makefile.pamphlet (axiom_algebra_layer_7): Include INT8,
INT16, INT32, UINT8, UINT16, UINT32.
|
|
(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.
|
|
|
|
* 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.
|
|
* interp/g-util.boot (superType): Handle current domain form.
(maximalSuperType): Tidy.
(noteSubDomainInfo): Call SETDATABASE.
|
|
* interp/compat.boot (system): Likewise.
* interp/astr.boot (ncEltQ): Fix declaration.
* interp/compiler.boot (compMapCond'): Likewise.
(compMapCond): Likewise.
(compMapCondFun): Remove declaration.
|
|
* 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.
|
|
(coerceUn2E): Likewise.
(mkUnionFunList): Likewise.
* interp/i-coerce.boot (coerceUnion2Branch): Likewise.
(coerceBranch2Union): Likewise.
($newCompilerUnionFlag): Remove.
(orderUnionEntries): Likewise.
(mkPredList): Remove dead code.
|
|
makers too.
(replaceSimpleFunctions): Fold simple constant form makers.
|
|
with non-decimal radix.
* interp/scan.boot (rdigti?): Allow non-capital letters.
|
|
(compile): Likewise.
* interp/functor.boot (isPackageFunction): Remove.
* interp/wi2.boot (compDefineFunctor1): Remove dead code.
|
|
* interp/cattable.boot (hasCat): Likewise.
(simpTempCategoryTable): Don't substitute for Object.
|
|
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.
|
|
constructors.
(evaluateType): Likewise.
* interp/i-spec2.boot (isType): Reject unsaturated constructors.
|
|
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.
|
|
* interp/i-spec2.boot (uphas): Use it. Evaluate first operand.
|
|
argument. For domain extensions, warn about useless assignment to
Rep, and syntactically conflicting assignment to Rep.
|
|
(checkRepresentation): Rename from maybeInsertViewMorphisms. Tidy.
(compDefineFunctor1): Tidy.
(doIt): Insert view morphisms if appropriate.
|
|
Forgot to commit ChangeLog.
r12471@gauss: gdr | 2008-12-14 19:11:21 -0600
Fix typo in PrimitiveRatRicDE.
r12472@gauss: gdr | 2008-12-15 01:40:45 -0600
Reformat preparse.lisp.
r12473@gauss: gdr | 2008-12-15 03:25:17 -0600
Tidy.
r12474@gauss: gdr | 2008-12-15 21:33:54 -0600
Remove unused codes.
r12475@gauss: gdr | 2008-12-15 21:57:22 -0600
.
r12476@gauss: gdr | 2008-12-15 23:07:49 -0600
Tidy fatal diagnostics.
r12477@gauss: gdr | 2008-12-15 23:50:02 -0600
Fold iterator.boot into compiler.boot.
|
|
Tidy compApplyModemap.
r12460@gauss: gdr | 2008-12-13 09:24:50 -0600
Tidy compMapCond.
r12461@gauss: gdr | 2008-12-13 10:24:14 -0600
Activate compViableModemap.
r12462@gauss: gdr | 2008-12-13 11:18:17 -0600
Remove pmatch and pmatchWithSl out of main compiler.
r12463@gauss: gdr | 2008-12-13 12:26:44 -0600
Tidy compApplyModemap.
r12464@gauss: gdr | 2008-12-13 16:39:28 -0600
Add compExclusiveOr.
r12465@gauss: gdr | 2008-12-13 16:54:58 -0600
.
r12466@gauss: gdr | 2008-12-14 15:01:33 -0600
Tidy compLogicalNot.
|
|
Tidy Middle End IL.
|
|
Introduce Middle IL.
|
|
Add some documentation.
|
|
Tidy.
|
|
Remove unused parse codes.
|
|
Remove dead code.
|
|
Tidy resolveNiladicConstructors.
|
|
Tidy resolveNiladicConstructors.
|
|
Remove quotify.
|
|
Remove unused parse functions.
|
|
Modularize S-PROCESS.
|
|
Implement basic support for pattern matching.
r12416@gauss: gdr | 2008-12-06 18:09:19 -0600
Parse case pattern match.
r12417@gauss: gdr | 2008-12-06 21:28:30 -0600
Implement basic case pattern matching for retractable domain.
r12418@gauss: gdr | 2008-12-07 00:58:58 -0600
Refine retractability implementation.
r12419@gauss: gdr | 2008-12-07 01:39:32 -0600
Update cached Lisp translation
r12420@gauss: gdr | 2008-12-07 03:52:09 -0600
r12421@gauss: gdr | 2008-12-07 10:30:44 -0600
Implement type recovery too.
r12422@gauss: gdr | 2008-12-07 19:18:09 -0600
Simplify LET-forms and COND-forms.
r12423@gauss: gdr | 2008-12-07 21:21:12 -0600
Fix typos
r12424@gauss: gdr | 2008-12-08 01:14:54 -0600
Parse case-pattern in the interpreter.
r12427@gauss: gdr | 2008-12-08 20:32:29 -0600
Handle RetractableTo T.
|
|
* 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.
|
|
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.
|
|
|
|
(compDefineFunctor1): Don't use it anymore.
(compCategoryItem): Filter out nil attributes here.
|
|
againg; it was already checked by NRTassocIndex.
(genDeltaEntry): Likewise.
(NRTgetLocalIndex): Likewise.
* interp/wi2.boot (genDeltaExntry): Likewise.
|
|
earlier tweaks.
(mkExplicitCategoryFunction): Likewise.
|
|
|
|
(genDeltaEntry): Remove dead pattern match.
|
|
* 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".
|