[BACK]Return to stackmachine.tex CVS log [TXT][DIR] Up to [local] / OpenXM / doc / OpenXM-specs

Diff for /OpenXM/doc/OpenXM-specs/stackmachine.tex between version 1.2 and 1.3

version 1.2, 2000/01/21 06:24:49 version 1.3, 2000/01/21 08:44:55
Line 79  CMObject ¤ËÂФ¹¤ëºÇÂç¸øÌó¿ôŪ¤Ê¥á¥Ã¥»¡¼¥¸¤Î»ÅÍͤòconte
Line 79  CMObject ¤ËÂФ¹¤ëºÇÂç¸øÌó¿ôŪ¤Ê¥á¥Ã¥»¡¼¥¸¤Î»ÅÍͤòconte
 ¤Ç¥¹¥¿¥Ã¥¯¾å¤Ë¤¢¤ë¤È²ò¼á¤·¤Æ²¼¤µ¤¤.)  ¤Ç¥¹¥¿¥Ã¥¯¾å¤Ë¤¢¤ë¤È²ò¼á¤·¤Æ²¼¤µ¤¤.)
   
 ¤¹¤Ù¤Æ¤Î¥µ¡¼¥Ð¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ï°Ê²¼¤Î´Ø¿ô¤ò¼ÂÁõ¤·¤Æ¤¤¤Ê¤¤¤È¤¤¤±¤Ê¤¤.  ¤¹¤Ù¤Æ¤Î¥µ¡¼¥Ð¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Ï°Ê²¼¤Î´Ø¿ô¤ò¼ÂÁõ¤·¤Æ¤¤¤Ê¤¤¤È¤¤¤±¤Ê¤¤.
   
 */  */
   
 /*&eg  /*&eg
Line 139  Stack after the request:
Line 140  Stack after the request:
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 //&jp Result:  ¤Ê¤·.  Result:  none.
 //&eg Result:  none.  
   
 Request:  Request:
 \begin{tabular}{|c|c|c|c|c|c|}  \hline  \begin{tabular}{|c|c|c|c|c|c|}  \hline
Line 155  Stack after the request:
Line 155  Stack after the request:
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 //&jp Result:  ¤Ê¤·.  Result:  none.
 //&eg Result:  none.  
   
 //&jp CMO ¥Ç¡¼¥¿¤Î¼õ¤±¼è¤ê¤Ë¼ºÇÔ¤·¤¿»þ¤Î¤ß  \\  //&jp CMO ¥Ç¡¼¥¿¤Î¼õ¤±¼è¤ê¤Ë¼ºÇÔ¤·¤¿»þ¤Î¤ß  \\
 //&eg If the server fails to receive a CMO data,  //&eg If the server fails to receive a CMO data,
Line 195  mathCap ¤Î¹½Â¤ÂΤò¥·¥¹¥Æ¥àËè¤Ë¤­¤á¤ë¤â¤Î¤È¤·,¤³¤Î´Ø¿ô¤
Line 194  mathCap ¤Î¹½Â¤ÂΤò¥·¥¹¥Æ¥àËè¤Ë¤­¤á¤ë¤â¤Î¤È¤·,¤³¤Î´Ø¿ô¤
 ¥Ý¥¤¥ó¥¿¤òÌ᤹.  (open sm1 ¤Ç¤Ï {\tt struct mathCap} ¤òÍѤ¤¤Æ¤¤¤ë.  ¥Ý¥¤¥ó¥¿¤òÌ᤹.  (open sm1 ¤Ç¤Ï {\tt struct mathCap} ¤òÍѤ¤¤Æ¤¤¤ë.
 */  */
 /*&eg  /*&eg
 It request to push the mathcap of the server.  It requests a server to push the mathcap of the server.
 The mathcap is similar to the termcap. One can know the server type  The mathcap is similar to the termcap. One can know the server type
 and the capability of the server from the mathcap.  and the capability of the server from the mathcap.
 */  */
Line 207  Request:
Line 206  Request:
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 Result:  Stack after the request:
 \begin{tabular}{|c|c|}  \hline  \begin{tabular}{|c|c|}  \hline
 {\tt int32 OX\_DATA} & {\sl Mathcap}  mathCapOb \\  {\tt int32 OX\_DATA} & {\sl Mathcap}  mathCapOb \\
 \hline  \hline
 \end{tabular}  \end{tabular}
   
   Result: none.
   
 \item  \item
 \begin{verbatim}  \begin{verbatim}
 SM_setMathCap  SM_setMathCap
Line 224  SM_setMathCap
Line 225  SM_setMathCap
 ¿ô¤È¤¹¤ë.  (open sm1 ¤Ç¤Ï {\tt struct mathCap} ¤òÍѤ¤¤Æ¤¤¤ë.  ¿ô¤È¤¹¤ë.  (open sm1 ¤Ç¤Ï {\tt struct mathCap} ¤òÍѤ¤¤Æ¤¤¤ë.
 */  */
 /*&eg  /*&eg
 It requests to register the peer's mathcap {\tt m} in the server.  It requests a server to register the peer's mathcap {\tt m} in the server.
 The server can avoid to send OX messages unknown to its peer.  The server can avoid to send OX messages unknown to its peer.
 */  */
 @plugin/mathcap.h)  @plugin/mathcap.h)
