[BACK]Return to io.texi CVS log [TXT][DIR] Up to [local] / OpenXM / src / asir-doc / parts / builtin

Diff for /OpenXM/src/asir-doc/parts/builtin/io.texi between version 1.6 and 1.17

version 1.6, 2001/03/12 05:01:18 version 1.17, 2014/04/09 05:34:30
Line 1 
Line 1 
 @comment $OpenXM: OpenXM/src/asir-doc/parts/builtin/io.texi,v 1.5 2000/11/13 00:16:36 noro Exp $  @comment $OpenXM: OpenXM/src/asir-doc/parts/builtin/io.texi,v 1.16 2008/07/17 15:01:10 iwane Exp $
 \BJP  \BJP
 @node $BF~=PNO(B,,, $BAH$_9~$_H!?t(B  @node $BF~=PNO(B,,, $BAH$_9~$_H!?t(B
 @section $BF~=PNO(B  @section $BF~=PNO(B
Line 16 
Line 16 
 * bsave bload::  * bsave bload::
 * bload27::  * bload27::
 * print::  * print::
   * access::
   * remove_file::
 * open_file close_file get_line get_byte put_byte purge_stdin::  * open_file close_file get_line get_byte put_byte purge_stdin::
 @end menu  @end menu
   
Line 96  line of the input file is strongly recommended.
Line 98  line of the input file is strongly recommended.
 @itemize @bullet  @itemize @bullet
 \BJP  \BJP
 @item  @item
 $B<B:]$N%W%m%0%i%`$N=q$-J}$O(B, @xref{$B%f!<%68@8l(B Asir}.  $B<B:]$N%W%m%0%i%`$N=q$-J}$O(B, @pxref{$B%f!<%68@8l(B Asir}.
  $B%F%-%9%H%U%!%$%k$rFI$_9~$`>l9g(B, @code{cpp}   $B%F%-%9%H%U%!%$%k$rFI$_9~$`>l9g(B, @code{cpp}
 $B$rDL$9$N$G(B, C $B$N%W%m%0%i%`F1MM(B @code{#include}, @code{#define} $B$r;H$&$3$H$,$G$-$k(B.  $B$rDL$9$N$G(B, C $B$N%W%m%0%i%`F1MM(B @code{#include}, @code{#define} $B$r;H$&$3$H$,$G$-$k(B.
   unix $BHG$G$O(B, $B%7%9%F%`$K%$%s%9%H!<%k$5$l$F$$$k(B @code{cpp} $B$rMxMQ$7$F$$$k(B.
   Windows $BHG$G$O(B @code{mcpp} @url{http://mcpp.sourceforge.net} $B$rMQ$$$F$$$k(B.
   $B$3$l$K$O9T$ND9$5$K@)8B$,$"$k$N$GCm0U(B.
   unix/OpenXM $BHG(B(Mac $BMQ(B cfep/asir $B$r4^$`(B)$B$G$O(B @code{OpenXM/bin/ox_cpp} $B$rMQ$$$F$$$k(B.
   $B$3$l$O(B Portable C compiler @url{http://pcc.ludd.ltu.se} $B$KImB0$9$k(B @code{cpp} $B$G$"$k(B.
 @item  @item
 $B;XDj$7$?%U%!%$%k$,B8:_$7$?;~$K$O(B 1 $B$rJV$7(B, $BB8:_$7$J$+$C$?;~$O(B 0 $B$rJV$9(B.  $B;XDj$7$?%U%!%$%k$,B8:_$7$?;~$K$O(B 1 $B$rJV$7(B, $BB8:_$7$J$+$C$?;~$O(B 0 $B$rJV$9(B.
 @item  @item
Line 121  Windows $BHG$b%G%#%l%/%H%j$N%;%Q%l!<%?$H$7$F(B @samp
Line 128  Windows $BHG$b%G%#%l%/%H%j$N%;%Q%l!<%?$H$7$F(B @samp
 \E  \E
 \BEG  \BEG
 @item  @item
 @xref{User language Asir} for practical programming.  See @ref{User language Asir} for practical programming.
 Since text files are read through @code{cpp},  Since text files are read through @code{cpp},
 the user can use, as in C programs, @code{#include} and @code{#define}  the user can use, as in C programs, @code{#include} and @code{#define}
 in @b{Asir} program source codes.  in @b{Asir} program source codes.
   The @code{cpp} which is installed to the system with a C compler is used in the unix version.
   The @code{mcpp} @url{http://mcpp.sourceforge.net} is used in the Windows version.
   Note that the length of a line has a limit for an input @code{mcpp}.
   The @code{OpenXM/bin/ox_cpp} is used in the unix/OpenXM version
   (including cfep/asir for MacOS X).
   This is the @code{cpp} distributed with the  Portable C compiler @url{http://pcc.ludd.ltu.se}.
 @item  @item
 It returns 1 if the designated file exists, 0 otherwise.  It returns 1 if the designated file exists, 0 otherwise.
 @item  @item
Line 140  On Windows, @code{get_rootdir()/lib} is searched if 
Line 153  On Windows, @code{get_rootdir()/lib} is searched if 
 We recommend to write an @code{end} command at the last line of  We recommend to write an @code{end} command at the last line of
 your program.  If not, @b{Asir} will not give you a prompt after it  your program.  If not, @b{Asir} will not give you a prompt after it
 will have executed @code{load} command.  will have executed @code{load} command.
 (Escape with an interrupt character (@pxref{Interruption}),  (Escape with an interrupt character (@ref{Interruption}),
 if you have lost yourself.)  if you have lost yourself.)
 Even in such a situation,  Even in such a situation,
 @b{Asir} itself is still ready to read keyboard inputs as usual.  @b{Asir} itself is still ready to read keyboard inputs as usual.
Line 492  On Windows one has to use @samp{/} as the separator of
Line 505  On Windows one has to use @samp{/} as the separator of
 @var{obj} $B$rI>2A$7$FI=<($9$k(B.  @var{obj} $B$rI>2A$7$FI=<($9$k(B.
 @item  @item
 $BBh(B 2 $B0z?t$,$J$$$+(B, $B$^$?$O(B 0, 2 $B0J30$N>l9g(B, $B2~9T$9$k(B.  $BBh(B 2 $B0z?t$,$J$$$+(B, $B$^$?$O(B 0, 2 $B0J30$N>l9g(B, $B2~9T$9$k(B.
 $BBh(B 2 $B0z?t$,(B 1 $B$N>l9g(B, $B2~9T$;$:(B, $B=PNO$O%P%C%U%!$K=q$-9~$^$l(B,  $BBh(B 2 $B0z?t$,(B 0 $B$N>l9g(B, $B2~9T$;$:(B, $B=PNO$O%P%C%U%!$K=q$-9~$^$l(B,
 $B%P%C%U%!$O%U%i%C%7%e$5$l$J$$(B.  $B%P%C%U%!$O%U%i%C%7%e$5$l$J$$(B.
 $BBh(B 2 $B0z?t$,(B 2 $B$N>l9g(B, $B2~9T$7$J$$$,%P%C%U%!$O%U%i%C%7%e$5$l$k(B.  $BBh(B 2 $B0z?t$,(B 2 $B$N>l9g(B, $B2~9T$7$J$$$,%P%C%U%!$O%U%i%C%7%e$5$l$k(B.
 @item  @item
Line 521  The last 0 will not be printed. )
Line 534  The last 0 will not be printed. )
 @item  @item
 Formatted outputs are not currently supported.  Formatted outputs are not currently supported.
 If one wishes to output multiple objects by a single @code{print()} command,  If one wishes to output multiple objects by a single @code{print()} command,
 use list like @code{[@var{obj1,...}]}, which is not so beautiful, but  use list like @code{[@var{obj1},...]}, which is not so beautiful, but
 convenient to minimize programming efforts.  convenient to minimize programming efforts.
 \E  \E
 @end itemize  @end itemize
   
 @example  @example
 [8] def cat(L) @{ while ( L != [] ) @{ print(car(L),0); L = cdr(L);@} print(""); @}  [8] def cat(L) @{ while ( L != [] ) @{ print(car(L),0); L = cdr(L);@}
   print(""); @}
 [9] cat([xyz,123,"gahaha"])$  [9] cat([xyz,123,"gahaha"])$
 xyz123gahaha  xyz123gahaha
 @end example  @end example
   
   \JP @node access,,, $BF~=PNO(B
   \EG @node access,,, Inputs and Outputs
   @subsection @code{access}
   @findex access
   
   @table @t
   @item access(@var{file})
   \JP :: @var{file} $B$NB8:_$r%F%9%H$9$k(B.
   \EG :: testing an existence of @var{file}.
   @end table
   
   @table @var
   @item return
   (1|0)
   @item file
   \JP $B%U%!%$%kL>(B
   \EG filename
   @end table
   
   @itemize @bullet
   \BJP
   @item
   @var{file} $B$,B8:_$9$l$P(B 1, $BB8:_$7$J$1$l$P(B 0 $B$rJV$9(B.
   \E
   @end itemize
   
   \JP @node remove_file,,, $BF~=PNO(B
   \EG @node remove_file,,, Inputs and Outputs
   @subsection @code{remove_file}
   @findex remove_file
   
   @table @t
   @item remove_file(@var{file})
   \JP :: @var{file} $B$r>C5n$9$k(B.
   \EG :: Delete an file @var{file}.
   @end table
   
   @table @var
   @item return
   1
   @item file
   \JP $B%U%!%$%kL>(B
   \EG filename
   @end table
   
 \JP @node open_file close_file get_line get_byte put_byte purge_stdin,,, $BF~=PNO(B  \JP @node open_file close_file get_line get_byte put_byte purge_stdin,,, $BF~=PNO(B
 \EG @node open_file close_file get_line get_byte put_byte purge_stdin,,, Inputs and Outputs  \EG @node open_file close_file get_line get_byte put_byte purge_stdin,,, Inputs and Outputs
 @subsection @code{open_file}, @code{close_file}, @code{get_line}, @code{get_byte}, @code{put_byte}, @code{purge_stdin}  @subsection @code{open_file}, @code{close_file}, @code{get_line}, @code{get_byte}, @code{put_byte}, @code{purge_stdin}
Line 555  xyz123gahaha
Line 614  xyz123gahaha
 @item get_byte(@var{num})  @item get_byte(@var{num})
 \JP :: $B<1JL;R(B @var{num} $B$N%U%!%$%k$+$i(B 1 $B%P%$%HFI$`(B.  \JP :: $B<1JL;R(B @var{num} $B$N%U%!%$%k$+$i(B 1 $B%P%$%HFI$`(B.
 \EG :: Reads a byte from the file indicated by a descriptor @var{num}.  \EG :: Reads a byte from the file indicated by a descriptor @var{num}.
 @item put_byte(@var{num})  @item put_byte(@var{num},@var{c})
 \JP :: $B<1JL;R(B @var{num} $B$N%U%!%$%k$K(B 1 $B%P%$%H=q$/(B.  \JP :: $B<1JL;R(B @var{num} $B$N%U%!%$%k$K(B 1 $B%P%$%H(B @var{c} $B$r=q$/(B.
 \EG :: Writes a byte to the file indicated by a descriptor @var{num}.  \EG :: Writes a byte @var{c} to the file indicated by a descriptor @var{num}.
 @item purge_stdin()  @item purge_stdin()
 @item purge_stdin()  
 \JP :: $BI8=`F~NO$N%P%C%U%!$r%/%j%"$9$k(B.  \JP :: $BI8=`F~NO$N%P%C%U%!$r%/%j%"$9$k(B.
 \EG :: Clears the buffer for the standard input.  \EG :: Clears the buffer for the standard input.
 @end table  @end table
Line 587  xyz123gahaha
Line 645  xyz123gahaha
 $BMQ$N>l9g(B @code{"w"}, $BKvHxDI2C$N>l9g(B @code{"a"} $B$J$I(B.  $BMQ$N>l9g(B @code{"w"}, $BKvHxDI2C$N>l9g(B @code{"a"} $B$J$I(B.
 $B@.8y$7$?>l9g(B, $B%U%!%$%k<1JL;R$H$7$FHsIi@0?t$rJV$9(B. $B<:GT$N>l9g%(%i!<$H$J$k(B.  $B@.8y$7$?>l9g(B, $B%U%!%$%k<1JL;R$H$7$FHsIi@0?t$rJV$9(B. $B<:GT$N>l9g%(%i!<$H$J$k(B.
 $BITMW$K$J$C$?%U%!%$%k$O(B @code{close_file()} $B$G%/%m!<%:$9$k(B.  $BITMW$K$J$C$?%U%!%$%k$O(B @code{close_file()} $B$G%/%m!<%:$9$k(B.
   $BFCJL$J%U%!%$%kL>(B unix://stdin, unix://stdout, unix://stderr $B$rM?$($k$H(B
   $B$=$l$>$lI8=`F~NO(B, $BI8=`=PNO(B, $BI8=`%(%i!<=PNO$r%*!<%W%s$9$k(B.
   $B$3$N>l9g%b!<%I;XDj$OL5;k$5$l$k(B.
 @item @code{get_line()} $B$O8=:_%*!<%W%s$7$F$$$k%U%!%$%k$+$i(B 1 $B9TFI$_(B,  @item @code{get_line()} $B$O8=:_%*!<%W%s$7$F$$$k%U%!%$%k$+$i(B 1 $B9TFI$_(B,
 $BJ8;zNs$H$7$FJV$9(B. $B0z?t$,$J$$>l9g(B, $BI8=`F~NO$+$i(B 1 $B9TFI$`(B.  $BJ8;zNs$H$7$FJV$9(B. $B0z?t$,$J$$>l9g(B, $BI8=`F~NO$+$i(B 1 $B9TFI$`(B.
 @item @code{get_byte()} $B$O8=:_%*!<%W%s$7$F$$$k%U%!%$%k$+$i(B 1 $B%P%$%HFI$_(B  @item @code{get_byte()} $B$O8=:_%*!<%W%s$7$F$$$k%U%!%$%k$+$i(B 1 $B%P%$%HFI$_(B
Line 606  xyz123gahaha
Line 667  xyz123gahaha
 @item @code{open_file()} opens a file.  @item @code{open_file()} opens a file.
 If @var{mode} is not specified, a file is opened for reading.  If @var{mode} is not specified, a file is opened for reading.
 If @var{mode} is specified, it is used as the mode specification for  If @var{mode} is specified, it is used as the mode specification for
 C standard I/O function {\tt fopen()}. For example @code{"w"} requests  C standard I/O function @code{fopen()}. For example @code{"w"} requests
 that the file is truncated to zero length or created for writing.  that the file is truncated to zero length or created for writing.
 @code{"a"} requests that the file is opened for writing or created  @code{"a"} requests that the file is opened for writing or created
 if it does not exist.  if it does not exist.
Line 614  The stream pointer is set at the end of the file.
Line 675  The stream pointer is set at the end of the file.
 If successful, it returns a non-negative integer as the file descriptor.  If successful, it returns a non-negative integer as the file descriptor.
 Otherwise the system error function is called.  Otherwise the system error function is called.
 Unnecessary files should be closed by @code{close_file()}.  Unnecessary files should be closed by @code{close_file()}.
   If the special file name unix://stdin or unix://stdout or unix://stderr
   is given, it returns the file descriptor for the standard input or
   the standard output or the standard error stream respectively.
   The mode argument is ignored in this case.
 @item @code{get_line()} reads a line from an opened file and returns the  @item @code{get_line()} reads a line from an opened file and returns the
 line as a string. If no argument is supplied, it reads a line from the  line as a string. If no argument is supplied, it reads a line from the
 standard input.  standard input.

Legend:
Removed from v.1.6  
changed lines
  Added in v.1.17

FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>