% $BIUO?(B

\appendix

\chapter{ $BJdB-(B \Comment{(Appendices)} }


\section{ $B%b!<%I$J$7$N%W%m%0%i%`$rEy2A$J%b!<%IIU$-%W%m%0%i%`$X=q$-49$($k(B }
\label{moding}

$BK\@a$G$O!"Nc<($K$h$C$FHs7A<0E*$K=q$-49$($r@bL@$9$k!#(B
%
$B%b!<%I$J$7$N%W%m%0%i%`$O!"<!$N$h$&$K(B
$B%b!<%IIU$-$N%W%m%0%i%`$K=q$-49$($k$3$H$,$G$-$k!#(B

$B7k2L$N8!::$r9T$&$Y$-$H$3$m$G!"$"$k$Y$-7k2L$r(B
$B@Q6KE*$K=q$-9~$s$G$7$^$&%W%m%0%i%`$O%b!<%IIU$-$G$J$$!#(B
$B$3$N$h$&$J%W%m%0%i%`$r%b!<%IIU$-$K=q$-49$($k$K$O!"(B
$B7k2L$r8!::$9$k?7$?$J=R8l$r2C$($k!#(B
\begin{verbatim}
p(Arg1, Arg2) :- true |
  Result = normal,
  proc(Arg1, Result),
  post(Arg2).
\end{verbatim}

\begin{verbatim}
p(Arg1, Arg2) :- true |
  proc(Arg1, Result),
  p1(Arg2, Result).

p1(Arg2, Result) :- Result = normal |
  post(Arg2).
p1(Arg2, Result) :- Result = abnormal |
  process_exception(Arg2).
\end{verbatim}

$BLZ$NC5:w$K$*$$$F!"3FItJ,LZ$KBP$7$F;R%W%m%;%9$r@8@.$7!"(B
$BAa$$<T>!$A$G7k2L$r=q$-9~$`$h$&$J%W%m%;%9$O%b!<%IIU$-$G$J$$!#(B
$B$3$N$h$&$KJB9T$K=q$-9~$^$l$k7k2L$O(B KLIC $B=hM}7O$,(B
$BDs6!$9$kJB9T%^!<%8%5!<%P(B merge $B$rMxMQ$7$F!"(B
$B7k2L$NJB9T=q$-9~$_$r0lK\$N%9%H%j!<%`$X=g=xIU$1$k$Y$-$G$"$k!#(B

$B6d9T8}:B$N;D9bCM$=$N$b$N$rAa$$<T>!$A$G=q$-9~$`$N$OL@$i$+$K8m$j$G$"$k!#(B
$B%m%C%/!"%;%^%U%)!"%b%K%?$N$h$&$J=q$-9~$_8"$N<hF@$r(B
$B6%Ah$9$k$h$&$K=q$-D>$9$Y$-$G$"$m$&!#(B


\section{ DKLIC-XMLP: inter-operability }
\label{XML}

$BK\@a$G$O!"B>8@8l$K$*$$$F(B KL1 $B9`$N;z6g2r@O!"9=J82r@O$r(B
$BMF0W$K9T$&$?$a$K(B DKLICP $B$r(B XML $B8@8l$KBP1~$5$;$kNc$r5s$2$k!#(B

$BNc$($P!"<!$N(B KL1 $B9`$O2<5-$N(B XML $B$H$7$FI=$9$3$H$,$G$-$k!#(B
\begin{verbatim}
f([X], {a, "s"})
\end{verbatim}

\begin{verbatim}
<functor arity="2">
 <name>f</name>
 <arg number="1">
  <cons>
    <car><variable>X</variable></car>
    <cdr><atom>[]</atom></cdr>
  </cons>
 </arg>
 <arg number="2">
  <vector length="2">
    <elem number="0"><atom>a</atom></elem>
    <elem number="1"><string>s</string></elem>
  </vector>
 </arg>
</functor>
\end{verbatim}


\chapter{ DKLIC $B=hM}7O$N;EMM$H<BAu(B \Comment{(Specification)} }

\begin{verbatim}
dklicio
  bind inet(Port) ^Result=normal(^ServerSocket)
  connect inet(Host,Port) ^Result=normal(In,^Out)

ServerSocket
  accept ^Result=normal(In,^Out)

naming
  register Name Host Port
  lookup Name ^Result=normal(Host,Port)

exec
  go Agent
\end{verbatim}


% DKLIC $B%=!<%9(B

\section{ dklicio }
\section{ $BJQ?t%M!<%`%5!<%P(B }
\section{ $BJQ?tI=%*%V%8%'%/%H(B }
\section{ fusesusp }

\chapter{ DKLIC $B=hM}7O$N1~MQNc(B \Comment{(Sample Applications)} }

\section{ Remote Predicate Call }

\section{ Chat Server }

\section{ $B8!:w%5!<%P(B }

\section{ Mobile Agent }