Line 236  Request:
Line 237  Request:
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 //&jp Result:  ¤Ê¤·. \\  Result:  none.
 //&eg Result:  none. \\  
 /*&jp  /*&jp
 \noindent  \noindent
 Ãí°Õ: mathcap ¤Ï°ìÈ̤˥¯¥é¥¤¥¢¥ó¥È¼çÂΤÇÀßÄꤹ¤ë.  Ãí°Õ: mathcap ¤Ï°ìÈ̤˥¯¥é¥¤¥¢¥ó¥È¼çÂΤÇÀßÄꤹ¤ë.
Line 262  registers it.
Line 262  registers it.
 SM_executeStringByLocalParser  SM_executeStringByLocalParser
 \end{verbatim}  \end{verbatim}
 /*&jp  /*&jp
 Ê¸»úÎó $s$ ¤ò¥·¥¹¥Æ¥à xxx ¤Îʸˡ(¥µ¡¼¥Ð¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ÎÁȤ߹þ¤ß¥í¡¼¥«  Ê¸»úÎó {\tt s} ¤ò stack ¤«¤é pop ¤·,
 ¥ë¸À¸ì)¤Ë¤·¤¿¤¬¤Ã¤¿¥³¥Þ¥ó¥É¤È¤·¤Æ¼Â¹Ô¤¹¤ë.  ¤¿¤À¤·, ¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤Î·ë  ¤½¤Îʸ»úÎó¤ò¥·¥¹¥Æ¥à¸ÇÍ­¤Îʸˡ(¥µ¡¼¥Ð¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ÎÁȤ߹þ¤ß¥í¡¼¥«
   ¥ë¸À¸ì)¤Ë¤·¤¿¤¬¤Ã¤¿¥³¥Þ¥ó¥É¤È¤·¤Æ¼Â¹Ô¤¹¤ë.  ¥³¥Þ¥ó¥É¤Î¼Â¹Ô¤Î·ë
 ²Ì¤ÎºÇ¸å¤ËÌá¤êÃͤ¬¤¢¤ë¤È¤­¤Ï, {\tt OperandStack} ¤ËÌá¤êÃͤò push ¤¹¤ë.  ²Ì¤ÎºÇ¸å¤ËÌá¤êÃͤ¬¤¢¤ë¤È¤­¤Ï, {\tt OperandStack} ¤ËÌá¤êÃͤò push ¤¹¤ë.
 Àµ¾ï½ªÎ»¤Ê¤é 0 ¤ò, °Û¾ï½ªÎ»¤Ê¤é -1 ¤ò¤â¤É¤¹.  debug ¥â¡¼¥É¤Ë¤Ï¤¤¤Ã¤¿¾ì  OpenXM ¤Ç¤Ï, ¸½ºß¤Î¤È¤³¤í´Ø¿ô̾¤Îɸ½à²½¤Ï¤ª¤³¤Ê¤Ã¤Æ¤¤¤Ê¤¤.
 ¹ç, -2 ¤òÌ᤹. ¥¨¥é¡¼¤Î»þ Error2 Object¤ò stack ¤Ø push ¤¹¤ë.\\ {\tt  
 kan/sm1} ¤Î¾ì¹ç, ¥µ¡¼¥Ð¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤ÎÁȤ߹þ¤ß¥í¡¼¥«¥ë¸À¸ì¤Ï{\tt sm1}  
 ¥Ý¥¹¥È¥¹¥¯¥ê¥×¥È¸À¸ì¤Ç¤¢¤ë.  ¥µ¡¼¥Ð¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤È, {\tt sm1} ¥Ý¥¹¥È  
 ¥¹¥¯¥ê¥×¥È¸À¸ì¤Ï¥¹¥¿¥Ã¥¯¤ò¶¦Í­¤¹¤ë¤è¤¦¤Ë¼ÂÁõ¤µ¤ì¤Æ¤¤¤ë.  ¼ÂºÝ¤Î·×»»¤Ï  
 {\tt executeStringByLocalParser} ¤Ë¤è¤ê¼Â¹Ô¤µ¤ì¤ë.  open XM ¤Ç¤Ï, ¸½ºß  
 ¤Î¤È¤³¤í´Ø¿ô̾¤Îɸ½à²½¤Ï¤ª¤³¤Ê¤Ã¤Æ¤¤¤Ê¤¤.  ¤·¤¿¤¬¤Ã¤Æ, ¼ÂºÝ¤Î·×»»¥³¥Þ  
 ¥ó¥É¤ÎÁ÷½Ð¤Ï mathcap ¤ò¤ß¤Æ¥¯¥é¥¤¥¢¥ó¥È¤¬Àµ¤·¤¤¥³¥Þ¥ó¥É¤òÁªÂò¤¹¤ëɬÍ×  
 ¤¬¤¢¤ë. (¤·¤«¤·¤Ê¤¬¤é, ¶¦ÄÌ´Ø¿ô̾¤¬¤Ê¤¤¤¿¤á¤Ë, ¶¦ÄÌ»ÅÍͤΥµ¡¼¥Ð¥¹¥¿¥Ã  
 ¥¯¥Þ¥·¥ó¤Î¼ÂÁõ¤Ï¤­¤ï¤á¤Æ´Êñ¤Ç¤¢¤ë. ´Ø¿ô̾¤Î¶¦Ä̲½¤Ï¾­Íè¤Î²ÝÂê.) \\³ä  
 ¹þ¤ß¤Ë´Ø¤·¤Æ¤Ï, -1 ¤òÌ᤹¤è¤¦¤Ë ¥Ï¥ó¥É¥é¤ò½ñ¤¯.  
 executeStringByLocalParser() ¤òºÆµ¢Åª¤Ë¸Æ¤ó¤À¤È¤­¤â ³ä¤ê¹þ¤ß¤Î¥Ï¥ó¥É¥é  
 ¤¬Àµ¤·¤¯Æ°ºî¤¹¤ë¤è¤¦¤Ë¤³¤Î´Ø¿ô¤Ï½ñ¤«¤ì¤ë¤Ù¤­¤Ç¤¢¤ë.  ¤³¤Î´Ø¿ô¤ò¸Æ¤Ó½Ð  
 ¤·¤¿¤Î¤Á, signal, setjmp ¤ÎºÆÀßÄê¤ò¸Æ¤Ó½Ð¤·Â¦¤Ç¤ä¤é¤Ê¤¤¤È¤¤¤±¤Ê¤¤. \\  
 ¤³¤Î´Ø¿ô¤ª¤è¤Ó {\tt popString} ¤Îµ¡Ç½¤ò¼Â¸½¤¹¤ì¤Ð, ºÇÄã¸Â¤Î open XM ¤Î  ¤³¤Î´Ø¿ô¤ª¤è¤Ó {\tt popString} ¤Îµ¡Ç½¤ò¼Â¸½¤¹¤ì¤Ð, ºÇÄã¸Â¤Î open XM ¤Î
 ¥µ¡¼¥Ð¤Ë¤Ê¤ì¤ë.  ¼ÂÁõ¤Ç¤Ï, ¤Þ¤º¤³¤ÎÆó¤Ä¤Î´Ø¿ô¤Îµ¡Ç½¤ò¼Â¸½¤¹¤Ù¤­¤Ç¤¢¤ë.  ¥µ¡¼¥Ð¤Ë¤Ê¤ì¤ë.  ¼ÂÁõ¤Ç¤Ï, ¤Þ¤º¤³¤ÎÆó¤Ä¤Î´Ø¿ô¤Îµ¡Ç½¤ò¼Â¸½¤¹¤Ù¤­¤Ç¤¢¤ë.
 */  */
 /*&eg  /*&eg
 A character string $s$ is parsed by the local parser of the stack  It requests a server to pop a character string {\tt s}, to
 machine and interpreted by the local interpreter.  parse it by the local parser of the stack machine,  and
   to interprete by the local interpreter.
 If the exececution produces a result, it is pushed onto  If the exececution produces a result, it is pushed onto
 {\tt OperandStack}.  {\tt OperandStack}.
 If an error has occured,  Error2 Object is pushed onto the stack.  If an error has occured,  Error2 Object is pushed onto the stack.
Line 306  Request: 
Line 295  Request: 
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 //&jp Result:  ¤Ê¤·.  Result:  none.
 //&eg Result:  none.  
 /*&jp  /*&jp
 \noindent  \noindent
 »²¹Í: \  ¼Â¹ÔÁ°¤Î¥¹¥¿¥Ã¥¯¤Î¥Ç¡¼¥¿¤Ï,  »²¹Í: \  ¼Â¹ÔÁ°¤Î¥¹¥¿¥Ã¥¯¤Î¥Ç¡¼¥¿¤Ï,
Line 346  SM_popString
Line 334  SM_popString
 /*&jp  /*&jp
 {\tt OperandStack} ¤è¤ê Object ¤ò pop ¤·, ¤½¤ì¤ò xxx ¤Î½ÐÎϵ¬Â§¤Ë¤·¤¿¤¬¤¤Ê¸  {\tt OperandStack} ¤è¤ê Object ¤ò pop ¤·, ¤½¤ì¤ò xxx ¤Î½ÐÎϵ¬Â§¤Ë¤·¤¿¤¬¤¤Ê¸
 »úÎ󷿤ËÊÑ´¹¤·¤ÆÁ÷¿®¤¹¤ë.  ¥¹¥¿¥Ã¥¯¤¬¶õ¤Î¤È¤­¤Ï, {\tt (char *)NULL} ¤òÌ᤹.  »úÎ󷿤ËÊÑ´¹¤·¤ÆÁ÷¿®¤¹¤ë.  ¥¹¥¿¥Ã¥¯¤¬¶õ¤Î¤È¤­¤Ï, {\tt (char *)NULL} ¤òÌ᤹.
 Ê¸»úÎó¤Ï {\tt ox\_stream out}¤Ø CMO ¤Î¥Ç¡¼  Ê¸»úÎó¤Ï TCP/IP stream ¤Ø CMO ¤Î¥Ç¡¼
 ¥¿¤È¤·¤ÆÁ÷¿®¤¹¤ë.  ¥¨¥é¡¼¤Î¾ì¹ç¤Ï {\tt CMO\_ERROR2} ¤òÌ᤹¤Ù¤­¤Ç¤¢¤ë.  ¥¿¤È¤·¤ÆÁ÷¿®¤¹¤ë.  ¥¨¥é¡¼¤Î¾ì¹ç¤Ï {\tt CMO\_ERROR2} ¤òÌ᤹¤Ù¤­¤Ç¤¢¤ë.
 */  */
 /*&eg  /*&eg
 It requests for a server to pop an object from {\tt OperandStack},  It requests a server to pop an object from {\tt OperandStack},
 to convert it into a character string according to the output format  to convert it into a character string according to the output format
 of the local system, and to send the character string via TCP/IP stream.  of the local system, and to send the character string via TCP/IP stream.
 {\tt (char *)NULL} is returned when the stack is empty.  {\tt (char *)NULL} is returned when the stack is empty.
Line 385  SM_getsp
Line 373  SM_getsp
 object ¤¬ push ¤µ¤ì¤¿¤Ð¤¢¤¤, 1 ¤Å¤ÄÁý¤¨¤ë¤â¤Î¤È¤¹¤ë.  object ¤¬ push ¤µ¤ì¤¿¤Ð¤¢¤¤, 1 ¤Å¤ÄÁý¤¨¤ë¤â¤Î¤È¤¹¤ë.
 */  */
 /*&eg  /*&eg
 It request to push the current stack pointer onto the stack.  It requests a server to push the current stack pointer onto the stack.
 The stack pointer is represented by a non-negative integer.  The stack pointer is represented by a non-negative integer.
 Its initial value is 0 and a push operation increments the  Its initial value is 0 and a push operation increments the
 stack pointer by 1.  stack pointer by 1.
Line 403  Request:
Line 391  Request:
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 Result:  Stack after the request:
 \begin{tabular}{|c|c|c|}  \hline  \begin{tabular}{|c|c|c|}  \hline
 {\tt int32 OX\_DATA} & {\tt int32 CMO\_INT32} & {\it stack pointer value} \\  {\tt int32 OX\_DATA} & {\tt int32 CMO\_INT32} & {\it stack pointer value} \\
 \hline  \hline
 \end{tabular}  \end{tabular}
   
   Result:  none.
   
 \item  \item
 \begin{verbatim}  \begin{verbatim}
 SM_dupErrors  SM_dupErrors
Line 418  SM_dupErrors
Line 408  SM_dupErrors
 ¤µ¤»¤Ê¤¤.  ¤µ¤»¤Ê¤¤.
 */  */
 /*&eg  /*&eg
 It requests to push a list object containing all error objects on the stack.  It requests a server to push a list object containing all error objects on the stack.
 */  */
   
 Stack before the request:  Stack before the request:
