Annotation of OpenXM/src/asir-doc/parts/process.texi, Revision 1.1
1.1 ! noro 1: @node $BJ,;67W;;(B,,, Top
! 2: @chapter $BJ,;67W;;(B
! 3:
! 4: @menu
! 5: * OpenXM::
! 6: * Mathcap::
! 7: * $B%9%?%C%/%^%7%s%3%^%s%I(B::
! 8: * $B%G%P%C%0(B::
! 9: * $BJ,;67W;;$K4X$9$k4X?t(B::
! 10: @end menu
! 11:
! 12: @node OpenXM,,, $BJ,;67W;;(B
! 13: @section OpenXM
! 14:
! 15: @b{Asir} $B$O(B, $BJ,;67W;;$K$*$1$kDL?.%W%m%H%3%k$H$7$F(B, @b{Open XM}
! 16: (Open message eXchange protocol for Mathematics) $B$r:NMQ$7$F$$$k(B.
! 17: @b{Open XM} $B$O(B, $B<g$H$7$F?t3X%*%V%8%'%/%H$r%W%m%;%94V$G$d$j$H$j$9$k(B
! 18: $B$?$a$N5,Ls$G$"$k(B. @b{Open XM} $B$K$*$$$F$O(B
! 19:
! 20: @enumerate
! 21: @item client $B$,(B server $B$KBP$7$F7W;;<B9T0MMj$N%a%C%;!<%8$rAw$k(B.
! 22: @item server $B$,7W;;$r<B9T$9$k(B.
! 23: @item client $B$,(B server $B$K7k2LAwIU0MMj$N%a%C%;!<%8$rAw$k(B.
! 24: @item server $B$O7k2L$rJV$7(B, client $B$O7k2L$r<u$1<h$k(B
! 25: @end enumerate
! 26:
! 27: $B$H$$$&7A$GJ,;67W;;$,9T$o$l$k(B. server $B$O%9%?%C%/%^%7%s$G$"$k(B. $B$9$J$o$A(B,
! 28: client $B$+$iAw$i$l$?%G!<%?%*%V%8%'%/%H$O(B, $B;XDj$,$J$$8B$j(B server $B$N%9%?%C(B
! 29: $B%/$K@Q$^$l(B, $B%3%^%s%I$,Aw$i$l$?;~$K(B, $BI,MW$J$@$1%9%?%C%/$+$i%G!<%?$r<h$j=P(B
! 30: $B$7$F(B, $B4X?t8F$S=P$7$N0z?t$H$9$k(B.
! 31:
! 32: @b{Open XM} $B$K$*$$$FFCD'E*$J$3$H$O(B, $B7W;;7k2L$OC1$K(B server $B$N%9%?%C%/$K(B
! 33: $B@Q$^$l$k$@$1$G(B, client $B$+$i$N0MMj$,$J$$8B$j(B, $BDL?.O)$K%G!<%?$ON.$l$J$$(B
! 34: $B$H$$$&E@$G$"$k(B.
! 35:
! 36: $B%W%m%H%3%k$K$O(B, $B%*%V%8%'%/%H$N6&DL%U%)!<%^%C%H$r5,Dj(B
! 37: $B$9$k(B @b{CMO} (Common Mathematical Object format), $B%W%m%;%9$KBP$9$k(B
! 38: $BF0:n$r;XDj$9$k(B @b{SM} (Stack Machine command) $B$,4^$^$l$k(B.
! 39: $B$3$l$i$O(B, $B%9%?%C%/%^%7%s$K%G!<%?$rAw$k:]$K(B, $B%G!<%?$N<oN`$r;XDj$9$k(B
! 40: $B$?$a$N(B @b{OX} expression $B$H$7$F%i%C%T%s%0$5$l$k(B.
! 41:
! 42: @b{Asir} $B$r(B client $B$H$7$F(B @b{Open XM} $B$K$h$kJ,;67W;;$r9T$&>l9g$K$O(B,
! 43: $B$^$:(B, server $B$rN)$A>e$2$F(B, $BDL?.$r@.N)$5$;$kI,MW$,$"$k(B. $B$3$N$?$a$K(B,
! 44: @code{ox_launch()}, @code{ox_launch_nox()}, @code{ox_launch_generic()}
! 45: $B$J$I$N4X?t$,MQ0U$5$l$F$$$k(B. $B$5$i$K(B, $BDL?.$N@.N)$7$?(B server $B$KBP$7$F(B
! 46: $B0J2<$N$h$&$JA`:n$,4X?t$H$7$FMQ0U$5$l$F$$$k(B.
! 47:
! 48: @table @code
! 49: @item @code{ox_push_cmo()}
! 50:
! 51: $B%G!<%?$r(B server $B$N%9%?%C%/$K@Q$`(B
! 52:
! 53: @item @code{ox_pop_cmo()}
! 54: $B%G!<%?$r(B server $B$N%9%?%C%/$+$i<h$j=P$9(B.
! 55:
! 56: @item @code{ox_cmo_rpc()}
! 57:
! 58: server $B$N4X?t$r8F$S=P$7(B, $B7k2L$r%9%?%C%/$K@Q$`(B.
! 59:
! 60: @item @code{ox_execute_string()}
! 61:
! 62: server $B8GM-$N%f!<%68@8l(B (@b{Asir} $B$J$i(B Asir $B8@8l(B) $B$G=q$+$l$?J8;zNs$r(B
! 63: server $B$,<B9T$7(B, $B7k2L$r%9%?%C%/$K@Q$`(B.
! 64:
! 65: @item @code{ox_push_cmd()}
! 66:
! 67: @b{SM} $B%3%^%s%I$NAw?.(B.
! 68:
! 69: @item @code{ox_get()}
! 70:
! 71: $B4{$KDL?.O)$K$"$k%G!<%?$N<h$j=P$7(B.
! 72: @end table
! 73:
! 74: @node Mathcap,,, $BJ,;67W;;(B
! 75: @section Mathcap
! 76:
! 77: server, client $B$H$b$K(B, @b{Open XM} $B$G5,Dj$5$l$F$$$kA4$F$N(B@b{CMO} $B%U%)!<(B
! 78: $B%^%C%H(B, @b{SM} $B%3%^%s%I$r<BAu$7$F$$$k$H$O8B$i$J$$(B. $BAj<j$NCN$i$J$$%G!<%?(B,
! 79: $B%3%^%s%I$rAw$C$?>l9g(B, $B8=>u$G$O7k2L$OM=A[$G$-$J$$(B. $B$3$N$?$a(B, @b{Open XM}
! 80: $B$G$O(B, $B$"$i$+$8$a8_$$$N%5%]!<%H$9$k(B @b{CMO}, @b{SM} $B$N%j%9%H$r8r49$7$"$C$F(B,
! 81: $BAj<j$NCN$i$J$$%G!<%?$rAw$i$J$$$h$&$K$9$k;EAH$_$rDs>'$7$F$$$k(B. $B$3$N$?$a$N(B
! 82: $B%G!<%?$,(B Mathcap $B$G$"$k(B. Mathcap $B$O(B @b{CMO} $B$H$7$F$O%j%9%H$G$"$j(B, $B$=$N(B
! 83: $BMWAG$O(B 32 bit $B@0?t$^$?$OJ8;zNs$G$"$k(B. $B8=:_$N5,Dj$G$O(B, Mathcap $B$O(B
! 84: $BD9$5$,(B 3 $B$N%j%9%H$G(B,
! 85:
! 86: [[version $BHV9f(B, server $BL>(B],@b{SM}taglist,[@b{OX}taglist,@b{CMO}taglist, @b{CMO}taglist,...]]
! 87:
! 88: $B$H$$$&7A$r$7$F$$$k(B. @b{OX}taglist $B$N(B @var{i} $BHVL\$NMWAG$O(B,
! 89: $B$=$N8e$KB3$/(B @b{CMO}taglist $B$N(B @var{i} $BHVL\$N$b$N$KBP1~$7$F$$$F(B,
! 90: @b{OX}tag $B$G<($5$l$k%+%F%4%j$N%G!<%?$KBP$7$F(B, $B$I$N$h$&$J(B @b{CMO} $B$,;HMQ2D(B
! 91: $BG=$+$r<($9$b$N$G$"$k(B. $B$3$N;XDj$rJ#?t5v$9$3$H$K$h$j(B, $BNc$($P(B
! 92: @samp{ox_asir} $B$N$h$&$K(B, @b{CMO} $B%G!<%?0J30$K(B, @b{Asir} $B8GM-$N%G!<%?7A<0(B
! 93: $B$K$h$j(B, @b{CMO}$B$h$jB?$/$N<oN`$N%G!<%?Aw<u?.$r9T$($k$3$H$r<($;$k(B.
! 94:
! 95: $B%G!<%?Aw?.$N:]$K(B, $BAj<j%W%m%;%9$N(B Mathcap $B$,4{$KEPO?$5$l$F$$$k>l9g(B,
! 96: Mathcap $B$K$h$k%A%'%C%/$r9T$&$+H]$+$O(B,
! 97: @code{ctrl} $B%3%^%s%I$N(B @code{"ox_check"} $B%9%$%C%A$K$h$j7h$^$k(B.
! 98: $B$3$N%9%$%C%A$N=i4|CM$O(B 1 $B$G(B, $B%A%'%C%/$r9T$&$3$H$r0UL#$9$k(B.
! 99: @code{ctrl("ox_check",0)} $B$K$h$j%A%'%C%/$r9T$o$J$$$h$&$K$G$-$k(B.
! 100:
! 101: @node $B%9%?%C%/%^%7%s%3%^%s%I(B,,, $BJ,;67W;;(B
! 102: @section $B%9%?%C%/%^%7%s%3%^%s%I(B
! 103:
! 104: $B%9%?%C%/%^%7%s%3%^%s%I$O(B, $B%9%?%C%/%^%7%s$G$"$k(B server $B$K2?$i$+$NA`:n$r9T(B
! 105: $B$o$;$k$?$a$KMQ0U$5$l$F$$$k(B. $B$$$/$D$+$N%3%^%s%I$O(B, $B$h$/MQ$$$i$l$k7A$G(B, $BB>(B
! 106: $B$N%3%^%s%I(B, $B%G!<%?$H$H$b$K(B, @b{Asir} $B$NAH$_9~$_4X?t$K$h$kAw$i$l$k$,(B, $B%f!<(B
! 107: $B%6$,L@<(E*$K$"$k%3%^%s%I$rAw$kI,MW$,$7$P$7$P@8$:$k(B. $B%9%?%C%/%^%7%s%3%^%s(B
! 108: $B%I$O(B 32 bit $B0J2<$N@0?t$G$"$j(B, @code{ox_push_cmd()} $B%3%^%s%I$GAw?.$G$-$k(B.
! 109: $B0J2<$G(B, $BBeI=E*$J%9%?%C%/%^%7%s%3%^%s%I$K$D$$$F2r@b$9$k(B. @b{SM_xxx=yyy}
! 110: $B$G(B, @b{SM_xxx} $B$,(B mnemonic, @b{yyy} $B$,CM$G$"$k(B.
! 111:
! 112: $B0J2<$G(B, $B%9%?%C%/$+$i%G!<%?$r<h$j=P$9$H$O(B, $B%9%?%C%/$N0lHV>e$+$i%G!<%?$r(B
! 113: $B<h$j=|$/$3$H$r8@$&(B.
! 114:
! 115: @table @b
! 116: @item SM_popSerializedLocalObject=258
! 117:
! 118: server $B$,(B @samp{ox_asir} $B$N>l9g$K(B, $BI,$:$7$b(B @b{CMO} $B$GDj5A$5$l$F$$$J$$(B
! 119: $B%*%V%8%'%/%H$r%9%?%C%/$+$i<h$j=P$7(B, $BDL?.O)$KN.$9(B.
! 120:
! 121: @item SM_popCMO=262
! 122:
! 123: @b{CMO} $B%*%V%8%'%/%H$r%9%?%C%/$+$i<h$j=P$7(B, $BDL?.O)$KN.$9(B.
! 124:
! 125: @item SM_popString=263
! 126:
! 127: $B%9%?%C%/$+$i%G!<%?$r<h$j=P$7(B, $B2DFI7A<0$NJ8;zNs$KJQ49$7$FDL?.O)$KN.$9(B.
! 128:
! 129: @item SM_mathcap=264
! 130:
! 131: server $B$N(B mathcap $B$r%9%?%C%/$K@Q$`(B.
! 132:
! 133: @item SM_pops=265
! 134:
! 135: $B%9%?%C%/$+$i<h$j=P$7$?%G!<%?$r8D?t$H$7$F(B, $B$=$N8D?tJ,%9%?%C%/$+$i(B
! 136: $B%G!<%?$r<h$j=|$/(B.
! 137:
! 138: @item SM_setName=266
! 139:
! 140: $B%9%?%C%/$+$i%G!<%?$rJQ?tL>$H$7$F<h$j=P$7(B, $B<!$K<h$j=P$7$?%G!<%?$r$=$N(B
! 141: $BJQ?t$K3d$jEv$F$k(B. $B$3$N3d$jEv$F$O(B, server $B8GM-$N=hM}$H$7$F9T$o$l$k(B.
! 142:
! 143: @item SM_evalName=267
! 144:
! 145: $B%9%?%C%/$+$i<h$j=P$7$?%G!<%?$rJQ?tL>$H$7$F(B, $B$=$NCM$r%9%?%C%/$K:\$;$k(B.
! 146:
! 147: @item SM_executeStringByLocalParser=268
! 148:
! 149: $B%9%?%C%/$+$i<h$j=P$7$?%G!<%?$r(B, server $B8GM-$N(B parser, evaluator $B$G(B
! 150: $B=hM}$7(B, $B7k2L$r%9%?%C%/$K:\$;$k(B.
! 151:
! 152: @item SM_executeFunction=269
! 153:
! 154: $B%9%?%C%/$+$i(B, $B4X?tL>(B, $B0z?t$N8D?t(B, $B8D?tJ,$N0z?t$r<h$j=P$7(B, $B4X?t$r8F$S=P$7(B
! 155: $B7k2L$r%9%?%C%/$K:\$;$k(B.
! 156:
! 157: @item SM_beginBlock=270
! 158: $B%G!<%?%V%m%C%/$N$O$8$^$j(B.
! 159:
! 160: @item SM_endBlock=271
! 161: $B%G!<%?%V%m%C%/$N=*$j(B.
! 162:
! 163: @item SM_shutdown=272
! 164:
! 165: server $B$H$N8r?.$r@ZCG$7(B, server $B$r=*N;$5$;$k(B.
! 166:
! 167: @item SM_setMathcap=273
! 168:
! 169: $B%9%?%C%/$N%G!<%?$r(B client $B$N(B mathcap $B$H$7$F(B, server $B$KEPO?$rMW5a$9$k(B.
! 170:
! 171: @item SM_getsp=275
! 172:
! 173: $B8=:_%9%?%C%/$K@Q$^$l$F$$$k%G!<%?$N?t$r%9%?%C%/$K:\$;$k(B.
! 174:
! 175: @item SM_dupErrors=276
! 176:
! 177: $B8=:_%9%?%C%/$K@Q$^$l$F$$$k%*%V%8%'%/%H$NFb(B, $B%(%i!<%*%V%8%'%/%H$N$_(B
! 178: $B$r%j%9%H$K$7$F(B, $B%9%?%C%/$K:\$;$k(B.
! 179:
! 180: @item SM_nop=300
! 181:
! 182: $B$J$K$b$7$J$$(B.
! 183: @end table
! 184:
! 185: @node $B%G%P%C%0(B,,, $BJ,;67W;;(B
! 186: @section $B%G%P%C%0(B
! 187:
! 188: $BJ,;67W;;$K$*$$$F$O(B, $B0lHL$K%G%P%C%0$,:$Fq$H$J$k(B. @samp{ox_asir} $B$K(B
! 189: $B$*$$$F$O(B, $B%G%P%C%0$N$?$a$N$$$/$D$+$N5!G=$rDs6!$7$F$$$k(B.
! 190:
! 191: @menu
! 192: * $B%(%i!<%*%V%8%'%/%H(B::
! 193: * $B%j%;%C%H(B::
! 194: * $B%G%P%C%0MQ%]%C%W%"%C%W%&%#%s%I%&(B::
! 195: @end menu
! 196:
! 197: @node $B%(%i!<%*%V%8%'%/%H(B,,, $B%G%P%C%0(B
! 198: @subsection $B%(%i!<%*%V%8%'%/%H(B
! 199:
! 200: @b{Open XM} server $B$,<B9TCf$K%(%i!<$r5/$3$7$?>l9g(B, $B7k2L$N$+$o$j$K(B
! 201: @b{CMO} $B%(%i!<%*%V%8%'%/%H$r%9%?%C%/$K@Q$`(B. $B%(%i!<%*%V%8%'%/%H$O(B, $BBP1~$9$k(B
! 202: @b{SM} $B%3%^%s%I$N%7%j%"%kHV9f$H(B, $B%(%i!<%a%C%;!<%8$+$i$J$j(B, $B$=$l$K$h$C$F(B
! 203: $B$I$N(B @b{SM} $B%3%^%s%I$,$I$N$h$&$J%(%i!<$r5/$3$7$?$,$"$kDxEYH=L@$9$k(B.
! 204:
! 205: @example
! 206: [340] ox_launch();
! 207: 0
! 208: [341] ox_rpc(0,"fctr",1.2*x);
! 209: 0
! 210: [342] ox_pop_cmo(0);
! 211: error([8,fctrp : invalid argument])
! 212: @end example
! 213:
! 214: @node $B%j%;%C%H(B,,, $B%G%P%C%0(B
! 215:
! 216: @code{ox_reset()} $B$O8=:_<B9TCf$N(B server $B$r%j%;%C%H$7$F(B, $B%3%^%s%I<u$1IU$1(B
! 217: $B>uBV$KLa$9(B. $B$3$N5!G=$O(B, $BDL>o$N(B @b{Asir} $B%;%C%7%g%s$K$*$1$k%-!<%\!<%I3d$j9~$_(B
! 218: $B$H$[$\F1MM$K(B, @b{Open XM} server $B$r%j%;%C%H$G$-$k(B. $B$^$?(B, $B2?$i$+$N860x$G(B,
! 219: $BDL?.O)$N%G!<%?$,:\$C$?$^$^$N>uBV$G(B @code{ox_rpc()} $B$J$I$r<B9T$9$k$H(B,
! 220: @code{ox_pop_cmo()} $B$J$I(B, $B%9%?%C%/$+$i$N<h$j=P$7$H(B, $B<B:]$KFI$^$l$k%G!<%?(B
! 221: $B$NBP1~$,IT@5$K$J$k(B. $B$=$N$h$&$J>l9g$K$bM-8z$G$"$k(B.
! 222:
! 223: @subsection $B%j%;%C%H(B
! 224:
! 225: @node $B%G%P%C%0MQ%]%C%W%"%C%W%&%#%s%I%&(B,,, $B%G%P%C%0(B
! 226: @subsection $B%G%P%C%0MQ%]%C%W%"%C%W%&%#%s%I%&(B
! 227:
! 228: server $B$K$O(B, client $B$K$*$1$k%-!<%\!<%I$KAjEv$9$kF~NO5!G=$,$J$$$?$a(B,
! 229: server $BB&$GF0:n$7$F$$$k%f!<%68@8l%W%m%0%i%`$N%G%P%C%0$,:$Fq$K$J$k(B. $B$3$N(B
! 230: $B$?$a(B, server $BB&$G$N%f!<%68@8l%W%m%0%i%`<B9TCf$N%(%i!<$*$h$S(B, client $B$+$i(B
! 231: $B$N(B @code{ox_rpc(@var{id},"debug")} $B<B9T$K$h$j(B, server $B$K%G%P%C%0%3%^%s%I(B
! 232: $B$rF~NO$9$k$?$a$N>.$5$J%&%#%s%I%&$,%]%C%W%"%C%W$9$k(B. $B$3$N%&%#%s%I%&$+$i$N(B
! 233: $BF~NO$KBP$9$k=PNO$O(B, log $BMQ$N(B @samp{xterm} $B$KI=<($5$l$k(B. $B$3$N%&%#%s%I%&$r(B
! 234: $BJD$8$k$K$O(B, @code{quit} $B$rF~NO$9$l$P$h$$(B.
! 235:
! 236: @node $BJ,;67W;;$K4X$9$k4X?t(B,,, $BJ,;67W;;(B
! 237: @section $BJ,;67W;;$K4X$9$k4X?t(B
! 238:
! 239: @menu
! 240: * ox_launch ox_launch_nox ox_shutdown::
! 241: * ox_launch_generic::
! 242: * ox_asir::
! 243: * ox_rpc ox_cmo_rpc ox_execute_string::
! 244: * ox_push_cmo ox_push_local::
! 245: * ox_pop_cmo ox_pop_local::
! 246: * ox_push_cmd ox_sync::
! 247: * ox_get::
! 248: * ox_pops::
! 249: * ox_reset register_handler::
! 250: * ox_select::
! 251: * ox_flush::
! 252: * ox_get_serverinfo::
! 253: * generate_port try_bind_listen try_connect try_accept register_server::
! 254: * ifplot conplot plot plotover::
! 255: @end menu
! 256:
! 257: @node ox_launch ox_launch_nox ox_shutdown,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 258: @subsection @code{ox_launch}, @code{ox_launch_nox}, @code{ox_shutdown}
! 259: @findex ox_launch
! 260: @findex ox_launch_nox
! 261: @findex ox_shutdown
! 262:
! 263: @table @t
! 264: @item ox_launch([@var{host}[,@var{dir}],@var{command}])
! 265: @itemx ox_launch_nox([@var{host}[,@var{dir}],@var{command}])
! 266: :: $B1s3V%W%m%;%9$N5/F0$*$h$SDL?.$r3+;O$9$k(B.
! 267: @item ox_shutdown(@var{id})
! 268: :: $B1s3V%W%m%;%9$r=*N;$5$;(B, $BDL?.$r=*N;$9$k(B.
! 269: @end table
! 270:
! 271: @table @var
! 272: @item return
! 273: $B@0?t(B
! 274: @item host
! 275: $BJ8;zNs$^$?$O(B 0
! 276: @item dir, command
! 277: $BJ8;zNs(B
! 278: @item id
! 279: $B@0?t(B
! 280: @end table
! 281:
! 282: @itemize @bullet
! 283: @item
! 284: @code{ox_launch()} $B$O(B, $B%[%9%H(B @var{host} $B>e$G%3%^%s%I(B @var{command} $B$r5/F0$7(B,
! 285: $B$3$N%W%m%;%9$HDL?.$r3+;O$9$k(B.
! 286: $B0z?t$,(B 3 $B$D$N>l9g(B, @var{host} $B>e$G(B,
! 287: @var{dir} $B$K$"$k(B @samp{ox_launch} $B$H$$$&%5!<%P5/F0MQ%W%m%0%i%`$rN)$A>e$2$k(B.
! 288: @samp{ox_launch} $B$O(B @var{command} $B$r5/F0$9$k(B.
! 289: @var{host} $B$,(B 0 $B$N;~(B, @b{Asir} $B$,F0:n$7$F$$$k(B
! 290: $B%^%7%s>e$G%3%^%s%I$r5/F0$9$k(B.
! 291: $BL50z?t$N>l9g(B, @var{host} $B$O(B 0, @var{dir} $B$O(B @code{get_rootdir()}
! 292: $B$GJV$5$l$k%G%#%l%/%H%j(B, @var{command} $B$OF1$8%G%#%l%/%H%j$N(B @samp{ox_asir}
! 293: $B$r0UL#$9$k(B.
! 294: @item
! 295: @var{host} $B$,(B 0, $B$9$J$o$A%5!<%P$r(B local $B$K5/F0$9$k>l9g$K$O(B, @var{dir}
! 296: $B$r>JN,$G$-$k(B. $B$3$N>l9g(B, @var{dir} $B$O(B @code{get_rootdir()} $B$GJV$5$l$k(B
! 297: $B%G%#%l%/%H%j$H$J$k(B.
! 298: @item
! 299: @var{command} $B$,(B @samp{/} $B$G;O$^$kJ8;zNs$N>l9g(B, $B@dBP%Q%9$H2r<a$5$l$k(B.
! 300: $B$=$l0J30$N>l9g(B, @var{dir} $B$+$i$NAjBP%Q%9$H2r<a$5$l$k(B.
! 301: @item
! 302: UNIX $BHG$K$*$$$F$O(B, @code{ox_launch()} $B$O(B, @var{command} $B$NI8=`=PNO(B, $BI8=`(B
! 303: $B%(%i!<=PNO$rI=<($9$k$?$a$N(B @samp{xterm} $B$r5/F0$9$k(B.
! 304: @code{ox_launch_nox()} $B$O(B, @code{X} $B$J$7$N4D6-$N>l9g(B, $B$"$k$$$O(B @samp{xterm}
! 305: $B$r5/F0$;$:$K%5!<%P$rN)$A>e$2$k>l9g$KMQ$$$k(B. $B$3$N>l9g(B,
! 306: @var{command} $B$N=PNO$O(B @samp{/dev/null} $B$K@\B3$5$l$k(B.
! 307: @code{ox_launch()} $B$N>l9g$G$b(B, $B4D6-JQ?t(B @code{DISPLAY} $B$,@_Dj$5$l$F$$$J$$(B
! 308: $B>l9g$K$O(B, @code{ox_launch_nox()} $B$HF1$8F0:n$r$9$k(B.
! 309:
! 310: @item
! 311: $BJV$5$l$k@0?t$ODL?.$N$?$a$N<1JL;R$H$J$k(B.
! 312:
! 313: @item
! 314: @b{Asir} $B$HDL?.$9$k%W%m%;%9$OF10l$N%^%7%s>e$GF0:n$7$F$$$kI,MW$O$J$$(B. $B$^(B
! 315: $B$?(B, $BDL?.$K$*$1$k%P%$%H%*!<%@$O(B server, client $B4V$G$N:G=i$N(B negotiation
! 316: $B$G7h$^$k$?$a(B, $BAj<j@h$N%^%7%s$H%P%$%H%*!<%@$,0[$J$C$F$$$F$b9=$o$J$$(B.
! 317:
! 318: @item
! 319: @var{host} $B$K%^%7%sL>$r;XDj$9$k>l9g(B, $B0J2<$N=`Hw$,I,MW$G$"$k(B.
! 320: $B$3$3$G(B, @b{Asir} $B$NF0$$$F$$$k%[%9%H$r(B @code{A}, $BDL?.Aj<j$N%W%m%;%9(B
! 321: $B$,5/F0$5$l$k%[%9%H$r(B @code{B} $B$H$9$k(B.
! 322:
! 323: @enumerate
! 324: @item
! 325: $B%[%9%H(B @code{B} $B$N(B @code{csh} $B$N%5!<%A%Q%9$K5/F0$5$l$k%W%m%0%i%`(B
! 326: $B$N$"$k%G%#%l%/%H%j$r$$$l$k(B. $B%W%m%0%i%`$O(B @code{rsh} $B$G5/F0$5$l$k(B. $B$7$?(B
! 327: $B$,$C$F(B, $B%[%9%H(B @code{B} $B$N%5!<%A%Q%9$K(B $B$=$N%W%m%0%i%`$,F~$C$F$$$J$$>l(B
! 328: $B9g$K$O5/F0$G$-$J$$(B. $B$3$N>l9g@dBP%Q%9$rM?$($k$+(B, @samp{~/.cshrc} $B$N%5!<(B
! 329: $B%A%Q%9$K$=$N%W%m%0%i%`$N$"$k%G%#%l%/%H%j$rDI2C$9$kI,MW$,$"$k(B. $B$=$N:](B,
! 330: $BAj<j@h%[%9%H$K$*$1$k%G%#%l%/%H%j$G$"$k$3$H$rK:$l$J$$$h$&$K$9$k$3$H(B.
! 331:
! 332: @item
! 333: $B%[%9%H(B @code{B} $B$N(B @samp{~/.rhosts} $B$K(B, $B%[%9%H(B @code{A} $B$N%[%9%H(B
! 334: $BL>$rEPO?$9$k(B.
! 335:
! 336: @item
! 337: @samp{ox_plot} $B$J$I(B, @code{X} $B$H$N%3%M%/%7%g%s$bMQ$$$i$l$k>l9g(B,
! 338: @code{Xserver} $B$KBP$7(B, $BI,MW$J%[%9%H$r(B authorize $B$5$;$k(B.
! 339: @code{xhost} $B$GI,MW$J%[%9%HL>$rDI2C$9$l$P$h$$(B.
! 340:
! 341: @item
! 342: @var{command} $B$K$h$C$F$O(B, $B%9%?%C%/$rBgNL$K;HMQ$9$k(B
! 343: $B$b$N$b$"$k$?$a(B, @samp{.cshrc} $B$G%9%?%C%/%5%$%:$rBg$-$a(B (16MB $BDxEY(B) $B$K(B
! 344: $B;XDj$7$F$*$/$N$,0BA4$G$"$k(B. $B%9%?%C%/%5%$%:$O(B @code{limit stacksize 16m}
! 345: $B$J$I$H;XDj$9$k(B.
! 346: @end enumerate
! 347:
! 348: @item
! 349: @var{command} $B$,(B, X $B>e$K%&%$%s%I%&$r3+$1$k>l9g(B,
! 350: @var{display}$B$,;XDj$5$l$l$P$=$NJ8;zNs$r(B, $B>JN,;~$K$O4D6-JQ?t(B
! 351: @code{DISPLAY} $B$NCM$rMQ$$$k(B.
! 352:
! 353: @item
! 354: @code{ox_shutdown()} $B$O<1JL;R(B @var{id} $B$KBP1~$9$k1s3V%W%m%;%9(B
! 355: $B$r=*N;$5$;$k(B.
! 356:
! 357: @item
! 358: @b{Asir} $B$,@5>o$7$?>l9g$K$OA4$F$NF~=PNO%9%H%j!<%`$O<+F0E*$KJD$8$i$l(B,
! 359: $B5/F0$5$l$F$$$k%W%m%;%9$OA4$F=*N;$9$k$,(B, $B0[>o=*N;$7$?>l9g(B, $B1s3V%W%m%;%9(B
! 360: $B$,=*N;$7$J$$>l9g$b$"$k(B. @b{Asir} $B$,0[>o=*N;$7$?>l9g(B, $B1s3V%W%m%;%9$r(B
! 361: $B5/F0$7$?%^%7%s>e$G(B @code{ps} $B$J$I$r5/F0$7$F(B, $B$b$7(B @b{Asir} $B$+$i5/F0(B
! 362: $B$7$?%W%m%;%9$,;D$C$F$$$k>l9g(B, @code{kill} $B$9$kI,MW$,$"$k(B.
! 363:
! 364: @item
! 365: log $BI=<(MQ(B @samp{xterm} $B$O(B @samp{-name ox_term} $B%*%W%7%g%s$G5/F0$5$l$k(B.
! 366: $B$h$C$F(B, @samp{ox_term} $B$J$k%j%=!<%9L>$KBP$7$F(B @samp{xterm} $B$N%j%=!<%9@_Dj(B
! 367: $B$r9T$($P(B, log $BMQ(B @samp{xterm} $B$N5sF0$N$_$rJQ$($k$3$H$,$G$-$k(B.
! 368: $BNc$($P(B,
! 369: @example
! 370: ox_xterm*iconic:on
! 371: ox_xterm*scrollBar:on
! 372: ox_xterm*saveLines:1000
! 373: @end example
! 374: $B$K$h$j(B, icon $B$G5/F0(B, scrollbar $B$D$-(B, scrollbar $B$G;2>H$G$-$k9T?t(B
! 375: $B$,:GBg(B 1000 $B9T(B, $B$H$$$&;XDj$,$G$-$k(B.
! 376: @end itemize
! 377:
! 378: @example
! 379: [219] ox_launch();
! 380: 0
! 381: [220] ox_rpc(0,"fctr",x^10-y^10);
! 382: 0
! 383: [221] ox_pop_local(0);
! 384: [[1,1],[x^4+y*x^3+y^2*x^2+y^3*x+y^4,1],
! 385: [x^4-y*x^3+y^2*x^2-y^3*x+y^4,1],[x-y,1],[x+y,1]]
! 386: [222] ox_shutdown(0);
! 387: 0
! 388: @end example
! 389:
! 390: @table @t
! 391: @item $B;2>H(B
! 392: @code{ox_rpc}, @code{ox_pop_local},
! 393: @code{ifplot}, @code{conplot}, @code{plot}
! 394: @end table
! 395:
! 396: @node ox_launch_generic,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 397: @subsection @code{ox_launch_generic}
! 398: @findex ox_launch_generic
! 399:
! 400: @table @t
! 401: @item ox_launch_generic(@var{host},@var{launch},@var{server},@var{use_unix},@var{use_ssh},@var{use_x},@var{conn_to_serv})
! 402: :: $B1s3V%W%m%;%9$N5/F0$*$h$SDL?.$r3+;O$9$k(B.
! 403: @end table
! 404:
! 405: @table @var
! 406: @item return
! 407: $B@0?t(B
! 408: @item host
! 409: $BJ8;zNs$^$?$O(B 0
! 410: @item launcher, server
! 411: $BJ8;zNs(B
! 412: @item use_unix, use_ssh, use_x, conn_to_serv
! 413: $B@0?t(B
! 414: @end table
! 415:
! 416: @itemize @bullet
! 417: @item
! 418: @code{ox_launch_generic()} $B$O(B,
! 419: $B%[%9%H(B @var{host} $B>e$G(B, $B%3%s%H%m!<%k%W%m%;%9(B @var{launch} $B$*$h$S(B
! 420: $B%5!<%P%W%m%;%9(B @var{server} $B$r5/F0$9$k(B. $B$=$NB>$N0z?t$O(B, $B;HMQ$9$k(B
! 421: protocol $B$N<oN`(B, X $B$N;HMQ(B/$BIT;HMQ(B, rsh/ssh $B$K$h$k%W%m%;%95/F0(B, connect
! 422: $BJ}K!$N;XDj$J$I$r9T$&%9%$%C%A$G$"$k(B.
! 423: @item
! 424: @var{host} $B$,(B 0 $B$N>l9g(B, @b{Asir} $B$,F0:n$7$F$$$k%^%7%s>e$K(B, @var{launch},
! 425: @var{server} $B$rN)$A>e$2$k(B. $B$3$N>l9g(B, @var{use_unix} $B$NCM$K$+$+$o$i$:(B,
! 426: UNIX internal protocol $B$,MQ$$$i$l$k(B.
! 427: @item
! 428: @var{use_unix} $B$,(B 1 $B$N>l9g(B, UNIX internal protocol $B$rMQ$$$k(B. 0 $B$N>l9g(B,
! 429: Internet protocol $B$rMQ$$$k(B.
! 430: @item
! 431: @var{use_ssh} $B$,(B 1 $B$N>l9g(B, @samp{ssh} (Secure Shell) $B$K$h$j%3%s%H%m!<%k(B,
! 432: $B%5!<%P%W%m%;%9$rN)$A>e$2$k(B. $BI,MW$K1~$8$F%Q%9%o!<%I$rF~NO$9$kI,MW$,$"$k(B.
! 433: $BAj<j@h$G(B @samp{sshd} $B$,F0$$$F$$$J$$>l9g(B, $B<+F0E*$K(B @samp{rsh} $B$,MQ$$$i$l$k$,(B,
! 434: $B%Q%9%o!<%I$,I,MW$H$J$k>l9g$K$O(B, $B$=$N>l$G5/F0$K<:GT$9$k(B.
! 435: @item
! 436: @var{use_x} $B$,(B 1 $B$N>l9g(B, X $B>e$G$NF0:n$r2>Dj$7(B, $B@_Dj$5$l$F$$$k(B DISPLAY$BJQ(B
! 437: $B?t$rMQ$$$F(B, log $BI=<(MQ(B @samp{xterm} $B$N$b$H$G(B @var{server} $B$,5/F0$5$l(B
! 438: $B$k(B. DISPLAY $BJQ?t$,%;%C%H$5$l$F$$$J$$>l9g$K$O(B, $B<+F0E*$K(B X $B$J$7$N@_Dj$H$J(B
! 439: $B$k(B. DISPLAY $B$,ITE,@Z$K%;%C%H$5$l$F$$$k>l9g$K$O(B, $B%3%s%H%m!<%k(B, $B%5!<%P$,%O(B
! 440: $B%s%0$9$k$N$GMWCm0U$G$"$k(B.
! 441: @item
! 442: @var{conn_to_serv} $B$,(B 1 $B$N>l9g(B, @b{Asir} (client) $B$,@8@.$7$?%]!<%H$K(B
! 443: $BBP$7(B, client $B$,(B bind,listen $B$7(B, $B5/F0$5$l$?%W%m%;%9$,(B connect $B$9$k(B.
! 444: @var{conn_to_serv} $B$,(B 0 $B$N>l9g(B, $B5/F0$5$l$?%W%m%;%9$,(B bind, listen $B$7(B,
! 445: client $B$,(B connect $B$9$k(B.
! 446: @end itemize
! 447:
! 448: @example
! 449: [342] LIB=get_rootdir();
! 450: /export/home/noro/ca/Kobe/build/OpenXM/lib/asir
! 451: [343] ox_launch_generic(0,LIB+"/ox_launch",LIB+"/ox_asir",0,0,0,0);
! 452: 1
! 453: [344] ox_launch_generic(0,LIB+"/ox_launch",LIB+"/ox_asir",1,0,0,0);
! 454: 2
! 455: [345] ox_launch_generic(0,LIB+"/ox_launch",LIB+"/ox_asir",1,1,0,0);
! 456: 3
! 457: [346] ox_launch_generic(0,LIB+"/ox_launch",LIB+"/ox_asir",1,1,1,0);
! 458: 4
! 459: [347] ox_launch_generic(0,LIB+"/ox_launch",LIB+"/ox_asir",1,1,1,1);
! 460: 5
! 461: [348] ox_launch_generic(0,LIB+"/ox_launch",LIB+"/ox_asir",1,1,0,1);
! 462: 6
! 463: @end example
! 464:
! 465: @table @t
! 466: @item $B;2>H(B
! 467: @code{ox_launch}, @code{ox_launch_generic}
! 468: @end table
! 469:
! 470: @node generate_port try_bind_listen try_connect try_accept register_server,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 471: @subsection @code{generate_port}, @code{try_bind_listen}, @code{try_connect}, @code{try_accept}, @code{register_server}
! 472: @findex generate_port
! 473: @findex try_bind_listen
! 474: @findex try_connect
! 475: @findex try_accept
! 476: @findex register_server
! 477:
! 478: @table @t
! 479: @item generate_port([@var{use_unix}])
! 480: :: port $B$N@8@.(B
! 481: @itemx try_bind_listen(@var{port})
! 482: :: port $B$KBP$7$F(B bind, listen
! 483: @itemx try_connect(@var{host},@var{port})
! 484: :: port $B$KBP$7$F(B connect
! 485: @itemx try_accept(@var{socket},@var{port})
! 486: :: connect $BMW5a$r(B accept
! 487: @itemx register_server(@var{control_socket},@var{control_port},@var{server_socket},@var{server_port})
! 488: :: connection $B$N@.N)$7$?(B control socket, server socket $B$NEPO?(B
! 489: @end table
! 490:
! 491: @table @var
! 492: @item return
! 493: @code{generate_port()} $B$N$_@0?t$^$?$OJ8;zNs(B. $B$=$NB>$O@0?t(B.
! 494: @item use_unix
! 495: 0 $B$^$?$O(B 1
! 496: @item host
! 497: $BJ8;zNs(B
! 498: @item port,control_port,server_port
! 499: $B@0?t$^$?$OJ8;zNs(B
! 500: @item socket,control_socket,server_socket
! 501: $B@0?t(B
! 502: @end table
! 503:
! 504: @itemize @bullet
! 505: @item
! 506: $B$3$l$i$N4X?t$O(B, $B1s3V%W%m%;%9$HDL?.$r@.N)$5$;$k$?$a$N%W%j%_%F%#%V$G$"$k(B.
! 507: @item
! 508: @code{generate_port()} $B$ODL?.$N$?$a$N(B port $B$r@8@.$9$k(B. $BL50z?t$"$k$$$O(B
! 509: $B0z?t$,(B 0 $B$N>l9g(B, Internet domain $B$N(B socket $B$N$?$a$N(B port $BHV9f(B, $B$=$l(B
! 510: $B0J30$N>l9g$K$O(B, UNIX domain (host-internal protocol) $B$N$?$a$N(B, $B%U%!%$%kL>(B
! 511: $B$r@8@.$9$k(B. port $BHV9f$O(B random $B$K@8@.$5$l$k$,(B, $B$=$N(B port $B$,;HMQCf$G$J$$(B
! 512: $BJ]>Z$O$J$$(B.
! 513: @item
! 514: @code{try_bind_listen()} $B$O(B, $BM?$($i$l$?(B port $B$KBP$7(B, $B$=$N(B protocol $B$K(B
! 515: $BBP1~$7$?(B socket $B$r@8@.$7(B, bind, listen $B$9$k(B. $B<:GT$7$?>l9g(B, -1 $B$,JV$k(B.
! 516: @item
! 517: @code{try_connect()} $B$O(B, $B%[%9%H(B @var{host} $B$N(B port @var{port} $B$KBP$7(B
! 518: connect $B$r;n$_$k(B. $B<:GT$7$?>l9g(B -1 $B$,JV$k(B.
! 519: @item
! 520: @code{try_accept()} $B$O(B, @var{socket} $B$KBP$9$k(B connect $BMW5a$r(B accept
! 521: $B$7(B, $B?7$?$K@8@.$5$l$?(B socket $B$rJV$9(B. $B<:GT$7$?>l9g(B -1 $B$,JV$k(B.
! 522: $B$$$:$l$N>l9g$K$b(B, @var{socket} $B$O<+F0E*$K(B close $B$5$l$k(B.
! 523: $B0z?t(B @var{port} $B$O(B, @var{socket} $B$N(B protocol $B$rH=JL$9$k$?$a$KM?$($k(B.
! 524: @item
! 525: @code{register_server()} $B$O(B, control, server $B$=$l$>$l$N(B socket $B$r(B
! 526: $B0lAH$K$7$F(B, server list $B$KEPO?$7(B, @code{ox_push_cmo()} $B$J$I$GMQ$$$k(B
! 527: $B%W%m%;%9<1JL;R$rJV$9(B.
! 528: @item
! 529: $B1s3V%W%m%;%9$N5/F0$O(B, @code{shell()} $B$^$?$O<jF0$G9T$&(B.
! 530: @end itemize
! 531:
! 532: @example
! 533: [340] CPort=generate_port();
! 534: 39896
! 535: [341] SPort=generate_port();
! 536: 37222
! 537: [342] CSocket=try_bind_listen(CPort);
! 538: 3
! 539: [343] SSocket=try_bind_listen(SPort);
! 540: 5
! 541:
! 542: /*
! 543: $B$3$3$G(B, ox_launch $B$r5/F0(B :
! 544: % ox_launch "127.1" 0 39716 37043 ox_asir "shio:0"
! 545: */
! 546:
! 547: [344] CSocket=try_accept(CSocket,CPort);
! 548: 6
! 549: [345] SSocket=try_accept(SSocket,SPort);
! 550: 3
! 551: [346] register_server(CSocket,CPort,SSocket,SPort);
! 552: 0
! 553: @end example
! 554:
! 555: @table @t
! 556: @item $B;2>H(B
! 557: @code{ox_launch}, @code{ox_launch_generic}, @code{shell}, @code{ox_push_cmo}
! 558: @end table
! 559:
! 560: @node ox_asir,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 561: @subsection @samp{ox_asir}
! 562:
! 563: $B$3$N@a$NH!?t$O(B, UNIX $B>e$G(B $BJ#?t$N%^%7%s>e$G(B @code{Asir} $B$rJ#?t5/F0$7$F(B
! 564: $BJ,;67W;;$r9T$&$?$a$N$b$N$G$"$k(B. $B0J2<$K=R$Y$k5!G=$rMQ$$$k$?$a$K$O(B, $B$"$i(B
! 565: $B$+$8$a3F%^%7%s>e$K(B @samp{ox_asir} $B$r(B @code{ox_launch()} $B$K$h$j5/F0$7$F$*$/(B
! 566: $BI,MW$,$"$k(B.
! 567:
! 568: @example
! 569: [5] ox_launch();
! 570: 0
! 571: @end example
! 572:
! 573: @example
! 574: [5] ox_launch_nox("127.0.0.1","/usr/local/lib/asir","/usr/local/lib/asir/ox_asir");
! 575: 0
! 576: @end example
! 577:
! 578: @noindent
! 579: $B8e<T$N>l9g$*$h$S4D6-JQ?t(B DISPLAY $B$,@_Dj$5$l$F$$$J$$>l9g(B,
! 580: @samp{xterm}$B$O5/F0$5$l$:(B, @samp{ox_asir} $B$K$h$j5/F0$5$l$k(B @code{Asir} $B$N(B
! 581: $B=PNO$O(B @samp{/dev/null} $B$K@\B3$5$l$k(B. $B%G%P%C%0$,40N;$7(B, $B;R%W%m%;%9$NI=<((B
! 582: $B$9$k%a%C%;!<%8$r8+$kI,MW$,$J$$>l9g$K$O(B @code{ox_launch_nox()} $B$rMQ$$$l$P(B
! 583: $B$h$$(B.
! 584:
! 585: @example
! 586: [7] RemoteLibDir = "/usr/local/lib/asir/"$
! 587: [8] Machines = ["sumire","rokkaku","genkotsu","shinpuku"];
! 588: [sumire,rokkaku,genkotsu,shinpuku]
! 589: [9] Servers = map(ox_launch,Machines,RemoteLibDir,RemoteLibDir+"ox_asir");
! 590: [0,1,2,3]
! 591: @end example
! 592:
! 593: @table @t
! 594: @item $B;2>H(B
! 595: @code{ox_launch}, @code{ox_launch_nox}, @code{ox_shutdown}
! 596: @end table
! 597:
! 598: @node ox_rpc ox_cmo_rpc ox_execute_string,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 599: @subsection @code{ox_rpc}, @code{ox_cmo_rpc}, @code{ox_execute_string}
! 600: @findex ox_rpc
! 601: @findex ox_cmo_rpc
! 602: @findex ox_execute_string
! 603:
! 604: @table @t
! 605: @item ox_rpc(@var{number},@code{"@var{func}"},@var{arg0},...)
! 606: @itemx ox_cmo_rpc(@var{number},@code{"@var{func}"},@var{arg0},...)
! 607: @itemx ox_execute_string(@var{number},@code{"@var{command}"},...)
! 608: :: $B%W%m%;%9$NH!?t8F$S=P$7(B
! 609: @end table
! 610:
! 611: @table @var
! 612: @item return
! 613: 0
! 614: @item number
! 615: $B?t(B ($B%W%m%;%9<1JL;R(B)
! 616: @item func
! 617: $BH!?tL>(B
! 618: @item command
! 619: $BJ8;zNs(B
! 620: @item arg0, arg1, ...
! 621: $BG$0U(B ($B0z?t(B)
! 622: @end table
! 623:
! 624: @itemize @bullet
! 625: @item
! 626: $B<1JL;R(B @var{number} $B$N%W%m%;%9$NH!?t$r8F$S=P$9(B.
! 627: @item
! 628: $BH!?t$N7W;;=*N;$rBT$?$:(B, $BD>$A$K(B 0 $B$rJV$9(B.
! 629: @item
! 630: @code{ox_rpc()} $B$O(B, $B%5!<%P$,(B @samp{ox_asir} $B$N>l9g$N$_MQ$$$k$3$H$,$G$-$k(B.
! 631: $B$=$l0J30$N>l9g$O(B, @code{ox_cmo_rpc()} $B$rMQ$$$k(B.
! 632: @item
! 633: $BH!?t$,JV$9CM$O(B @code{ox_pop_local()}, @code{ox_pop_cmo()} $B$K$h$j<h$j=P$9(B.
! 634: @item
! 635: $B%5!<%P$,(B @samp{ox_asir} $B0J30$N$b$N(B ($BNc$($P(B Kan $B%5!<%P(B @samp{ox_sm1}$B$J$I(B)
! 636: $B$N>l9g$K$O(B, @b{Open_XM} $B%W%m%H%3%k$G%5%]!<%H$5$l$F$$$k%G!<%?$N$_$r(B
! 637: $BAw$k$3$H$,$G$-$k(B.
! 638: @item
! 639: @code{ox_execute_string} $B$O(B, $BAw$C$?J8;zNs(B @var{command} $B$r%5!<%P$,<+$i$N(B
! 640: $B%f!<%68@8l%Q!<%6$G2r@O$7(B, $BI>2A$7$?7k2L$r%5!<%P$N%9%?%C%/$KCV$/$h$&$K(B
! 641: $B;X<($9$k(B.
! 642: @end itemize
! 643:
! 644: @example
! 645: [234] ox_cmo_rpc(0,"dp_ht",dp_ptod((x+y)^10,[x,y]));
! 646: 0
! 647: [235] ox_pop_cmo(0);
! 648: (1)*<<10,0>>
! 649: [236] ox_execute_string(0,"12345 % 678;");
! 650: 0
! 651: [237] ox_pop_cmo(0);
! 652: 141
! 653: @end example
! 654:
! 655: @table @t
! 656: @item $B;2>H(B
! 657: @code{ox_pop_local}, @code{ox_pop_cmo}
! 658: @end table
! 659:
! 660: @node ox_reset register_handler,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 661: @subsection @code{ox_reset},@code{register_handler}
! 662: @findex ox_reset
! 663: @findex register_handler
! 664:
! 665: @table @t
! 666: @item ox_reset(@var{number})
! 667: :: $B%W%m%;%9$N%j%;%C%H(B
! 668: @item register_handler(@var{func})
! 669: :: $B%W%m%;%9$N%j%;%C%H$N$?$a$N4X?tEPO?(B
! 670: @end table
! 671:
! 672: @table @var
! 673: @item return
! 674: 1
! 675: @item number
! 676: $B?t(B ($B%W%m%;%9<1JL;R(B)
! 677: @item func
! 678: $B4X?t;R$^$?$O(B 0
! 679: @end table
! 680:
! 681: @itemize @bullet
! 682: @item
! 683: @code{ox_reset()} $B$O(B, $B<1JL;R(B @var{number} $B$N%W%m%;%9$r%j%;%C%H$7(B, $B%3%^%s(B
! 684: $B%I<u$1IU$1>uBV$K$9$k(B.
! 685: @item
! 686: $B$=$N%W%m%;%9$,4{$K=q$-=P$7$?(B, $B$"$k$$$O8=:_=q$-=P$7Cf$N%G!<%?$,$"$k>l9g(B,
! 687: $B$=$l$rA4ItFI$_=P$7(B, $B=PNO%P%C%U%!$r6u$K$7$?;~E@$GLa$k(B.
! 688: @item
! 689: $B;R%W%m%;%9$,(B RUN $B>uBV$N>l9g$G$b(B, $B3d$j9~$_$K$h$j6/@)E*$K7W;;$r=*N;$5$;$k(B.
! 690: @item
! 691: $BJ,;67W;;$r9T$&H!?t$N@hF,$G(B, $B;HMQ$9$k%W%m%;%9$KBP$7$F<B9T$9$k(B. $B$"$k$$$O(B
! 692: $B7W;;ESCf$G$N6/@)CfCG$KMQ$$$k(B.
! 693: @item
! 694: @code{register_handler()} $B$O(B, @kbd{C-c} $B$J$I$K$h$k3d$j9~$_$N:]$K(B,
! 695: @kbd{u} $B$r;XDj$9$k$3$H$G(B, $BL50z?t%f!<%6Dj5A4X?t(B @var{func()} $B$,8F$S=P$5$l$k(B
! 696: $B$h$&$K@_Dj$9$k(B. $B$3$N4X?t$K(B, @code{ox_reset()} $B$r8F$S=P$5$;$k$3$H$G(B,
! 697: $B3d$j9~$_$N:]$K<+F0E*$K(B @b{Open XM} server $B$N%j%;%C%H$r9T$&$3$H$,$G$-$k(B.
! 698: @item
! 699: @var{func} $B$K(B 0 $B$r;XDj$9$k$3$H$G(B, $B@_Dj$r2r=|$G$-$k(B.
! 700: @end itemize
! 701:
! 702: @example
! 703: [10] ox_launch();
! 704: 0
! 705: [11] ox_rpc(0,"fctr",x^100-y^100);
! 706: 0
! 707: [12] ox_reset(0); /* xterm $B$N%&%#%s%I%&$K$O(B usr1 : return to toplevel by SIGUSR1 */
! 708: 1 /* $B$,I=<($5$l$k(B. */
! 709: @end example
! 710:
! 711: @example
! 712: [340] Procs=[ox_launch(),ox_launch()];
! 713: [0,1]
! 714: [341] def reset() @{ extern Procs; map(ox_reset,Procs);@}
! 715: [342] map(ox_rpc,Procs,"fctr",x^100-y^100);
! 716: [0,0]
! 717: [343] register_handler(reset);
! 718: 1
! 719: [344] interrupt ?(q/t/c/d/u/w/?) u
! 720: Abort this computation? (y or n) y
! 721: Calling the registered exception handler...done.
! 722: return to toplevel
! 723: @end example
! 724: @table @t
! 725: @item $B;2>H(B
! 726: @code{ox_rpc}
! 727: @end table
! 728:
! 729: @node ox_push_cmo ox_push_local ,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 730: @subsection @code{ox_push_cmo}, @code{ox_push_local}
! 731: @findex ox_push_cmo
! 732: @findex ox_push_local
! 733:
! 734: @table @t
! 735: @item ox_push_cmo(@var{number},@var{obj})
! 736: @itemx ox_push_local(@var{number},@var{obj})
! 737: :: @var{obj} $B$r<1JL;R(B @var{number} $B$N%W%m%;%9$KAw?.(B
! 738: @end table
! 739:
! 740: @table @var
! 741: @item return
! 742: 0
! 743: @item number
! 744: $B?t(B($B%W%m%;%9<1JL;R(B)
! 745: @item obj
! 746: $B%*%V%8%'%/%H(B
! 747: @end table
! 748:
! 749: @itemize @bullet
! 750: @item $B<1JL;R(B @var{number} $B$N%W%m%;%9$K(B @var{obj} $B$rAw?.$9$k(B.
! 751: @item @code{ox_push_cmo} $B$O(B, Asir $B0J30$N(B @b{Open_XM} $B%5!<%P$KAw?.(B
! 752: $B$9$k:]$KMQ$$$k(B.
! 753: @item @code{ox_push_local} $B$O(B, @samp{ox_asir}, @samp{ox_plot} $B$K(B
! 754: $B%G!<%?$rAw$k>l9g$KMQ$$$k$3$H$,$G$-$k(B.
! 755: @item $B%P%C%U%!$,$$$C$Q$$$K$J$i$J$$8B$j(B, $B$?$@$A$KI|5"$9$k(B.
! 756: @end itemize
! 757:
! 758: @table @t
! 759: @item $B;2>H(B
! 760: @code{ox_rpc}, @code{ox_cmo_rpc}, @code{ox_pop_cmo}, @code{ox_pop_local}
! 761: @end table
! 762:
! 763: @node ox_pop_cmo ox_pop_local ,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 764: @subsection @code{ox_pop_cmo}, @code{ox_pop_local}
! 765: @findex ox_pop_local
! 766: @findex ox_pop_cmo
! 767:
! 768: @table @t
! 769: @item ox_pop_local(@var{number})
! 770: :: $B%W%m%;%9<1JL;R(B @var{number} $B$+$i%G!<%?$r<u?.$9$k(B.
! 771: @end table
! 772:
! 773: @table @var
! 774: @item return
! 775: $B<u?.%G!<%?(B
! 776: @item number
! 777: $B?t(B ($B%W%m%;%9<1JL;R(B)
! 778: @end table
! 779:
! 780: @itemize @bullet
! 781: @item
! 782: $B%W%m%;%9<1JL;R(B @var{number} $B$N%W%m%;%9$+$i%G!<%?$r<u?.$9$k(B.
! 783: @item @code{ox_pop_cmo} $B$O(B, Asir $B0J30$N(B @b{Open_XM} $B%5!<%P$+$i<u?.(B
! 784: $B$9$k:]$KMQ$$$k(B.
! 785: @item @code{ox_pop_local} $B$O(B, @samp{ox_asir}, @samp{ox_plot} $B$+$i(B
! 786: $B%G!<%?$r<u$1<h$k>l9g$KMQ$$$k$3$H$,$G$-$k(B.
! 787: @item $B%5!<%P$,7W;;Cf$N>l9g%V%m%C%/$9$k(B. $B$3$l$rHr$1$k$?$a$K$O(B,
! 788: @code{ox_push_cmd} $B$G(B @code{SM_popCMO} (262) $B$^$?$O(B @code{SM_popSerializedLocalObject} (258) $B$rAw$C$F$*$-(B, @code{ox_select} $B$G%W%m%;%9$,(B ready
! 789: $B$K$J$C$F$$$k$3$H$r3N$+$a$F$+$i(B @code{ox_get} $B$9$l$P$h$$(B.
! 790: @item
! 791:
! 792: @end itemize
! 793:
! 794: @example
! 795: [3] ox_rpc(0,"fctr",x^100-y^100);
! 796: 0
! 797: [4] ox_push_cmd(0,258);
! 798: 0
! 799: [5] ox_select([0]);
! 800: [0]
! 801: [6] ox_get(0);
! 802: [[1,1],[x^2+y^2,1],[x^4-y*x^3+y^2*x^2-y^3*x+y^4,1],...]
! 803: @end example
! 804:
! 805: @table @t
! 806: @item $B;2>H(B
! 807: @code{ox_rpc}, @code{ox_push_cmd}, @code{ox_select}, @code{ox_get}
! 808: @end table
! 809:
! 810: @node ox_push_cmd ox_sync,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 811: @subsection @code{ox_push_cmd}, @code{ox_sync}
! 812: @findex ox_push_cmd
! 813: @findex ox_sync
! 814:
! 815: @table @t
! 816: @item ox_push_cmd(@var{number},@var{command})
! 817: :: $B%W%m%;%9<1JL;R(B @var{number} $B$N%W%m%;%9$K%3%^%s%I(B @var{command} $B$rAw?.$9$k(B.
! 818: @item ox_sync(@var{number})
! 819: :: $B%W%m%;%9<1JL;R(B @var{number} $B$N%W%m%;%9$K(B @b{OX_SYNC_BALL} $B$rAw?.$9$k(B.
! 820: @end table
! 821:
! 822: @table @var
! 823: @item return
! 824: 0
! 825: @item number
! 826: $B?t(B ($B%W%m%;%9<1JL;R(B)
! 827: @item command
! 828: $B?t(B ($B%3%^%s%I<1JL;R(B)
! 829: @end table
! 830:
! 831: @itemize @bullet
! 832: @item
! 833: $B<1JL;R(B @var{number} $B$N%W%m%;%9$K%3%^%s%I$^$?$O(B @b{OX_SYNC_BALL} $B$rAw?.$9$k(B.
! 834: @item
! 835: @b{Open_XM} $B$K$*$$$FAw<u?.%G!<%?$O(B @b{OX_DATA}, @b{OX_COMMAND},
! 836: @b{OX_SYNC_BALL}$B$N(B 3 $B<oN`$KJ,$+$l$k(B. $BDL>o(B, $B%3%^%s%I$O2?$i$+$NA`:n$K(B
! 837: $BIU?o$7$F0EL[$N$&$A$KAw?.$5$l$k$,(B, $B$3$l$r%f!<%6$,8DJL$KAw$j$?$$>l9g$K(B
! 838: $BMQ$$$i$l$k(B.
! 839: @item
! 840: @b{OX_SYNC_BALL} $B$O(B @code{ox_reset} $B$K$h$k7W;;CfCG(B, $BI|5"$N:]$KAw<u?.$5$l$k(B
! 841: $B$,(B, $B$3$l$r8DJL$KAw$j$?$$>l9g$KMQ$$$k(B. $B$J$*(B, $BDL>o>uBV$G$O(B @b{OX_SYNC_BALL}
! 842: $B$OL5;k$5$l$k(B.
! 843: @end itemize
! 844:
! 845: @table @t
! 846: @item $B;2>H(B
! 847: @code{ox_rpc}, @code{ox_cmo_rpc}, @code{ox_reset}
! 848: @end table
! 849:
! 850: @node ox_get,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 851: @subsection @code{ox_get}
! 852: @findex ox_get
! 853:
! 854: @table @t
! 855: @item ox_get(@var{number})
! 856: :: $B%W%m%;%9<1JL;R(B @var{number} $B$N%W%m%;%9$+$i%G!<%?$r<u?.$9$k(B.
! 857: @end table
! 858:
! 859: @table @var
! 860: @item return
! 861: $B<u?.%G!<%?(B
! 862: @item number
! 863: $B?t(B($B%W%m%;%9<1JL;R(B)
! 864: @end table
! 865:
! 866: @itemize @bullet
! 867: @item
! 868: $B%W%m%;%9<1JL;R(B @var{number} $B$N%W%m%;%9$+$i%G!<%?$r<u?.$9$k(B. $B4{$K(B
! 869: $B%9%H%j!<%`>e$K%G!<%?$,$"$k$3$H$r2>Dj$7$F$$$k(B.
! 870: @item
! 871: @code{ox_push_cmd} $B$HAH$_9g$o$;$FMQ$$$k(B.
! 872: @item
! 873: @code{ox_pop_cmo}, @code{ox_pop_local} $B$O(B, @code{ox_push_cmd} $B$H(B
! 874: @code{ox_get} $B$NAH$_9g$o$;$G<B8=$5$l$F$$$k(B.
! 875: @end itemize
! 876:
! 877: @example
! 878: [11] ox_push_cmo(0,123);
! 879: 0
! 880: [12] ox_push_cmd(0,262); /* 262=OX_popCMO */
! 881: 0
! 882: [13] ox_get(0);
! 883: 123
! 884: @end example
! 885:
! 886: @table @t
! 887: @item $B;2>H(B
! 888: @code{ox_pop_cmo}, @code{ox_pop_local}, @code{ox_push_cmd}
! 889: @end table
! 890:
! 891: @node ox_pops,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 892: @subsection @code{ox_pops}
! 893: @findex ox_pops
! 894:
! 895: @table @t
! 896: @item ox_pops(@var{number}[,@var{nitem})
! 897: :: $B%W%m%;%9<1JL;R(B @var{number} $B$N%W%m%;%9$N%9%?%C%/$+$i%G!<%?$r<h$j=|$/(B.
! 898: @end table
! 899:
! 900: @table @var
! 901: @item return
! 902: 0
! 903: @item number
! 904: $B?t(B ($B%W%m%;%9<1JL;R(B)
! 905: @item nitem
! 906: $B<+A3?t(B
! 907: @end table
! 908:
! 909: @itemize @bullet
! 910: @item $B%W%m%;%9<1JL;R(B @var{number} $B$N%W%m%;%9$N%9%?%C%/$+$i%G!<%?$r<h$j=|$/(B.
! 911: @var{nitem} $B$,;XDj$5$l$F$$$k>l9g$O(B @var{nitem} $B8D(B, $B;XDj$N$J$$>l9g$O(B
! 912: 1 $B8D<h$j=|$/(B.
! 913: @end itemize
! 914:
! 915: @example
! 916: [69] for(I=1;I<=10;I++)ox_push_cmo(0,I);
! 917: [70] ox_pops(0,4);
! 918: 0
! 919: [71] ox_pop_cmo(0);
! 920: 6
! 921: @end example
! 922:
! 923: @table @t
! 924: @item $B;2>H(B
! 925: @code{ox_pop_cmo}, @code{ox_pop_local}
! 926: @end table
! 927:
! 928: @node ox_select ,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 929: @subsection @code{ox_select}
! 930: @findex ox_select
! 931:
! 932: @table @t
! 933: @item ox_select(@var{nlist}[,@var{timeout}])
! 934: :: $BFI$_=P$72DG=$J%W%m%;%9$N<1JL;R$rJV$9(B.
! 935: @end table
! 936:
! 937: @table @var
! 938: @item return
! 939: $B%j%9%H(B
! 940: @item nlist
! 941: $B?t(B ($B;R%W%m%;%9<1JL;R(B) $B$N%j%9%H(B
! 942: @item timeout
! 943: $B?t(B
! 944: @end table
! 945:
! 946: @itemize @bullet
! 947: @item
! 948: $B<1JL;R%j%9%H(B @var{nlist} $B$N%W%m%;%9$N$&$A4{$K=PNO$rJV$7$F$$$k(B
! 949: $B%W%m%;%9$N<1JL;R%j%9%H$rJV$9(B.
! 950: @item
! 951: $BA4$F$N%W%m%;%9$,(B RUN $B>uBV$N$H$-(B, $B$$$:$l$+$N%W%m%;%9$N=*N;$rBT$D(B.
! 952: $BC"$7(B, @var{timeout} $B$,;XDj$5$l$F$$$k>l9g(B, @var{timeout} $BIC$@$1BT$D(B.
! 953: @item
! 954: @code{ox_push_cmd()} $B$G(B @code{SM_popCMO} $B$"$k$$$O(B
! 955: @code{SM_popSerializedLocalObject} $B$rAw$C$F$*$-(B, @code{ox_select()} $B$G(B
! 956: ready $B>uBV$N%W%m%;%9$rD4$Y$F(B@code{ox_get()} $B$9$k$3$H$G(B,
! 957: @code{ox_pop_local()}, @code{ox_pop_cmo()}$B$GBT$A>uBV$KF~$k$N$rKI$0$3$H$,(B
! 958: $B$G$-$k(B.
! 959: @end itemize
! 960:
! 961: @example
! 962: ox_launch();
! 963: 0
! 964: [220] ox_launch();
! 965: 1
! 966: [221] ox_launch();
! 967: 2
! 968: [222] ox_rpc(2,"fctr",x^500-y^500);
! 969: 0
! 970: [223] ox_rpc(1,"fctr",x^100-y^100);
! 971: 0
! 972: [224] ox_rpc(0,"fctr",x^10-y^10);
! 973: 0
! 974: [225] P=[0,1,2];
! 975: [0,1,2]
! 976: [226] map(ox_push_cmd,P,258);
! 977: [0,0,0]
! 978: [227] ox_select(P);
! 979: [0]
! 980: [228] ox_get(0);
! 981: [[1,1],[x^4+y*x^3+y^2*x^2+y^3*x+y^4,1],
! 982: [x^4-y*x^3+y^2*x^2-y^3*x+y^4,1],[x-y,1],[x+y,1]]
! 983: @end example
! 984:
! 985: @table @t
! 986: @item $B;2>H(B
! 987: @code{ox_pop_local}, @code{ox_pop_cmo}, @code{ox_push_cmd}, @code{ox_get}
! 988: @end table
! 989:
! 990: @node ox_flush ,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 991: @subsection @code{ox_flush}
! 992: @findex ox_flush
! 993:
! 994: @table @t
! 995: @item ox_flush(@var{id})
! 996: :: $BAw?.%P%C%U%!$N6/@)(B flush
! 997: @end table
! 998:
! 999: @table @var
! 1000: @item return
! 1001: 1
! 1002: @item id
! 1003: $B;R%W%m%;%9<1JL;R(B
! 1004: @end table
! 1005:
! 1006: @itemize @bullet
! 1007: @item $BDL>o$O%P%C%A%b!<%I$O(B off $B$G$"$j(B, $B%G!<%?(B, $B%3%^%s%IAw?.$4$H$K(B
! 1008: $BAw?.%P%C%U%!$O(B flush $B$5$l$k(B.
! 1009: @item $B%P%C%A%b!<%I$O(B @code{"ctrl"} $B%3%^%s%I$N(B @code{"ox_batch"} $B%9%$%C%A(B
! 1010: $B$G(B on/off $B$G$-$k(B.
! 1011: @item $B:Y$+$$%G!<%?$rB??tAw$k>l9g$K(B, @code{ctrl("ox_batch",1)}
! 1012: $B$G%P%C%A%b!<%I$r(B on $B$K$9$k$H(B, $B%P%C%U%!$,$$$C$Q$$$K$J$C$?>l9g$K$N$_(B flush
! 1013: $B$5$l$k$?$a(B, overhead $B$,>.$5$/$J$k>l9g$,$"$k(B. $B$?$@$7$3$N>l9g$K$O(B, $B:G8e$K(B
! 1014: @code{ox_flush(@var{id})} $B$r<B9T$7$F(B, $B%P%C%U%!$r6/@)E*$K(B flush $B$9$kI,MW$,(B
! 1015: $B$"$k(B.
! 1016: @item @code{ox_pop_cmo}, @code{ox_pop_local} $B$N$h$&$K(B, $B%3%^%s%IAw?.8e(B
! 1017: $B$?$@$A$K%G!<%?BT$A$KF~$k4X?t$,%O%s%0$7$J$$$h$&(B, $B$3$l$i$N4X?t$NFbIt$G$O(B
! 1018: $B6/@)(B flush $B$,<B9T$5$l$F$$$k(B.
! 1019: @end itemize
! 1020:
! 1021: @example
! 1022: [340] ox_launch_nox();
! 1023: 0
! 1024: [341] cputime(1);
! 1025: 0
! 1026: 7e-05sec + gc : 4.8e-05sec(0.000119sec)
! 1027: [342] for(I=0;I<10000;I++)ox_push_cmo(0,I);
! 1028: 0.232sec + gc : 0.006821sec(0.6878sec)
! 1029: [343] ctrl("ox_batch",1);
! 1030: 1
! 1031: 4.5e-05sec(3.302e-05sec)
! 1032: [344] for(I=0;I<10000;I++)ox_push_cmo(0,I); ox_flush(0);
! 1033: 0.08063sec + gc : 0.06388sec(0.4408sec)
! 1034: [345] 1
! 1035: 9.6e-05sec(0.01317sec)
! 1036: @end example
! 1037:
! 1038: @table @t
! 1039: @item $B;2>H(B
! 1040: @code{ox_push_cmo}, @code{ox_push_local}, @code{ox_pop_cmo}, @code{ox_pop_local}, @code{ctrl}
! 1041: @end table
! 1042:
! 1043: @node ox_get_serverinfo ,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 1044: @subsection @code{ox_get_serverinfo}
! 1045: @findex ox_get_serverinfo
! 1046:
! 1047: @table @t
! 1048: @item ox_get_serverinfo([@var{id}])
! 1049: :: server $B$N(B Mathcap, $BF0:nCf$N%W%m%;%9<1JL;R$N<hF@(B
! 1050: @end table
! 1051:
! 1052: @table @var
! 1053: @item return
! 1054: $B%j%9%H(B
! 1055: @item id
! 1056: $B;R%W%m%;%9<1JL;R(B
! 1057: @end table
! 1058:
! 1059: @itemize @bullet
! 1060: @item $B0z?t(B @var{id} $B$,$"$k$H$-(B, $B%W%m%;%9<1JL;R(B @var{id} $B$N%W%m%;%9$N(B
! 1061: Mathcap $B$r%j%9%H$H$7$FJV$9(B.
! 1062: @item $B0z?t$J$7$N$H$-(B, $B8=:_F0:nCf$N%W%m%;%9<1JL;R$*$h$S$=$N(B Mathcap $B$+$i(B
! 1063: $B$J$k%Z%"$r(B, $B%j%9%H$H$7$FJV$9(B.
! 1064: @end itemize
! 1065:
! 1066: @example
! 1067: [343] ox_get_serverinfo(0);
! 1068: [[199909080,Ox_system=ox_sm1.plain,Version=2.991118,HOSTTYPE=FreeBSD],
! 1069: [262,263,264,265,266,268,269,272,273,275,276],
! 1070: [[514],[2130706434,1,2,4,5,17,19,20,22,23,24,25,26,30,31,60,61,27,33,40,16,34]]]
! 1071: [344] ox_get_serverinfo();
! 1072: [[0,[[199909080,Ox_system=ox_sm1.plain,Version=2.991118,HOSTTYPE=FreeBSD],
! 1073: [262,263,264,265,266,268,269,272,273,275,276],
! 1074: [[514],[2130706434,1,2,4,5,17,19,20,22,23,24,25,26,30,31,60,61,27,33,40,16,34]]]],
! 1075: [1,[[199901160,ox_asir],
! 1076: [276,275,258,262,263,266,267,268,274,269,272,265,264,273,300,270,271],
! 1077: [[514,2144202544],
! 1078: [1,2,3,4,5,2130706433,2130706434,17,19,20,21,22,24,25,26,31,27,33,60],[0,1]]]]]
! 1079: @end example
! 1080:
! 1081: @table @t
! 1082: @item $B;2>H(B
! 1083: @ref{Mathcap}.
! 1084: @end table
! 1085:
! 1086: @node ifplot conplot plot plotover,,, $BJ,;67W;;$K4X$9$k4X?t(B
! 1087: @subsection @code{ifplot}, @code{conplot}, @code{plot}, @code{plotover}
! 1088: @findex ifplot
! 1089: @findex conplot
! 1090: @findex plot
! 1091: @findex plotover
! 1092:
! 1093: @table @t
! 1094: @item ifplot(@var{func} [,@var{geometry}] [,@var{xrange}] [,@var{yrange}] [,@var{id}] [,@var{name}])
! 1095: :: 2 $BJQ?t4X?t$N<B?t>e$G$NNmE@$rI=<($9$k(B.
! 1096: @item conplot(@var{func} [,@var{geometry}] [,@var{xrange}] [,@var{yrange}] [,@var{zrange}] [,@var{id}] [,@var{name}])
! 1097: :: 2 $BJQ?t4X?t$N<B?t>e$G$NEy9b@~$rI=<($9$k(B.
! 1098: @item plot(@var{func} [,@var{geometry}] [,@var{xrange}] [,@var{id}] [,@var{name}])
! 1099: :: 1 $BJQ?t4X?t$N%0%i%U$rI=<($9$k(B.
! 1100: @item plotover(@var{func},@var{id},@var{number})
! 1101: :: $B$9$G$KB8:_$7$F$$$k%&%#%s%I%&$XIA2h$9$k(B.
! 1102: @end table
! 1103:
! 1104: @table @var
! 1105: @item return
! 1106: $B@0?t(B
! 1107: @item func
! 1108: $BB?9`<0(B
! 1109: @item geometry, xrange, yrange, zrange
! 1110: $B%j%9%H(B
! 1111: @item id, number
! 1112: $B@0?t(B
! 1113: @item name
! 1114: $BJ8;zNs(B
! 1115: @end table
! 1116:
! 1117: @itemize @bullet
! 1118: @item
! 1119: @code{ifplot()} $B$O(B, 2 $BJQ?t4X?t(B @var{func} $B$N<B?t>e$G$NNmE@$N(B
! 1120: $B%0%i%U$NI=<($r9T$&(B. @code{conplot()} $B$O(B, $BF1MM$N0z?t$KBP$7(B,
! 1121: $BEy9b@~$NI=<($r9T$&(B. @code{plot()} $B$O(B 1 $BJQ?t4X?t$N(B
! 1122: $B%0%i%U$NI=<($r9T$&(B. Windows $BHG$O8=>u$G$OL$%5%]!<%H$G$"$k(B.
! 1123: @item
! 1124: UNIX $BHG$O(B, $B1s3V%W%m%;%9$K$h$j<B8=$5$l$F$$$k(B. $B%3%^%s%I$O(B @samp{ox_plot}
! 1125: $B$G(B, @code{ox_launch()} $B$K$h$j5/F0$7$F$*$/I,MW$,$"$k(B. @samp{ox_plot}
! 1126: $B$O(B, @b{Asir} $B$NI8=`%i%$%V%i%j%G%#%l%/%H%j$K$"$k(B.
! 1127: @item
! 1128: $B0z?t$NFb(B, @var{func} $B$OI,?\$G$"$k(B. $B$=$NB>$N0z?t$O%*%W%7%g%s$G$"$k(B.
! 1129: $B%*%W%7%g%s$N7A<0$*$h$S$=$N%G%U%)%k%HCM(B ($B%+%C%3Fb(B) $B$O<!$NDL$j(B.
! 1130: @table @var
! 1131: @item geometry
! 1132: $B%&%#%s%I%&$N%5%$%:$r%I%C%HC10L$G(B @var{[x,y]} $B$G;XDj$9$k(B.
! 1133: (UNIX $BHG$G$O(B @var{[}@code{300},@code{300}@var{]}. )
! 1134: @item xrange, yrange
! 1135: $BJQ?t$NHO0O$N;XDj$G(B, @var{[v,vmin,vmax]} $B$G;XDj$9$k(B.
! 1136: ($B$$$:$l$NJQ?t$b(B @var{[v},@code{-2},@code{2}@var{]}.)
! 1137: $B$3$N;XDj$,$J$$>l9g(B, @var{func} $B$K4^$^$l$kJQ?t$NFbJQ?t=g=x$N>e$NJQ?t(B
! 1138: $B$,(B @samp{x}, $B2<$NJQ?t$,(B @samp{y} $B$H$7$F07$o$l$k(B. $B$3$l$rHr$1$k$?$a$K$O(B
! 1139: @var{xrange}, @var{yrange} $B$r;XDj$9$k(B. $B$^$?(B, @var{func} $B$,(B 1 $BJQ?t$N(B
! 1140: $B>l9g(B, $B$3$l$i$N;XDj$OI,?\$H$J$k(B.
! 1141: @item zrange
! 1142: @code{conplot()} $B$N>l9g$N$_;XDj$G$-$k(B. $B7A<0$O(B
! 1143: @var{[v,vmin,vmax} @code{[},@var{step} @code{]}@var{]} $B$G(B, @var{step} $B$,;XDj$5$l(B
! 1144: $B$?>l9g$K$O(B, $BEy9b@~$N4V3V$,(B @var{(vmax-vmin)/step} $B$H$J$k(B.
! 1145: (@var{[z},@code{-2},@code{2},@code{16}@var{]}.)
! 1146: @item id
! 1147: $B1s3V%W%m%;%9$NHV9f(B, $B$9$J$o$A(B @code{ox_launch()} $B$,JV$7$?HV9f$r;XDj$9$k(B.
! 1148: ($B0lHV:G6a$K:n$i$l(B, $B$+$D%"%/%F%#%V$J%W%m%;%9$KBP1~$9$kHV9f(B.)
! 1149: @item name
! 1150: $B%&%#%s%I%&$NL>A0(B. (@code{Plot}.)
! 1151: $B@8@.$5$l$?%&%#%s%I%&$N%?%$%H%k$O(B @var{name:n/m} $B$H$J$k(B.
! 1152: $B$3$l$O(B, $B%W%m%;%9HV9f(B @var{n} $B$N%W%m%;%9$N(B, @var{m} $BHV$N%&%#%s%I%&$r0UL#$9$k(B.
! 1153: $B$3$NHV9f$O(B, @code{plotover()} $B$GMQ$$$i$l$k(B.
! 1154: @end table
! 1155: @item
! 1156: $B0l$D$N%W%m%;%9>e$GIA2h$G$-$k%&%#%s%I%&$N?t$O:GBg(B 128 $B8D$G$"$k(B.
! 1157: @item
! 1158: @code{plotover()} $B$O(B, $B;XDj$7$?%&%#%s%I%&>e$K(B, $B0z?t$G$"$k(B 2 $BJQ?tB?9`<0$N(B
! 1159: $BNmE@$r>e=q$-$9$k(B.
! 1160:
! 1161: @item
! 1162: $BIA2h=*N;8e$N%&%#%s%I%&>e$G(B, $B%^%&%9$N:8%\%?%s$r2!$7$J$,$i$N%I%i%C%0(B
! 1163: $B$GHO0O$r;XDj$7%\%?%s$rN%$9$H?7$?$J%&%#%s%I%&$,@8@.$5$l(B, $B;XDj$7$?(B
! 1164: $BHO0O$,3HBg$7$FI=<($5$l$k(B. $B%I%i%C%0$O:8>e$+$i1&2<$X$H9T$&(B.
! 1165: $B%I%i%C%0$r;O$a$?8e%-%c%s%;%k$9$k>l9g$O(B, $B%^%&%9%]%$%s%?$r;OE@$N>e$+(B
! 1166: $B:8$K;}$C$F$$$C$F%\%?%s$rN%$;$P$h$$(B. $B?7$7$$%&%$%s%I%&$N7A$O(B, $B;XDj(B
! 1167: $BNN0h$HAj;w$G(B, $B:GBgJU$,(B, $B85$N%&%#%s%I%&$N:GBgJU$H0lCW$9$k$h$&$K(B
! 1168: $BDj$a$i$l$k(B. $B0J2<$G@bL@$9$k(B @code{precise} $B$,(B on $B$N>l9g(B,
! 1169: $BA*Br$7$?NN0h$,F10l(B window $B>e$G=q$-D>$5$l$k(B.
! 1170:
! 1171: @item
! 1172: $B%&%#%s%I%&Fb$G1&%\%?%s$r2!$9$H(B, $B$=$NE@$N:BI8$,%&%#%s%I%&$N2<It$KI=<($5$l$k(B.
! 1173:
! 1174: @item
! 1175: @code{conplot()} $B$G@8@.$7$?%&%#%s%I%&$K$*$$$F(B, $B%&%#%s%I%&$N1&B&$N%^!<%+$r(B
! 1176: $BCf%\%?%s$G%I%i%C%0$9$k$H(B, $BBP1~$9$kEy9b@~$N?'$,JQ$o$j(B, $B1&>e$N(B
! 1177: $B%&%#%s%I%&$KBP1~$9$k%l%Y%k$,I=<($5$l$k(B.
! 1178:
! 1179: @item
! 1180: UNIX $BHG$G$O$$$/$D$+$N%\%?%s(B, Mac $BHG$G$O%W%k%@%&%s%a%K%e!<$K$h$j(B
! 1181: $B$$$/$D$+$N@_DjJQ99(B, $BA`:n$,$G$-$k(B. UNIX $BHG$G$O<!$N%\%?%s$,$"$k(B.
! 1182:
! 1183: @table @code
! 1184: @item quit
! 1185: window $B$rGK2u$9$k(B. $B7W;;$rCfCG$9$k>l9g(B, @code{ox_reset()} $B$rMQ$$$k(B.
! 1186: @item wide ($B%H%0%k(B)
! 1187: $B8=:_$NI=<(ItJ,$r=D2#3F(B 10 $BG\$7$?NN0h$rI=<($9$k(B. $B8=:_I=<($5$l$F$$$kHO0O$O(B
! 1188: $B$3$NI=<($K$*$$$FCf1{It$KD9J}7A$G<($5$l$k(B. $B$3$NI=<($GHO0O;XDj$r9T$&$H(B,
! 1189: $B$=$NHO0O$,?7$7$$%&%#%s%I%&$KIA2h$5$l$k(B.
! 1190: @item precise ($B%H%0%k(B)
! 1191: $BA*BrNN0h$r(B, $B@0?t1i;;$K$h$j(B, $B$h$j@53N$K:FIA2h$9$k(B. $B$3$l$O(B, @var{func} $B$,(B
! 1192: $BM-M}?t78?t$N(B 2 $BJQ?tB?9`<0$N>l9g$K$N$_M-8z$G$"$k(B. $B$3$N%b!<%I$G$O(B Sturm $BNs(B
! 1193: $B$HFsJ,K!$K$h$j(B, $B6h4VFb$NNmE@$N8D?t$r@53N$K5a$a$F$$$/$b$N$G(B, $B%G%U%)%k%H$N(B
! 1194: $B7W;;K!$h$j$b@53N$JIA2h$,4|BT$G$-$k(B. $B$?$@$7(B, $BIA2h;~4V$OM>7W$K$+$+$k>l9g$,(B
! 1195: $BB?$$(B. $B$3$N@bL@$+$iL@$i$+$J$h$&$K(B, $B$3$N5!G=$OM-M}?t78?t$NB?9`<0$NIA2h$KBP(B
! 1196: $B$7$F$N$_M-8z$G$"$k(B. ((x^2+y^2-1)^2 $B$NIA2h$G;n$7$F$_$h(B.)
! 1197:
! 1198: @item formula
! 1199: $BBP1~$9$k<0$rI=<($9$k(B.
! 1200: @item noaxis ($B%H%0%k(B)
! 1201: $B:BI8<4$r>C$9(B.
! 1202: @end table
! 1203:
! 1204: @item
! 1205: @samp{ox_plot} $B$,5/F0$5$l$k%^%7%s$K$h$C$F$O(B, $B%9%?%C%/$rBgNL$K;HMQ$9$k(B
! 1206: $B$b$N$b$"$k$?$a(B, @samp{.cshrc} $B$G%9%?%C%/%5%$%:$rBg$-$a(B (16MB $BDxEY(B) $B$K(B
! 1207: $B;XDj$7$F$*$/$N$,0BA4$G$"$k(B. $B%9%?%C%/%5%$%:$O(B @code{limit stacksize 16m}
! 1208: $B$J$I$H;XDj$9$k(B.
! 1209:
! 1210: @item
! 1211: @code{X} $B$G$O!"%&%$%s%I%&$N3FItJ,$K$D$$$F(B resource $B$K$h$j(B
! 1212: $B?'IU$1$d!"%\%?%s$N7A$rJQ$($k$3$H$,$G$-$k!#(B
! 1213: resource $B$N;XDj$N;EJ}$O0J2<$NDL$j!#!J%G%U%)%k%H$r<($7$F$*$/!K(B
! 1214: @code{plot*form*shapeStyle} $B$O!"(B@t{rectangle, oval, ellipse, roundedRectangle}
! 1215: $B$,!";XDj$G$-$k!#(B
! 1216: @example
! 1217: plot*background:white
! 1218: plot*form*shapeStyle:rectangle
! 1219: plot*form*background:white
! 1220: plot*form*quit*background:white
! 1221: plot*form*wide*background:white
! 1222: plot*form*precise*background:white
! 1223: plot*form*formula*background:white
! 1224: plot*form*noaxis*background:white
! 1225: plot*form*xcoord*background:white
! 1226: plot*form*ycoord*background:white
! 1227: plot*form*level*background:white
! 1228: plot*form*xdone*background:white
! 1229: plot*form*ydone*background:white
! 1230: @end example
! 1231: @end itemize
! 1232:
! 1233: @example
! 1234: @end example
! 1235:
! 1236: @table @t
! 1237: @item $B;2>H(B
! 1238: @code{ox_launch}, @code{ox_shutdown}, @code{ox_reset}
! 1239: @end table
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>