aboutsummaryrefslogtreecommitdiff
path: root/src/interp/sys-utility.boot
AgeCommit message (Collapse)AuthorFilesLines
2009-02-062009-02-06 Gabriel Dos Reis <gdr@cs.tamu.edu>dos-reis1-0/+7
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-01-09 * algebra/data.spad.pamphlet (Byte): Satisfy OrderedFinite.dos-reis1-0/+6
(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-reis1-6/+23
(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-reis1-1/+2
* 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.
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-11-18 * interp/sys-utility.boot (loadExports): New.dos-reis1-0/+3
* 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.
2008-11-17 * lisp/core.lisp.in (|getOptionValue|): Make second argument optional.dos-reis1-0/+3
* 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.
2008-11-03 * interp/Makefile.pamphlet (template.$(FASLEXT)): Remove.dos-reis1-0/+3
* interp/template.boot: Move non-dead code where appropriate. Remove file. * boot/ast.boot (bfQ): Improve.
2008-10-24 Add basic support for stream client socket.dos-reis1-0/+6
* 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.
2008-10-05 * interp/c-util.boot (isAtomicForm): New.dos-reis1-1/+3
(replaceSimpleFunctions): Use it. Simplify back to original implementation. (proclaimCapsuleFunction): Constructor parameters are generic. * interp/sys-utility.boot (getVMType): Handle wildcard. * algebra/stream.spad.pamphlet: Don't build STREAM with proclamation on -- it currently violates type rules.
2008-10-02 * interp/i-spec1.boot (upcase): Tidy.dos-reis1-1/+2
* interp/i-spec2.boot (evalIsntPredicate): Likewise. * interp/sys-utility.boot (existingFile?): Likewise.
2008-10-01 * interp/c-util.boot ($optProclaim): New.dos-reis1-0/+10
($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.
2008-10-01 * algebra/files.spad.pamphlet (IOMode): New domain.dos-reis1-0/+32
* algebra/net.spad.pamphlet (InputBinaryFile): Likewise. (OutputBinaryFile): Likewise. * interp/sys-utility.boot (openBinaryFile): New. (readByteFromFile): Likewise. (writeByteToFile): Likewise. (closeFile): Likewise.
2008-07-03 (compAndDefine): Capture by name, not pointer.dos-reis1-1/+19
(compQuietly): Likewise. (compileQuietly): Likewise. * interp/macros.lisp (PRINT-AND-EVAL-DEFUN): Move to sys-utility.boot. (EVAL-DEFUN): Likewise. (COMPILE-DEFUN): Likewise.
2008-05-15 * interp/lisplib.boot (leaveIfErrors): New.dos-reis1-1/+0
(compDefineLisplib): Use it. (finalizeLisplib): Likewise. * algebra/Makefile.pamphlet (%.NRLIB/code.$(FASLEXT)): Invoke the compiler directly. (SPADPRSR.NRLIB/code.$(FASLEXT)): Likewise. (PARSER.NRLIB/code.$(FASLEXT)): Likewise. * interp/compiler.boot (compSetq1): Fix thinko. * interp/define.boot (hasSigInTargetCategory): Give a clue to the pretty printer. * interp/sys-utility.boot ($ERASE): Remove declaration.
2008-05-08 * algebra/java.spad.pamphlet: New. Implement JavaBytecode.dos-reis1-0/+9
* algebra/data.spad.pamphlet (bitand$Byte): New. (bitior$Byte): Likewwise. (byte$Byte): Likewise. * algebra/Makefile.pamphlet (axiom_algebra_layer_15): Include JAVACODE.
2008-05-08 * boot/translator.boot (bpOutItem): Handle namespace declaration.dos-reis1-2/+1
Update all boot files to use `namespace' instead of `)package'. * interp/: Likewise.
2008-05-07 * interp/types.boot (%Integer): Alias for Lisp INTEGER class.dos-reis1-2/+1
* interp/sys-utility.boot (getVMType): Integer is represented by %Integer. * interp/postpar.boot (postSignature): Don't ignore constants.
2008-05-04 * interp/sys-utility.boot (getVMType): Fix thinko.dos-reis1-4/+5
2008-04-23 * boot/ast.boot: Tidy.dos-reis1-2/+2
* boot/includer.boot: Likewise. * boot/parser.boot: Likewise. * boot/pile.boot: Likewise. * boot/scanner.boot: Likewise. * boot/tokens.boot: Likewise. * boot/translator.boot: Likewise. * boot/strap: Update Lisp translation. * lisp/core.lisp.in: Tidy.
2008-04-21Add support for byte values, and byte buffers.dos-reis1-0/+24
2008-03-31 * interp/sys-utility.boot (loadModule): New.dos-reis1-1/+8
* interp/daase.lisp (initial-getdatabase): Use it instead of Lisp's LOAD. * interp/lisplib.boot (loadLib): Likewise. (loadLibNoUpdate): Likewise.
2008-03-24Add support for SBCL and CLispdos-reis1-29/+10
2008-03-20 * interp/vmlisp.lisp (GETREFV): Set initial elements to NIL.dos-reis1-0/+8
(MAKE-OUTSTREAM): Supersede existing files. * interp/template.boot (makeTemplate): Use newDomainShell instead of GETREFV. (extendVectorSize): Likewise. (mkSigPredVectors): Likewise. (list2LongerVec): Likewise. (measure): Remove. (measureCommon): Likewise. * interp/sys-utility.boot (loadNativeModule): New. * interp/sys-os.boot: Import "cfuns" and "sockio". (runProgram): New. * interp/sys-globals.boot (/SOURCEFILES): Define here. (/SPACELIST): Likewise. * interp/sys-driver.boot ($OpenAxiomCoreModuleLoaded): New global variable. (AxiomCore::%sysInit): Load libopen-axiom-core if necessary. ($defaultMsgDatabaseName): Define here. * interp/spad.lisp (|New,ENTRY,1|): Tidy. * interp/sockio.lisp: Move import declarations to sys-os.boot. Remove unused codes. * interp/server.boot (serverReadLine): Use coreQuit instead of BYE. * interp/pspad1.boot (formatMDEF): Tidy. * interp/pspad2.boot (formatIf1): Tidy. * interp/patches.lisp: Import "sys-driver". Remove $CURRENT-DIRECTORY. * interp/nruncomp.boot (buildFunctor): Use newDomainShell instead of GETREFV. * interp/nrunopt.boot (makeDomainTemplate): Likewise. * interp/package.boot (processFunctorOrPackage): Likewise. * interp/nlib.lisp (rdefiostream): Tidy. * interp/monitor.lisp (monitor-autoload): Define when GCL. * interp/interop.boot (oldAxiomCategoryDevaluate): Tidy. * interp/i-toplev.boot (start): Don't set $CURRENT-DIRECTORY. * interp/i-syscmd.boot (close): Use newDomainShell. (leaveScratchpad): Use coreQuit instead of BYE. (compileAsharpArchiveCmd): Use GET-CURRENT-DIRECTORY. * interp/g-util.boot (newDomainShell): Define. * interp/functor.boot (NewbFVectorCopy): Use newDomainShell. * interp/daase.lisp (asharp): Use runProgram. * interp/cfuns.lisp: Remove unused codes. (directoryp): Move import declaration to sys-os.bot. (writeablep): Likewise. * interp/buildom.boot (Record0): Use newDomainShell instead of GETREFV. (coerceRe2E): Likewise. (Union): Likewise. (Mapping): Likewise. (Enumeration): Likewise. * interp/category.boot (mkCategory): Likewise. * interp/Makefile.pamphlet (patches.$(FASLEXT)): Require sys-driver.$(FASLEXT). (sys-os.$(FASLEXT)): Require cfuns.$(FASLEXT), sockio.$(FASLEXT). * algebra/view2D.spad.pamphlet: Use $ViewportServer instead of VIEWPORTSERVER. Use sockSendInt instead of SOCK-SEND-INT. Use sockSendFloat instead of SEND-SEND-FLOAT. Use sockSendString instead of SOCK-SEND-STRING. Use sockGetInt instead of SOCK-GET-INT. Use sockGetFloat instead of SOCK-SEND-FLOAT. * algebra/view3D.spad.pamphlet: Likewise. * interp/util.lisp (fe): Remove. (fc): Likewise. (interp-make-directory): Simplify. (OLD-BOOT::BOOT): Don't declare *PRINT-PRETTY* and *PRINT-LENGTH* special.
2008-03-19 * interp/trace.boot (untraceDomainLocalOps): Tidy.dos-reis1-0/+4
* interp/spaderror.lisp (|$quitTag|): Define as constant. (|$numericFailure|): Likewise. * interp/spad.lisp: Import "postpar" and "debug". ($): Remove toplevel assignment. (|traceComp|): Tidy. (/FLAG): Remove. (*PROMPT*): Remove. (|New,ENTRY,1|): Don't declare it. Tidy. (|New,ENTRY,2|): Fix typo. * interp/sfsfun-l.lisp (rbesselj): Remove extraneous right parenthesis. (rbesseli): Likewise. * interp/patches.lisp: Import "sockio" instead of "debug" (|$useInternalHistoryTable|): Don't define here. (user::start): Remove. (/RF-1): Declare ECHO-META special. (READSPADEXPR): Declare IN-STREAM special. (|$ViewportProcessToWatch|): Declare. (echo-meta): Don't set here. * interp/packtran.boot (rePackageTran): Tidy. * interp/nspadaux.lisp (|$underscoreChar|): Define. (|$markChoices|): Likewise. (|$convert2NewCompiler|): Likewise. (|$AnalyzeOnly|): Likewise. (|$categoryPart|): Likewise. (|$insideCAPSULE|): Likewise. (|$insideEXPORTS|): Likewise. (|$originalSignature|): Likewise. (|$insideDEF|): Likewise. (|$insideTypeExpression|): Likewise. (|$spadTightList|): Likewise. (|$PerCentVariableList|): Likewise. * interp/nrunopt.boot (augmentPredCode): Fix typo. * interp/nlib.lisp (*LISP-BIN-FILETYPE*): Remove. (recompile-lib-file-if-necessary): Use $faslType. Unconditionally define. * interp/lisplib.boot (compDefineLisplib): Tidy. * interp/interop.boot (SExprToDName): Tidy. (oldAxiomPreCategoryDevaluate): Likewise. (hashNewLookupInCategories): Likewise. * interp/g-util.boot (get): Adjust return type. (get0): Likewise. (get1): Likewise. (get2): Likewise. * interp/foam_l.lisp: Tidy. * interp/define.boot (maybeInsertViewMorphisms): Fix typo. * interp/debug.lisp (/breakcondition): Declare. * interp/sys-utility.boot (getSystemModulePath): New. * interp/daase.lisp (|with|): Remove (|library|): Move i-syscmd.boot (initial-getdatabase): Use getSystemModulePath. (getdatabase): Likewise. (addoperations): Don't reference package LISP. (localdatabase): Likewise. (write-interpdb): Don't declare *print-prett* special. (write-browsedb): Likewise. (write-categorydb): Likewise.
2008-03-18 * interp/sys-utility.boot: Define more type abbreviations.dos-reis1-0/+10
* interp/apply.boot: Adjust signature declarations. * interp/compiler.boot: Likewise.
2008-03-17 * lib/cfuns-c.c (oa_chdir): Define.dos-reis1-0/+15
(is_dot_or_dotdot): New. (oa_unlink): Define. (oa_rename): Likewise. (oa_mkdir): Likewise. * interp/sys-os.boot: New file. * interp/util.lisp (MAKE-TAGS-FILE): Use changeDirectory. (MAKELIB): Likewise. (MAKESPAD): Likewise. (LIBCHECK): Likewise. * interp/sys-utility.boot ($ERASE): Define here. Use removeFile. ($REPLACE): Likewise. (checkMkdir): Define. * interp/obey.lisp (MAKEDIR): Remove definition. * interp/nlib.lisp (RDEFIOSTREAM): Use checkMkdir. (MAKEDIR): Remove. (RPACKFILE): Use removeFile. ($ERASE): Remove Lisp definition. ($REPLACE): Likewise. * interp/i-syscmd.boot (cd): Use changeDirectory. (compileAsharpArchiveCmd): Use mkdir. (histFileErase): Likewise. * interp/fortcall.boot (fortCall): Use removeFile. (invokeNagman): Likewise. * interp/daase.lisp (|library|): Use changeDirectory. (LOCALDATABASE): Likewise. (DaaseName): Use removeFile. * interp/construc.lisp (mergelibs): Use removeFile. (mergeall): Use changeDirectory. * interp/c-doc.boot (docreport): Use removeFile. * interp/br-search.boot (getTempPath): Likewise. * interp/br-saturn.boot (dbSort): Likewise. * interp/br-data.boot (buildLibdb): Likewise (dbSplitLibdb): Likewise. (buildGloss): Likewise. (purgeLocalLibdb): Likewise. * interp/as.boot (asList): Likewise. * interp/Makefile.pamphlet (OBJS): Include sys-os.$(FASLEXT). (sys-os.$(FASLEXT)): New rule. (sys-utility.$(FASLEXT)): Require sys-os.$(FASLEXT). * include/cfuns.h (oa_chdir): Declare. (oa_unlink): Likewise. (oa_rename): Likewise. (oad_mkdir): Likewise.
2008-03-16 * lisp/Makefile.in (void_type): New.dos-reis1-0/+10
(char_type): Likewise. (int_type): Likewise. (float_type): Likewise. (double_type): Likewise. (string_type): Likewise. (pointer_type): Likewise. (edit): Use them. * interp/wi1.boot (ppFull): Tidy. Don't set *PRINT-DEPTH*. * interp/vmlisp.lisp (gcmsg): Define when SBCL. * interp/template.boot (measureCommon): Fix thinko. * interp/sys-utility.boot: Move basic type definition from g-util.boot to here. * interp/g-util.boot (augProplistOf): Fix signature declaration. * interp/daase.lisp: Tidy. * interp/c-util.boot (displayComp): Remove assignment to $X,$M,$F. * interp/boot-pkg.lisp: Tidy. * interp/axext_l.lisp: Likewise. * interp/Makefile.pamphlet (makeint.lisp): Call GBC only when GCL. ($(axiom_targetdir)/algebra/exposed.$(FASLEXT)): Tidy. (patches.$(FASLEXT)): Require debug.$(FASLEXT), g-timer.$(FASLEXT). (wi2.$(FASLEXT)): Require define.$(FASLEXT). (spad.$(FASLEXT)): Require postpar.$(FASLEXT), debug.$(FASLEXT). * boot/translator.boot (genImportDeclaration): Include translation for SBCL. * boot/parser.boot (bpMapping): Tidy. * boot/ast.boot (coreSymbol): New. (bootSymbol): Likewise. (bootSymbol): Likewise. * lisp/core.lisp.in (|$NativeTypeTable|): New. Export. * algebra/Makefile.pamphlet (COMPILE_LISP): Use $(INTERPSYS). * algebra/exposed.lsp.pamphlet: Tidy.
2008-03-10 * lisp/core.lisp.in ("$faslType"): Export.dos-reis1-0/+4
* interp/sys-driver.boot (algebraBootstrapDir): New. * interp/lisplib.boot (findModule): New. (loadLib): Use it. * interp/daase.lisp (localdatabase): Make sure loadable modules have proper extensions. * interp/sys-utility.boot (existingFile?): New.
2008-02-16 * interp/unlisp.lisp (|CatchAsCan|): Tidy.dos-reis1-1/+1
* interp/sys-utility.boot (delete): Fix thinko. * interp/sys-globals.boot ($sourceFiles): Define here. (INPUTSTREAM): Likewise. * interp/i-syscmd.boot (UNDERBAR): Move to sys-globals.boot. * interp/fname.lisp: Import "macros". * interp/debug.lisp: Import "parsing". Replace $PRETTYPRINT with $PrettyPrint. (/FN): Define. (depthAlist): Likewise. * interp/br-search.boot (docSearch1): Fix thinko. * interp/Makefile.pamphlet (debug.$(FASLEXT)): Depend on parsing.$(FASLEXT). * interp/i-output.boot (starstarcond): Remove used function. (transcomparg): Likewise. (MATBORCH): Define here. (*TALLPAR): Likewise. * interp/vmlisp.lisp (|char|): Remove duplicate definition.
2008-02-10Add support for batch processing.dos-reis1-0/+17
2008-02-04 * interp/Makefile.pamphlet (OBJS): Include sys-utility.$(FASLEXT).dos-reis1-0/+117
(sys-utility.$(FASLEXT)): New rule. * interp/sys-utility.boot: New. * interp/macros.lisp (|functionp|): Move to sys-utility.boot. (|macrop|): Likewise. (|delete|): Likewise. (CONTAINED, contained\,eq, contained\,equal): Likewise. (ASSOCLEFT): Likewise. (ASSOCRIGHT): Likewise. (ADDASSOC): Likewise. (DELLASOS): Likewise. (LASSOC): Likewise. (|rassoc|): Likewise.