Line 433  Request:
Line 423  Request:
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 Result:  Stack after the request:
 \begin{tabular}{|c|c|c|}  \hline  \begin{tabular}{|c|c|c|}  \hline
 {\tt int32 OX\_DATA} & {\sl CMObject} \ a list of errors\\  {\tt int32 OX\_DATA} & {\sl CMObject} \ a list of errors\\
 \hline  \hline
 \end{tabular}  \end{tabular}
   
   Result: none.
 \end{enumerate}  \end{enumerate}
   
 \medbreak  \medbreak
Line 494  list represents available CMO tags.
Line 486  list represents available CMO tags.
 %%Prog: (ox.sm1) run  sm1connectr  [(oxWatch) ox.ccc] extension  %%Prog: (ox.sm1) run  sm1connectr  [(oxWatch) ox.ccc] extension
 %%Prog: ox.ccc (122345; ) oxsubmit ;  %%Prog: ox.ccc (122345; ) oxsubmit ;
 //&jp {\tt message\_body} ¤Î¼ÂÎã¤ò¤¢¤²¤ë.   ¥·¥ê¥¢¥ëÈÖ¹æÉô¤Ï½ü¤¤¤Æ¤¢¤ë.  //&jp {\tt message\_body} ¤Î¼ÂÎã¤ò¤¢¤²¤ë.   ¥·¥ê¥¢¥ëÈÖ¹æÉô¤Ï½ü¤¤¤Æ¤¢¤ë.
 //&eg {\tt message\_body} ¤Î¼ÂÎã¤ò¤¢¤²¤ë.   ¥·¥ê¥¢¥ëÈÖ¹æÉô¤Ï½ü¤¤¤Æ¤¢¤ë.  //&eg We show examples of {\tt message\_body}. Serial numbers are omitted.
 \begin{enumerate}  \begin{enumerate}
 \item  {\tt executeStringByLocalParser("12345 ;");}  \item  {\tt executeStringByLocalParser("12345 ;");}
 /*&jp  /*&jp
Line 502  list represents available CMO tags.
Line 494  list represents available CMO tags.
 {\tt xx(yy)} ¤Î¤Ê¤«¤Î {\tt (yy)} ¤ÏÂбþ¤¹¤ë¥¢¥¹¥­¡¼¥³¡¼¥É¤ò¤¢¤ï¤é¤¹.  {\tt xx(yy)} ¤Î¤Ê¤«¤Î {\tt (yy)} ¤ÏÂбþ¤¹¤ë¥¢¥¹¥­¡¼¥³¡¼¥É¤ò¤¢¤ï¤é¤¹.
 */  */
 /*&eg  /*&eg
 ¤Ï¼¡¤Î¤è¤¦¤Ê¥Ñ¥±¥Ã¥È¤ËÊÑ´¹¤µ¤ì¤ë. ³Æ¿ô»ú¤Ï 16¿Ê1¥Ð¥¤¥È¤ò¤¢¤é¤ï¤¹.  is converted into the following packet. Each number denotes
 {\tt xx(yy)} ¤Î¤Ê¤«¤Î {\tt (yy)} ¤ÏÂбþ¤¹¤ë¥¢¥¹¥­¡¼¥³¡¼¥É¤ò¤¢¤ï¤é¤¹.  one byte in hexadecimal representation.
   {\tt (yy)} in {\tt xx(yy)} represents the corresponding ASCII code.
 */  */
 \begin{verbatim}  \begin{verbatim}
 0   0   2   2   0   0   0   4   0   0   0   7  0   0   2   2   0   0   0   4   0   0   0   7
