[Git][cmucl/cmucl][master] 3 commits: Add documentation for run-program
Raymond Toy
rtoy at common-lisp.net
Tue Sep 27 03:03:52 UTC 2016
Raymond Toy pushed to branch master at cmucl / cmucl
Commits:
a773ea60 by Raymond Toy at 2016-09-26T19:50:47-07:00
Add documentation for run-program
* Document :input and :output behavior when they are string streams.
* Document :element-type and :external-format
- - - - -
48c1dd59 by Raymond Toy at 2016-09-26T19:51:12-07:00
Update the date
Prepare for release 21b.
- - - - -
1b8f72ed by Raymond Toy at 2016-09-26T20:03:24-07:00
Update from logs
Fix some typos too.
- - - - -
3 changed files:
- src/docs/cmu-user/cmu-user.tex
- src/docs/cmu-user/extensions.tex
- src/general-info/release-21b.txt
Changes:
=====================================
src/docs/cmu-user/cmu-user.tex
=====================================
--- a/src/docs/cmu-user/cmu-user.tex
+++ b/src/docs/cmu-user/cmu-user.tex
@@ -48,7 +48,7 @@
\newcommand{\keywords}{lisp, Common Lisp, manual, compiler, programming
language implementation, programming environment}
-\date{October 2014 \\ 20f}
+\date{October 2016 \\ 21b}
\begin{document}
=====================================
src/docs/cmu-user/extensions.tex
=====================================
--- a/src/docs/cmu-user/extensions.tex
+++ b/src/docs/cmu-user/extensions.tex
@@ -1099,7 +1099,8 @@ It is possible to run programs from Lisp by using the following function.
\morekeys{\kwd{if-input-does-not-exist}}
\yetmorekeys{\kwd{output} \kwd{if-output-exists}}
\yetmorekeys{\kwd{error} \kwd{if-error-exists}}
- \yetmorekeys{\kwd{status-hook}}}}
+ \yetmorekeys{\kwd{status-hook} \kwd{external-format}}
+ \yetmorekeys{\kwd{element-type}}}}
\code{run-program} runs \var{program} in a child process.
\var{Program} should be a pathname or string naming the program.
@@ -1154,6 +1155,11 @@ It is possible to run programs from Lisp by using the following function.
already contains all the input for the process. In this case
\code{run-program} reads all the input from this stream before
returning, so this cannot be used to interact with the process.
+ If \kwd{input} is a string stream, it is up to the caller to call
+ \code{string-encode} or other function to convert the string to
+ the appropriate encoding. In either case, the least significant 8
+ bits of the \code{char-code} of each \code{character} is
+ sent to the program.
\item[\kwd{if-input-does-not-exist}] This specifies what to do if
the input file does not exist. The following values are valid:
@@ -1172,7 +1178,10 @@ It is possible to run programs from Lisp by using the following function.
\code{process-output} slot contains an input stream from which you
can read the program's output. \kwd{output} can also be a stream
in which case all output from the process is written to this
- stream.
+ stream. If \kwd{output} is a string-stream, each octet read from
+ the program is converted to a character using \code{code-char}.
+ It is up to the caller to convert this using the appropriate
+ external format to create the desired encoded string.
\item[\kwd{if-output-exists}] This specifies what to do if the
output file already exists. The following values are valid:
@@ -1197,6 +1206,15 @@ It is possible to run programs from Lisp by using the following function.
the process changes status. This is especially useful when
specifying \kwd{wait} as \nil. The function takes the process as
a required argument.
+
+ \item[\kwd{external-format}] This specifies the external format to
+ use for streams created for \code{run-program}. This does not
+ apply to string streams passed in as \kwd{input} or \kwd{output}
+ parameters.
+
+ \item[\kwd{element-type}] If streams are created \code{run-program},
+ use this as the \kwd{element-type} for the stream. Defaults to
+ \code{BASE-CHAR}.
% \item[\kwd{before-execve}] This specifies a function to run in the
% child process before it becomes the program to run. This is
=====================================
src/general-info/release-21b.txt
=====================================
--- a/src/general-info/release-21b.txt
+++ b/src/general-info/release-21b.txt
@@ -48,7 +48,7 @@ New in this release:
WITH-FLOAT-TRAPS-MASKED.
* (EXPT 0 power) doesn't throw INTEXP-LIMIT-ERROR anymore for any
integer value of power.
- * Starting cmucl with "-dyanmic-space-size 0" means using the
+ * Starting cmucl with "-dynamic-space-size 0" means using the
maximum possible heap size for the platform.
* More descriptive docstring for
* *environment-list*
@@ -56,16 +56,21 @@ New in this release:
* Maximum dynamic-space-size on Linux reduced to 1530 MB because
that's the largest available space on 32-bit Ubuntu 11.10.
* For linux, darwin, and solaris/sparc, the binding stack and
- control stack are now mapped into memory whereever the OS wishes
+ control stack are now mapped into memory wherever the OS wishes
to place them instead of being mapped into a fixed location.
This is indicated by new feature :relocatable-stacks.
* ANSI compliance fixes:
* PATHNAME-MATCH-P did not accept search-lists.
+ * (compile 'foo) returns the compiled function if foo is already
+ compiled. (See Ticket #24). This is a change in behavior for
+ developers where foo would be recompiled if the source was
+ available. Developers might want to investigate uncompile
+ combined with compile to get the old behavior back.
- * Bugfixes:
+ * Bug fixes:
* Linux was missing unix-setitimer which prevented saving cores.
- * Generate inxact exceptions more carefully.
+ * Generate inexact exceptions more carefully.
* Fix FP issue when building with Xcode 7.2 (and newer versions of
clang). (See ticket #12.)
* Cleanups in handling floating-point exceptions. See Tickets #15
@@ -94,8 +99,13 @@ New in this release:
* Ticket #27 fixed: Regression: ASDF test failures
* Ticket #28 fixed: Recursive function definition during
cross-compile
+ * Ticket #30 fixed: Compilation of (describe 'foo)
+ * Ticket #31 fixed: (compile #'foo) fails
+ * Ticket #24 fixed: Compilation of (compile 'foo)
+ * Ticket #32 fixed: doc fix: ext:run-program has no before-execve option
* Other changes:
+ * Update user manual.
* Improvements to the PCL implementation of CLOS:
View it on GitLab: https://gitlab.common-lisp.net/cmucl/cmucl/compare/9fe2a7d9699b1a60d874868ccc0de6afcc74ee3b...1b8f72ed832bba4c49187a0ee632d83274d0185a
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/cmucl-cvs/attachments/20160927/ea7960f8/attachment-0001.html>
More information about the cmucl-cvs
mailing list