Line 511  list represents available CMO tags.
Line 504  list represents available CMO tags.
 0   0   2   1   0   0   1   c  0   0   2   1   0   0   1   c
 \end{verbatim}  \end{verbatim}
 /*&jp  /*&jp
 ¤³¤³¤Ç,  ¤½¤ì¤¾¤ì¤Î¥Ç¡¼¥¿¤Î°ÕÌ£¤Ï¼¡¤Î¤È¤ª¤ê¤Ç¤¢¤ë.
 \verb+ 0 0 2 2 0 0 0 4 + ¤Ï, network byte order ¤Ç,  
 ½çÈÖ¤Ë {\tt OX\_DATA} ¤½¤ì¤«¤é,  
 CMO ¤Î¥¿¥°¤Î, {\tt CMO\_STRING} ¤òɽ¤¹.  
 \verb+ 0  0  0  7 + ¤Ïʸ»ú¿ô,  
 ºÇ¸å¤Ë ʸ»úÎó {\tt 12345 ;} ¤¬Íè¤ë.  
 ¤³¤³¤Ç, \verb+ 0 0 1 c + ¤Ï, network byte order ¤Ç,  
 {\tt OX\_executeString} ¤òɽ¤¹.  
 */  */
 /*&eg  /*&eg
 ¤³¤³¤Ç,  Each data has the following meaning.
 \verb+ 0 0 2 2 0 0 0 4 + ¤Ï, network byte order ¤Ç,  
 ½çÈÖ¤Ë {\tt OX\_DATA} ¤½¤ì¤«¤é,  
 CMO ¤Î¥¿¥°¤Î, {\tt CMO\_STRING} ¤òɽ¤¹.  
 \verb+ 0  0  0  7 + ¤Ïʸ»ú¿ô,  
 ºÇ¸å¤Ë ʸ»úÎó {\tt 12345 ;} ¤¬Íè¤ë.  
 ¤³¤³¤Ç, \verb+ 0 0 1 c + ¤Ï, network byte order ¤Ç,  
 {\tt OX\_executeString} ¤òɽ¤¹.  
 */  */
   
 //&jp ¤Þ¤È¤á¤ë¤È¼¡¤Î¤è¤¦¤Ë¤Ê¤ë.  
 //&eg ¤Þ¤È¤á¤ë¤È¼¡¤Î¤è¤¦¤Ë¤Ê¤ë.  
 \begin{verbatim}  \begin{verbatim}
 0   0   2   2  (OX_DATA) 0   0   0   4  (CMO_STRING)  0   0   2   2  (OX_DATA) 0   0   0   4  (CMO_STRING)
 0   0   0   7  (size)  0   0   0   7  (size)
Line 541  CMO ¤Î¥¿¥°¤Î, {\tt CMO\_STRING} ¤òɽ¤¹.
Line 518  CMO ¤Î¥¿¥°¤Î, {\tt CMO\_STRING} ¤òɽ¤¹.
 0   0   1   c  (SM_executeStringByLocalParser)  0   0   1   c  (SM_executeStringByLocalParser)
 \end{verbatim}  \end{verbatim}
 //&jp ¤³¤ì¤ò OXexpression ¤Çɽµ­¤¹¤ë¤È¼¡¤Î¤è¤¦¤Ë¤Ê¤ë.  //&jp ¤³¤ì¤ò OXexpression ¤Çɽµ­¤¹¤ë¤È¼¡¤Î¤è¤¦¤Ë¤Ê¤ë.
 //&eg ¤³¤ì¤ò OXexpression ¤Çɽµ­¤¹¤ë¤È¼¡¤Î¤è¤¦¤Ë¤Ê¤ë.  //&eg This is expressed by OXexpression as follows.
 \begin{center}  \begin{center}
 (OX\_DATA, (CMO\_STRING, 7, "12345 ;"))  (OX\_DATA, (CMO\_STRING, 7, "12345 ;"))
 \end{center}  \end{center}
Line 550  CMO ¤Î¥¿¥°¤Î, {\tt CMO\_STRING} ¤òɽ¤¹.
Line 527  CMO ¤Î¥¿¥°¤Î, {\tt CMO\_STRING} ¤òɽ¤¹.
 \end{center}  \end{center}
   
 //&jp \item  {\tt popString()}  ¤òÍ×ÀÁ¤¹¤ë¥á¥Ã¥»¡¼¥¸:  //&jp \item  {\tt popString()}  ¤òÍ×ÀÁ¤¹¤ë¥á¥Ã¥»¡¼¥¸:
 //&eg \item  {\tt popString()}  ¤òÍ×ÀÁ¤¹¤ë¥á¥Ã¥»¡¼¥¸:  //&eg \item  A message which requests {\tt SM\_popString}:
 \begin{verbatim}  \begin{verbatim}
 0   0   2   1  (OX_COMMAND)  0   0   2   1  (OX_COMMAND)
 0   0   1   7  (SM_popString)  0   0   1   7  (SM_popString)
 \end{verbatim}  \end{verbatim}
 OXexpression ¤Ç¤Ï  //&jp OXexpression ¤Ç¤Ï
   //&eg In OXexpression it is represented as
 (OX\_COMMAND, (SM\_popString)).  (OX\_COMMAND, (SM\_popString)).
   
 \noindent  \noindent
 //&jp ¤³¤ì¤Ë¤¿¤¤¤·¤Æ¼¡¤ÎÊÖÅú¥á¥Ã¥»¡¼¥¸¤¬¤¯¤ë.  //&jp ¤³¤ì¤Ë¤¿¤¤¤·¤Æ¼¡¤ÎÊÖÅú¥á¥Ã¥»¡¼¥¸¤¬¤¯¤ë.
 //&eg ¤³¤ì¤Ë¤¿¤¤¤·¤Æ¼¡¤ÎÊÖÅú¥á¥Ã¥»¡¼¥¸¤¬¤¯¤ë.  //&eg The server returns the following reply message:
 \begin{verbatim}  \begin{verbatim}
 0   0   2   2   (OX_DATA)  0   0   2   2   (OX_DATA)
 0   0   0   4   (CMO_STRING) 0   0   0   5  (size)  0   0   0   4   (CMO_STRING) 0   0   0   5  (size)
 31(1)  32(2)  33(3)  34(4)  35(5)  31(1)  32(2)  33(3)  34(4)  35(5)
 \end{verbatim}  \end{verbatim}
 //&jp OXexpression ¤Ç¤«¤¯¤È,  //&jp OXexpression ¤Ç¤«¤¯¤È,
 //&eg OXexpression ¤Ç¤«¤¯¤È,  //&eg In OXexpression it is represented as
 (OX\_DATA, (CMO\_STRING, 7, "12345 ;")).  (OX\_DATA, (CMO\_STRING, 7, "12345 ;")).
 \end{enumerate}  \end{enumerate}
   
 //&jp \subsubsection{¥°¥ë¡¼¥× SMobject/Basic1 ¤Ë°¤¹¤ë¥ª¥Ú¥ì¡¼¥¿}  //&jp \subsubsection{¥°¥ë¡¼¥× SMobject/Basic1 ¤Ë°¤¹¤ë¥ª¥Ú¥ì¡¼¥¿}
 //&eg \subsubsection{¥°¥ë¡¼¥× SMobject/Basic1 ¤Ë°¤¹¤ë¥ª¥Ú¥ì¡¼¥¿}  //&eg \subsubsection{Operators in the group SMobject/Basic1}
   
 \begin{enumerate}  \begin{enumerate}
 \item  \item
 \begin{verbatim}  \begin{verbatim}
 void xxx_pops(int n)  SM_pops
 \end{verbatim}  \end{verbatim}
 /*&jp  /*&jp
 operand stack ¤è¤ê, {\it n} ¸Ä¤Î¸µ ({\it obj1, obj2, $\ldots$, objn})  operand stack ¤è¤ê, {\it n} ¸Ä¤Î¸µ ({\it obj1, obj2, $\ldots$, objn})
 ¤ò pop ¤·¤Æ¼Î¤Æ¤ë.  ¤ò pop ¤·¤Æ¼Î¤Æ¤ë.
 */  */
 /*&eg  /*&eg
 operand stack ¤è¤ê, {\it n} ¸Ä¤Î¸µ ({\it obj1, obj2, $\ldots$, objn})  It requests a server to pop {\it n} and to discard elements {\it obj1, obj2,
 ¤ò pop ¤·¤Æ¼Î¤Æ¤ë.  $\ldots$, objn}) from the stack.
 */  */
   
 //&jp Stack before the request: (±¦¤¬ stack ¤Î¥È¥Ã¥×¤Ç¤¢¤ë.) \\  //&jp Stack before the request: (±¦¤¬ stack ¤Î¥È¥Ã¥×¤Ç¤¢¤ë.) \\
 //&eg Stack before the request: (±¦¤¬ stack ¤Î¥È¥Ã¥×¤Ç¤¢¤ë.) \\  //&eg Stack before the request: (The rightmost one is the top of the stack.) \\
 \begin{tabular}{|c|c|c|c|c|}  \hline  \begin{tabular}{|c|c|c|c|c|}  \hline
 {\it obj1} & {\it  obj2}  & $\cdots$ & {\it objn}  &{\it INT32 n} \\  {\it obj1} & {\it  obj2}  & $\cdots$ & {\it objn}  &{\it INT32 n} \\
 \hline  \hline
Line 601  Request:
Line 579  Request:
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 //&jp Result:  ¤Ê¤·.  Result:  none.
 //&eg Result:  none.  
   
   
 \item  \item
 \begin{verbatim}  \begin{verbatim}
 int xxx_setName(char *name)  int SM_setName
 \end{verbatim}  \end{verbatim}
 /*&jp  /*&jp
 {\tt OperandStack} ¤è¤ê {\it name} ¤ò pop ¤·, ¤Ä¤®¤Ë{\tt OperandStack}  {\tt OperandStack} ¤è¤ê {\it name} ¤ò pop ¤·, ¤Ä¤®¤Ë{\tt OperandStack}
Line 616  bind ¤¹¤ë.  Àµ¾ï½ªÎ»¤Ê¤é 0 ¤ò, °Û¾ï½ªÎ»¤Ê¤é -1 ¤ò¤â¤É¤
Line 593  bind ¤¹¤ë.  Àµ¾ï½ªÎ»¤Ê¤é 0 ¤ò, °Û¾ï½ªÎ»¤Ê¤é -1 ¤ò¤â¤É¤
 ¤ëÄÌ¿®¤Ç¤Ï, °Û¾ï½ªÎ»¤Î»þ¤Î¤ß, {\tt CMO\_ERROR2} ¤òstack ¤Ø push ¤¹¤ë.  ¤ëÄÌ¿®¤Ç¤Ï, °Û¾ï½ªÎ»¤Î»þ¤Î¤ß, {\tt CMO\_ERROR2} ¤òstack ¤Ø push ¤¹¤ë.
 */  */
 /*&eg  /*&eg
 {\tt OperandStack} ¤è¤ê {\it name} ¤ò pop ¤·, ¤Ä¤®¤Ë{\tt OperandStack}  It requests a server to pop {\it name}, to pop {\it obj}, and to
 ¤è¤ê {\it obj} ¤ò pop ¤·, ¤½¤ì¤ò¸½ºß¤Î̾Á°¶õ´Ö¤ÇÊÑ¿ô {\it name} ¤Ë  bind {\it obj} to a variable {\it name} in the current name space.
 bind ¤¹¤ë.  Àµ¾ï½ªÎ»¤Ê¤é 0 ¤ò, °Û¾ï½ªÎ»¤Ê¤é -1 ¤ò¤â¤É¤¹.  TCP/IP ¤Ë¤è  If an error has occured {\tt CMO\_ERROR2} is pushed to the stack.
 ¤ëÄÌ¿®¤Ç¤Ï, °Û¾ï½ªÎ»¤Î»þ¤Î¤ß, {\tt CMO\_ERROR2} ¤òstack ¤Ø push ¤¹¤ë.  
 */  */
 //&jp Stack before the request: (±¦¤¬ stack ¤Î top.)  //&jp Stack before the request: (±¦¤¬ stack ¤Î top.)
 //&eg Stack before the request: (±¦¤¬ stack ¤Î top.)  //&eg Stack before the request: (The rightmost one is the top of the stack.)
 \begin{tabular}{|c|c|}  \hline  \begin{tabular}{|c|c|}  \hline
 {\it obj} & {\it String name}  \\  {\it obj} & {\it String name}  \\
 \hline  \hline
Line 634  Request:
Line 610  Request:
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 //&jp Result: ¤Ê¤·.  Result: none.
 //&eg Result: none.  
   
 \item  \item
 \begin{verbatim}  \begin{verbatim}
 int xxx_evalName(char *name)  SM_evalName
 \end{verbatim}  \end{verbatim}
   
 /*&jp  /*&jp
 ¸½ºß¤Î̾Á°¶õ´Ö¤ÇÊÑ¿ô {\it name} ¤òɾ²Á¤¹¤ë.  É¾²Á¤Î·ë²Ì {\it  ¸½ºß¤Î̾Á°¶õ´Ö¤ÇÊÑ¿ô {\it name} ¤òɾ²Á¤¹¤ë.  É¾²Á¤Î·ë²Ì {\it
 resultObj} ¤ò¥¹¥¿¥Ã¥¯¤ØÌ᤹.  ´Ø¿ô¼«ÂΤÏÀµ¾ï½ªÎ»¤Ê¤é 0 ¤ò, °Û¾ï½ªÎ»¤Ê  resultObj} ¤ò¥¹¥¿¥Ã¥¯¤ØÌ᤹.  ´Ø¿ô¼«ÂΤÏÀµ¾ï½ªÎ»¤Ê¤é 0 ¤ò, °Û¾ï½ªÎ»¤Ê
 ¤é -1 ¤ò¤â¤É¤¹.  TCP/IP ¤Î¾ì¹ç, °Û¾ï½ªÎ»¤Î¾ì¹ç¤Î¤ß {\tt CMO\_ERROR2}  ¤é -1 ¤ò¤â¤É¤¹.  TCP/IP ¤Î¾ì¹ç, °Û¾ï½ªÎ»¤Î¾ì¹ç¤Î¤ß {\tt CMO\_ERROR2}
 ¤ò stack ¤Ø push ¤¹¤ë.  ¤ò stack ¤Ø push ¤¹¤ë.
 */  */
   
 /*&eg  /*&eg
 ¸½ºß¤Î̾Á°¶õ´Ö¤ÇÊÑ¿ô {\it name} ¤òɾ²Á¤¹¤ë.  É¾²Á¤Î·ë²Ì {\it  It requests a server to pop {\it name} and to evaluate a variable
 resultObj} ¤ò¥¹¥¿¥Ã¥¯¤ØÌ᤹.  ´Ø¿ô¼«ÂΤÏÀµ¾ï½ªÎ»¤Ê¤é 0 ¤ò, °Û¾ï½ªÎ»¤Ê  {\it name} in the current name space. The result of the evaluation
 ¤é -1 ¤ò¤â¤É¤¹.  TCP/IP ¤Î¾ì¹ç, °Û¾ï½ªÎ»¤Î¾ì¹ç¤Î¤ß {\tt CMO\_ERROR2}  {\it resultObj} is pushed to the stack.
 ¤ò stack ¤Ø push ¤¹¤ë.  If an error has occured {\tt CMO\_ERROR2} is pushed to the stack.
 */  */
   
 //&jp Stack before the request: (±¦¤¬ stack ¤Î top.)  //&jp Stack before the request: (±¦¤¬ stack ¤Î top.)
 //&eg Stack before the request: (±¦¤¬ stack ¤Î top.)  //&eg Stack before the request: (The rightmost one is the top of the stack.)
 \begin{tabular}{|c|}  \hline  \begin{tabular}{|c|}  \hline
 {\it String name}  \\  {\it String name}  \\
 \hline  \hline
Line 668  Request:
Line 645  Request:
 \end{tabular}  \end{tabular}
   
 //&jp Stack after the request: (±¦¤¬ stack ¤Î top.)  //&jp Stack after the request: (±¦¤¬ stack ¤Î top.)
 //&eg Stack after the request: (±¦¤¬ stack ¤Î top.)  //&eg Stack after the request: (The rightmost one is the top of the stack.)
 \begin{tabular}{|c|}  \hline  \begin{tabular}{|c|}  \hline
 {\it resultObj} \\  {\it resultObj} \\
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 //&jp Result:  ¤Ê¤·.  Result:  none.
 //&eg Result:  none.  
   
 \item  \item
 \begin{verbatim}  \begin{verbatim}
 int xxx_executeFunction(char *s, int n)  SM_executeFunction
 \end{verbatim}  \end{verbatim}
 /*&jp  /*&jp
 ¥¹¥¿¥Ã¥¯¤è¤ê {\it n} ¸Ä¤Î¥Ç¡¼¥¿¤ò pop ¤·¤Æ, ¥µ¡¼¥Ð¤Î¥í¡¼¥«¥ë´Ø¿ô{\it  ¥¹¥¿¥Ã¥¯¤è¤ê {\it n} ¸Ä¤Î¥Ç¡¼¥¿¤ò pop ¤·¤Æ, ¥µ¡¼¥Ð¤Î¥í¡¼¥«¥ë´Ø¿ô{\it
Line 687  s} ¤ò¼Â¹Ô¤¹¤ë.  ¥¨¥é¡¼¤Î¤È¤­¤Î¤ß {\tt CMO\_ERROR2} ¤ò 
Line 663  s} ¤ò¼Â¹Ô¤¹¤ë.  ¥¨¥é¡¼¤Î¤È¤­¤Î¤ß {\tt CMO\_ERROR2} ¤ò 
 ¤ë.  ¤ë.
 */  */
 /*&eg  /*&eg
 ¥¹¥¿¥Ã¥¯¤è¤ê {\it n} ¸Ä¤Î¥Ç¡¼¥¿¤ò pop ¤·¤Æ, ¥µ¡¼¥Ð¤Î¥í¡¼¥«¥ë´Ø¿ô{\it  It requests a server to pop {\it s} as a function name,
 s} ¤ò¼Â¹Ô¤¹¤ë.  ¥¨¥é¡¼¤Î¤È¤­¤Î¤ß {\tt CMO\_ERROR2} ¤ò stack ¤Ø push ¤¹  to pop {\it n} as the number of arguments and to execute
 ¤ë.  a local function {\it s} with {\it n} arguments popped from
   the stack.
   If an error has occured {\tt CMO\_ERROR2} is pushed to the stack.
 */  */
   
 //&jp Stack before the request: (±¦¤¬ stack ¤Î top.) \\  //&jp Stack before the request: (±¦¤¬ stack ¤Î top.) \\
Line 706  Request:
Line 684  Request:
 \end{tabular}  \end{tabular}
   
 //&jp Stack after the request: ´Ø¿ô¼Â¹Ô¤Î·ë²Ì.  //&jp Stack after the request: ´Ø¿ô¼Â¹Ô¤Î·ë²Ì.
 //&eg Stack after the request: ´Ø¿ô¼Â¹Ô¤Î·ë²Ì.  //&eg Stack after the request: The result of the execution.
   
 //&jp Result: ¤Ê¤·.  Result: none.
 //&eg Result: none.  
   
 \item  \item
 \begin{verbatim}  \begin{verbatim}
 bytes *xxx_popSerializedLocalObject(void)  SM_popSerializedLocalObject
 void popSerializedLocalObject(ox_stream out)  
 \end{verbatim}  \end{verbatim}
   
 /*&jp  /*&jp
 ºÇ½é¤Î´Ø¿ô¤Ï¥é¥¤¥Ö¥é¥ê¤È¤·¤Æ¥ê¥ó¥¯¤·¤Æ»ÈÍѤ¹¤ë¤¿¤á¤Î´Ø¿ô¤Ç¤¢¤ë.  ¥¹¥¿¥Ã  ¥¹¥¿¥Ã¥¯¤è¤ê pop ¤·¤¿ object ¤ò local ·Á¼°¤Ç serialization ¤·¤Æ
 ¥¯¤è¤ê pop ¤·¤¿ object ¤ò local ·Á¼°¤Î serialization ¤·¤Æbyte Îó¤ÇÌ᤹.  OX message ¤È¤·¤Æ stream ¤Ø½ÐÎϤ¹¤ë. OX message tag ¤È¤·¤Æ¤Ï,
 2 ÈÖÌܤδؿô¤Ï Socket ¤ÇÄÌ¿®¤¹¤ë¤¿¤á¤ÎƱµ¡Ç½¤Î´Ø¿ô¤Ç¤¢¤ê,  local ·Á¼°¤ËÂбþ¤·¤¿¤â¤Î¤¬ÄêµÁ¤µ¤ì¤Æ¤¤¤ë¤³¤È¤¬É¬ÍפǤ¢¤ë.
 serialization ¤µ¤ì¤¿ byte Îó¤ò{\tt ox\_stream out} ¤Ø½ÐÎϤ¹¤ë.  ¤³¤Î¾ì  ¤³¤Î´Ø¿ô¤Ï¤ª¤â¤Ë, homogeneous ¤Êʬ»¶¥·¥¹¥Æ¥à¤ÇÍѤ¤¤ë.
 ¹ç, header {\tt int32 OX\_DATA}, {\tt int32 CMO\_LOCAL\_OBJECT} ¤ò¤Ä¤±  
 ¤Æ¤«¤é, byte Îó¤òÁ÷¤ë. ¤³¤Î´Ø¿ô¤Ï¤ª¤â¤Ë, homogeneous ¤Êʬ»¶¥·¥¹¥Æ¥à¤Ç  
 ÍѤ¤¤ë.  ¼¡¤Ë, ¥µ¡¼¥Ð¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Î´Ø¿ô¤¬¼Â¹Ô¤µ¤ì¤ë¤Þ¤Ç¤Ï,Ìá¤ê  
 object ¤ÎÆâÍƤÏÊݾڤµ¤ì¤Ê¤¤¤È¤¤¤±¤Ê¤¤.  
 */  */
 /*&eg  /*&eg
 ºÇ½é¤Î´Ø¿ô¤Ï¥é¥¤¥Ö¥é¥ê¤È¤·¤Æ¥ê¥ó¥¯¤·¤Æ»ÈÍѤ¹¤ë¤¿¤á¤Î´Ø¿ô¤Ç¤¢¤ë.  ¥¹¥¿¥Ã  It requests a sever to pop an object, to convert it into a
 ¥¯¤è¤ê pop ¤·¤¿ object ¤ò local ·Á¼°¤Î serialization ¤·¤Æbyte Îó¤ÇÌ᤹.  serialized form according to a local serialization scheme, and
 2 ÈÖÌܤδؿô¤Ï Socket ¤ÇÄÌ¿®¤¹¤ë¤¿¤á¤ÎƱµ¡Ç½¤Î´Ø¿ô¤Ç¤¢¤ê,  to send it to the stream as an OX message.
 serialization ¤µ¤ì¤¿ byte Îó¤ò{\tt ox\_stream out} ¤Ø½ÐÎϤ¹¤ë.  ¤³¤Î¾ì  An OX message tag corresponding to
 ¹ç, header {\tt int32 OX\_DATA}, {\tt int32 CMO\_LOCAL\_OBJECT} ¤ò¤Ä¤±  the local data format must be sent prior to the serialized data
 ¤Æ¤«¤é, byte Îó¤òÁ÷¤ë. ¤³¤Î´Ø¿ô¤Ï¤ª¤â¤Ë, homogeneous ¤Êʬ»¶¥·¥¹¥Æ¥à¤Ç  itself.
 ÍѤ¤¤ë.  ¼¡¤Ë, ¥µ¡¼¥Ð¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Î´Ø¿ô¤¬¼Â¹Ô¤µ¤ì¤ë¤Þ¤Ç¤Ï,Ìá¤ê  This operation is used mainly on homogeneous distributed systems.
 object ¤ÎÆâÍƤÏÊݾڤµ¤ì¤Ê¤¤¤È¤¤¤±¤Ê¤¤.  
 */  */
 \item  
 /*&jp  
 local serialized object, ¤ª¤è¤Ó ¥µ¥Ý¡¼¥È¤¹¤ë CMO object ¤ò{\tt  
 OX\_DATA} ¤È¤·¤Æ¼õ¿®¤·¤¿¾ì¹ç, {\tt OperandStack} ¤Øpush ¤¹¤ë.  ¼õ¿®¥¨  
 ¥é¡¼¤òµ¯¤³¤·¤¿¤È¤­¤Î¤ß, {\tt CMO\_ERROR2} ¤ò stack ¤Ø push ¤¹¤ë.  
 */  
 /*&eg  
 local serialized object, ¤ª¤è¤Ó ¥µ¥Ý¡¼¥È¤¹¤ë CMO object ¤ò{\tt  
 OX\_DATA} ¤È¤·¤Æ¼õ¿®¤·¤¿¾ì¹ç, {\tt OperandStack} ¤Øpush ¤¹¤ë.  ¼õ¿®¥¨  
 ¥é¡¼¤òµ¯¤³¤·¤¿¤È¤­¤Î¤ß, {\tt CMO\_ERROR2} ¤ò stack ¤Ø push ¤¹¤ë.  
 */  
   
 \item  \item
 \begin{verbatim}  \begin{verbatim}
 bytes *xxx_popCMO(void)  SM_popCMO
 void xxx_popCMO(ox_stream out)  
 \end{verbatim}  \end{verbatim}
   
 /*&jp  /*&jp
 ºÇ½é¤Î´Ø¿ô¤Ï¥é¥¤¥Ö¥é¥ê¤È¤·¤Æ¥ê¥ó¥¯¤·¤Æ»ÈÍѤ¹¤ë¤¿¤á¤Î´Ø¿ô¤Ç¤¢¤ë.  {\tt  {\tt OperandStack} ¤è¤ê object ¤ò pop ¤· CMO ·Á¼°¤Î serialized object ¤ò
 OperandStack} ¤è¤ê object ¤ò pop ¤· CMO ·Á¼°¤Î serialized object ¤ò  stream ¤Ø header {\tt OX\_DATA} ¤ò¤Ä¤±¤Æ¤Ê¤¬¤¹.
 byte Îó¤È¤·¤ÆÌ᤹.  2 ÈÖÌܤδؿô¤Ï Socket ¤ÇÄÌ¿®¤¹¤ë¤¿¤á¤ÎƱµ¡Ç½¤Î´Ø¿ô  
 ¤Ç¤¢¤ê, {\tt ox\_stream out } ¤Ø, ¤½¤Î¥Ç¡¼¥¿¤ò header {\tt OX\_DATA}  
 ¤ò¤Ä¤±¤Æ¤Ê¤¬¤¹.  ¤³¤Î´Ø¿ô¤Ï¤ª¤â¤Ë, heterotic ¤Êʬ»¶¥·¥¹¥Æ¥à¤ÇÍѤ¤¤ë.  
 ¼¡¤Ë, ¥µ¡¼¥Ð¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Î´Ø¿ô¤¬¼Â¹Ô¤µ¤ì¤ë¤Þ¤Ç¤Ï,Ìá¤ê object ¤ÎÆâÍÆ  
 ¤ÏÊݾڤµ¤ì¤Ê¤¤¤È¤¤¤±¤Ê¤¤.  
 */  */
 /*&eg  /*&eg
 ºÇ½é¤Î´Ø¿ô¤Ï¥é¥¤¥Ö¥é¥ê¤È¤·¤Æ¥ê¥ó¥¯¤·¤Æ»ÈÍѤ¹¤ë¤¿¤á¤Î´Ø¿ô¤Ç¤¢¤ë.  {\tt  It requests a server to pop an object from the stack, to convert
 OperandStack} ¤è¤ê object ¤ò pop ¤· CMO ·Á¼°¤Î serialized object ¤ò  it into a serialized form according to the standard CMO encoding scheme,
 byte Îó¤È¤·¤ÆÌ᤹.  2 ÈÖÌܤδؿô¤Ï Socket ¤ÇÄÌ¿®¤¹¤ë¤¿¤á¤ÎƱµ¡Ç½¤Î´Ø¿ô  and to send it to the stream with the {\tt OX\_DATA} header.
 ¤Ç¤¢¤ê, {\tt ox\_stream out } ¤Ø, ¤½¤Î¥Ç¡¼¥¿¤ò header {\tt OX\_DATA}  
 ¤ò¤Ä¤±¤Æ¤Ê¤¬¤¹.  ¤³¤Î´Ø¿ô¤Ï¤ª¤â¤Ë, heterotic ¤Êʬ»¶¥·¥¹¥Æ¥à¤ÇÍѤ¤¤ë.  
 ¼¡¤Ë, ¥µ¡¼¥Ð¥¹¥¿¥Ã¥¯¥Þ¥·¥ó¤Î´Ø¿ô¤¬¼Â¹Ô¤µ¤ì¤ë¤Þ¤Ç¤Ï,Ìá¤ê object ¤ÎÆâÍÆ  
 ¤ÏÊݾڤµ¤ì¤Ê¤¤¤È¤¤¤±¤Ê¤¤.  
 */  */
   
 Request:  Request:
Line 784  Result:  
Line 735  Result:  
 {\tt int32 OX\_DATA} &   {\it Serialized CMO} \\  {\tt int32 OX\_DATA} &   {\it Serialized CMO} \\
 \hline  \hline
 \end{tabular}  \end{tabular}
   
 //&jp °Ê²¼¤Ç, {\tt ox\_stream} ¤Ï¥µ¥ó¥×¥ë¥µ¡¼¥Ð¤Î¾ì¹ç,  
 //&eg °Ê²¼¤Ç, {\tt ox\_stream} ¤Ï¥µ¥ó¥×¥ë¥µ¡¼¥Ð¤Î¾ì¹ç,  
 \begin{verbatim}  
 typedef FILE2 * ox_stream;  
 \end{verbatim}  
 //&jp ¤Ç¤¢¤ë (cf. {\tt file2.h}). ¤³¤ì¤Ï½èÍý·Ï¤Ë¤è¤ê¤Á¤¬¤Ã¤Æ¤è¤¤.  
 //&jp {\tt ox\_asir} ¤Ç¤Ï, {\tt FILE *} ¤òÍѤ¤¤Æ¤¤¤ë.  
 //&eg ¤Ç¤¢¤ë (cf. {\tt file2.h}). ¤³¤ì¤Ï½èÍý·Ï¤Ë¤è¤ê¤Á¤¬¤Ã¤Æ¤è¤¤.  
 //&eg {\tt ox\_asir} ¤Ç¤Ï, {\tt FILE *} ¤òÍѤ¤¤Æ¤¤¤ë.  
   
 \end{enumerate}  \end{enumerate}
   

Legend:
Removed from v.1.2  
changed lines
  Added in v.1.3

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