% $OpenXM: OpenXM/src/kan96xx/Doc/changelog-ja.tex,v 1.9 2004/09/19 00:47:47 takayama Exp $
\documentclass{jarticle}
\title{ChangeLog \\ ---kan96xx, kxx, k097}
\author{Nobuki Takayama}
\date{}
\begin{document}
\maketitle


%%OpenXM/doc/Papers/rims-2003-12* $B$K(B oxshell, polymake

\section{2004-02, port $B2=(B}

\begin{enumerate}
\item gmp $B$O%M%C%H%o!<%/$+$i%@%&%s%m!<%I$7$F%$%s%9%H!<%k$9$k$h$&$K$9$k(B.
{\tt OpenXM\_contrib} $B$O$D$+$o$J$$(B.
\item {\tt OpenXM/src/gmp/Makefile-ports} 1.1--1.5,
%%Mail/openxm-cvs.inbox 141
\end{enumerate}

\section{2004-02,  memory leak}
\begin{enumerate}
\item {\tt misc-2003/A2/bs-poly/bs2-leak.sm1} $B<B9T;~$K%/%i%$%"%s%H9=B$BN(B
$B$,2u$l$k(B.  gmp 4.x $B$K$h$k%a%b%j%j!<%/$r5?$&$b(B, {\tt GC\_malloc} $B$r;H$&$Y$-$H$3$m$G(B
{\tt malloc} $B$rMQ$$$F$$$?$N$G%a%b%j$,GK2u$5$l$F$$$?$HH=L@(B.
{\tt malloc} $B$NCf$K%]%$%s%?$rF~$l$F$O$$$1$J$$(B.
\item {\tt OpenXM/src/kan96xx} $B0J2<$N3F%U%!%$%k(B.
{\tt Kan/kanExport1.c} 1.11,
{\tt Kan/poly3.c} 1.7,
{\tt Kan/shell.c} 1.11,
{\tt plugin/file2.c} 1.9 ($B860x(B),
{\tt plugin/oxKan0.h} 1.16,
{\tt plugin/sm1Socket.c} 1.16 ($B860x(B).
{\tt OpenXM/src/kxx/oxmain.c} 1.15.
%%Mail/openxm-cvs.inbox 164 2004-2-23
\end{enumerate}

\section{2004-02, 03, ox\_texmacs}
\begin{enumerate}
\item sm1 $B$r4pAC$H$7$F(B ox\_texmacs $B$r:n$k(B.  {\tt -q} option $B$GM>7W$J(B
$B%a%C%;!<%8$rI8=`=PNO$X=P$5$J$$$h$&$K$9$k(B.  $B<!$N%U%!%$%k$rJQ99(B.
%%Mail/openxm-cvs.inbox 203, 204, 210, 213, 215, 220, 221, 222
\item {\tt OpenXM/src/util/ox\_pathfinder.c} 1.18--1.19,
{\tt OpenXM/src/util/ox\_pathfinder.h} 1.11,
{\tt OpenXM/src/kxx/ox100start.c} 1.6,
{\tt OpenXM/src/kan96xx/Doc/ox.sm1} 1.34--1.35,
{\tt OpenXM/src/kan96xx/Kan/ext.c} 1.23,
{\tt OpenXM/src/kan96xx/Kan/kanExport0.c} 1.21,
{\tt OpenXM/src/kan96xx/plugin/mytcpio.c} 1.14.
\item {\tt ox\_texmacs}. 
 {\tt OpenXM/src/kxx} $B0J2<$N<!$N%U%!%$%k$rJQ99(B.
\item {\tt ox\_texmacs.c} 1.1--1.17,
{\tt sample\_kanlib.c} 1.1,
\item {\tt init-openxm.scm} $B$N:n@.(B ($B>.86(B).
\end{enumerate}

\section{2004-03, ox $B5!G=$N6/2=(B}
\begin{enumerate}
\item option $B$D$-$N4X?t$h$S$@$7(B.
%%Mail/openxm-cvs.inbox 286, 288  $B$^$@=q$$$F$J$$(B
\end{enumerate}

\section{2004-07, dhecart (2$B=EF1;~2=$K$h$k(B gb)}
\begin{enumerate}
\item h[0,1](D) $B$G$N%0%l%V%J(B fan $B$N7W;;$N$?$a$N=`Hw(B.
\item Doc/dhecart.sm1,  dh.gb 
%%Mail/openxm-cvs.inbox ??
\end{enumerate}

\section{2004-08-22, lcm, polylcm, gcd, polygcd, $B$=$NB>(B}
\begin{enumerate}
\item polylcm, polygcd $B$O(B ox $B$rMQ$$$k(B.
\item mpzext (lcm, gcd).  int32 $B$O(B universalNumber (mpz\_int) $B$X<+F0JQ49(B.
\item ox.sm1 $B$O5/F0$N;~$+$i(B load $B$9$Y$-$@$,$^$@$d$C$F$J$$(B.
%%Mail/openxm-cvs.inbox ??
\item \verb@[(exponents) ...] gbext @ $B$G(B exponents $B$r<h$j=P$;$k(B. $B;O$a$NHG$O(B 8 $B7n:"(B.
\item {\tt exponents} $B$N(Bformat $B$rJQ$($?(B. (9/5. cf.gfan.sm1, cone.sm1) \\
{\tt OpenXM/src/kan96xx/Kan/kanExport1.c} 1.16.
\end{enumerate}

\section{2004-08-31, weight $B%Y%/%H%k$G(B univNum $B$r<u$1<h$k(B}
\begin{enumerate}
\item {\tt to\_int32}, {\tt Kto\_int32} $B$G(B univNum $B$r(B int32 $B$X(B.
\item {\tt to\_int} $B$O(B {\tt to\_univNum} $B$KF1CM(B. $B$I$A$i$+$rGQ;_$7$h$&(B.
\item $BFbIt4X?t$NJQ99(B: {\tt KordWsAll()}, {\tt KsetUpRing()}, {\tt oInitW()}
\item $B%^%/%m(B: {\tt ord\_w}, {\tt weight\_vector}, {\tt s\_weight\_vector},
{\tt w\_to\_vec}, {\tt ecart.weight\_vector}, {\tt ord\_ws\_all}
\item  $B%F%9%HJ}K!(B.  cvs-eventail/aux-cone.sm1 $B$N(B test7 $B$rMQ$$$k(B.
%%Mail/openxm-cvs.inbox ??
\end{enumerate}

\section{2004-09-5, error $B$*$h$S(B ctrl-C $B$G%^%/%m$N8F$S=P$7MzNr$rI=<((B(trace)}
\begin{enumerate}
\item {\tt traceShowStack()} $B$r8F$S=P$9$H8F$S=P$7MzNr$,I=<($5$l$k(B.
$BMzNr$rJ8;zNs$GLa$9(B.
\item \verb@ ctrlC_hook @ $B$N<B9TCf$K%(%i!<$r$*$3$9$H(B, ox103\_reset $B$,(B
$B$h$P$l(B, $B$3$l$,L58B%k!<%W$r@8$`(B. $B$3$l$rKI;_(B.
\item {\tt executeToken} $B$9$kA0$K4X?t$NL>A0$r(B trace $BMQ$N%9%?%C%/(B
{\tt TraceNameStack} $B$X(B push.
$B<B9T$,$*$o$l$P(B pop $B$9$k$3$H$K$h$j(B, $BMzNrI=<($r%3%s%H%m!<%k(B.
\item extension $B$GMzNr$N%/%j%"(B, $B6/@)I=<($,$G$-$k(B.
\item ctrl-C $B$GMzNr$NI=<((B, $B%/%j%"$r$9$k(B. $B$3$l$O3F(B ox server $B$GBP=h$NI,MW$"$j(B.
\item 
{\tt OpenXM/src/kan96xx/Kan/ext.c} 1.24 \\
{\tt OpenXM/src/kan96xx/Kan/kanExport0.c} 1.30 \\
{\tt OpenXM/src/kan96xx/Kan/stackmachine.c} 1.15--1.18  \\
{\tt OpenXM/src/kan96xx/Kan/usage.c} 1.30 \\
{\tt OpenXM/src/k097/ox\_k0.c} 1.6 \\
{\tt OpenXM/src/kxx/ox\_texmacs.c} 1.19 \\
{\tt OpenXM/src/kxx/oxserver00.c} 1.15 \\
{\tt OpenXM/src/kxx/sample\_kanlib.c} 1.2
\end{enumerate}

\section{2004-09-05, EUC$BEy(B 8-bit $B$NL>A0$r<u$1IU$1$k(B}
\begin{enumerate}
\item hash $BCM$N7W;;J}K!$K%P%0$,$"$C$?(B. hash $B$NCM$OIi$G$O$$$1$J$$(B.
\item {\tt OpenXM/src/kan96xx/Kan/stackmachine.c} 1.17
\end{enumerate}


\section{2004-09-05, $B%0%l%V%J(Bfan$B$N7W;;(B}
\begin{enumerate}
\item polymake $B$,I,MW(B.  9/1, 9/2, 9/3, 9/4 $B$N%N!<%H$b;2>H(B.
\item OpenXM $B$N(B cvs $B$X$N(B commit $B$OBg$-$$6h@Z$j$G(B. 
      $B:Y$+$$JQ99$O(B {\tt eventail/cone.sm1} $B$G(B.
\item {\tt OpenXM/src/kan96xx/Doc/gfan.sm1} 1.1
\end{enumerate}

\section{2004-09-05, $B%0%l%V%J(Bfan$B$N7W;;(B}
\begin{enumerate}
\item polymake $B$,I,MW(B.  9/1, 9/2, 9/3, 9/4 $B$N%N!<%H$b;2>H(B.
\item OpenXM $B$N(B cvs $B$X$N(B commit $B$OBg$-$$6h@Z$j$G(B. 
      $B:Y$+$$JQ99$O(B {\tt eventail/cone.sm1} $B$G(B.
\item {\tt OpenXM/src/kan96xx/Doc/gfan.sm1} 1.1
\end{enumerate}

\section{2004-09-09, 11, list $B$N6/2=(B}
\begin{enumerate}
\item array $B$N(B {\tt join} $B$r9T$&$H%a%b%j$NL5$@;H$$$,$O$2$7$$(B.
list $B$N(B {\tt cons} $B$rF3F~(B.  rest $B$bF3F~(B. join $B$O;H$($k$,4m81(B.
\item 
{\tt arrayToList}, {\tt listToArray} : $BJQ494X?t$r=`Hw(B.
\item {\tt get} $B$,%j%9%H$G$bF0$/$h$&$K(B.
\item {\tt Kan/dr.sm1} 1.35--1.36, 1.38 \\
{\tt Kan/extern.h} 1.24--1.25 \\
{\tt Kan/ext.c} 1.25 \\
{\tt Kan/kanExport0.c} 1.31--1.33 \\
{\tt Kan/list.c} 1.3--1.5 \\
{\tt Kan/primitive.c} 1.12 \\
{\tt Kan/smacro.sm1} 1.5 \\
{\tt Kan/usage.c} 1.32 \\
{\tt Kan/usage.sm1} 1.9
\end{enumerate}

\section{2004-09-10, $B%3%s%^(B {\tt ,} $B$N07$$$NJQ99(B}
\begin{enumerate}
\item  $B%3%s%^(B {\tt ,} $B$O$$$^$^$G%^%/%m$G$"$C$?$,(B, $B6uGr$H$7$F07$&$h$&$KJQ99$9$k(B.
\item  $B%7%9%F%`$NJQ99$O0J2<$NDL$j(B. \\
{\tt Kan/scanner.c} 1.5--1.6 \\
{\tt Kan/scanner2.c} 1.4--1.5 \\
{\tt Kan/dr.sm1} 1.37 \\
{\tt Kan/smacro.sm1} 1.6 
\item $B$=$NB>$O%i%$%V%i%jFbIt$G(B {\tt ,,} $B$r(B {\tt \_\_} $B$X(B,
{\tt ,,,} $B$r(B {\tt \_\_\_} $B$XJQ99$7$?(B.
\end{enumerate}

\section{2004-09-11,12, infix operator $B$rF3F~(B}
\begin{enumerate}
\item {\tt getattr} $B$r2C$($?(B (step 1). 
\item {\tt attr} $B$K(B {\tt ATTR\_INFIX} $BB0@-(B bit $B$rN)$F$F(B,
infix operator $B$H$9$k(B.
\item {\tt attr} $B$N(B PROTECT $BB0@-$r(B bit $B$G=hM}$9$k$h$&$KJQ99(B (step 2).
$B%F%9%H$O(B {\tt k0} $B$G(B
\begin{verbatim}
sm1(" [(getattr) /cons] extension :: ");
cons = 1;
\end{verbatim}
Warning $B$,I=<($5$l$k$+(B?
\item infix $BB0@-$,$"$k$H$-(B, {\tt getokenSM(GET)} $B$G<!$N(B token $B$rFI$_9~$_(B
$B$=$l$r(B {\tt executeToken} $B$7$F$+$i(B, infix $BB0@-$N$"$k%^%/%m$r<B9T$9$l$P(B
$B$$$$$+$H$$$&$H(B, $B$=$l$G$O(B top level  $B$N=hM}$7$+$G$-$J$$(B.
$B$?$H$($P(B, tokenArray $B$r=gHV$K=hM}$7$F$$$k$h$&$J>l9g$O$@$a(B.
$B$h$C$F(B, {\tt executeToken} $B$NLa$jCM$N(B status $B$NCM$r(B
$BMQ$$$k(B.  status $B$O(B {\tt loop} $B$+$i(B {\tt exit} $B$9$k$H$-$K$b;H$o$l$F$$$k(B
$B$N$G(B, status $B$NH=DjJ}K!$r8+D>$9I,MW$,$"$k(B.
\end{enumerate}

\section{2004-09-13, $BItJ,E*$J(B ecart division}

\noindent Debug $BMQ$N%G!<%?(B 1.
{\footnotesize \begin{verbatim}
[ [( (x Dx)^2 + (y Dy)^2 -1) ] (x,y) 
  [ [ (Dx) 1 ] [(x) -1 (y) -1 (Dx) 1 (Dy) 1]] 
  [(partialEcartGlobalVarX) [(x) (y)]] ] ecart.gb /ff set

ff getRing ring_def show_ring

\end{verbatim}
}

\noindent Debug $BMQ$N%G!<%?(B 2.
{\footnotesize \begin{verbatim}
/ecart.checkOrder { 1 } def
[(DebugReductionEcart) 3] system_variable
[ [(1-x-y-z) (1-z)] (x,y,z) 
  [ [(y) -1 (z) -1 (Dy) 1 (Dz) 1] [(x) 1 (Dx) 1]] 
  [(partialEcartGlobalVarX) [(x)]] ] ecart.gb /ff set

ff getRing ring_def show_ring

 [ [(1-z) (-x+1-y-z)] (x,y,z) 
  [ [(y) -1 (z) -1 (Dy) 1 (Dz) 1] [(x) 1 (Dx) 1]] 
  [(partialEcartGlobalVarX) [(x)]] ] /std set
(1+x^3) std ecartd.reduction
(x*y*z) std ecartd.reduction
\end{verbatim}
}
GlobalVarX $B$NJQ?t$K$D$$$F$O(B local order $B$G$O$$$1$J$$(B.
$BL58B%k!<%W$H$J$k(B.
{\tt ecart.checkOrder} $B$b=q$-D>$5$J$$$H$$$1$J$$(B.

\begin{enumerate}
\item \verb@ ringp->partialEcart @ $B$O(B int $B$NG[Ns(B
\verb@ ringp->partialEcartGlobalVarX @ $B$ND9$5(B.
$B$3$NG[Ns$K(B local $B$G$J$$JQ?t(B (first weight $B$,(B non-negative $B$J(B x $BJQ?t(B) $B$N%j%9%H$rF~$l$k(B.
{\tt ecartGetEllPartial()} $B$GMxMQ$5$l$k(B.
\item Todo: ring $B$N%a%s%P(B {\tt ringInInputForm} $B$N3hMQ(B. ( weight vector $B$d(B
input $B7A<0$N(B ring $B$r(B object $B$H$7$F3JG<(B.
\item Todo: {\tt KgetRingInfo} $B$r<BAu$9$k(B. index $B$+$i(B $BJQ?t(B, $BJQ?t$+$i(B index $BEy(B.
\end{enumerate}

\section{2004-09, {\tt ATTR\_EXPORT} $B$H(B {\tt RestrictedMode}}

\noindent
$B8=:_$N(B RestrictedMode $B$K$O0J2<$N@H<e@-$,$"$k(B (2004.9.19).
\begin{verbatim}
(cohom.sm1) run
[(or_attr) 8 /gb] extension 
[(or_attr) 8 /;] extension ;
[(RestrictedMode) 1] system_variable ;
[ [{(hello) message } ] (x,y) ] gb ;
hello     <----  error $B$r5/$3$9A0$K(B {(hello) message} $B$,<B9T$5$l$F$7$^$&(B.
ERROR(sm): 
<< /name object def >>  or  << object /name set >>
\end{verbatim}
\noindent $B860x(B: 
$B0z?t$K(B executableArray $B$rM?$($k$3$H$K$h$j(B, $BI>2A$,M^@)$5$l(B
{\tt ATTR\_EXPORT} bit $B$,%;%C%H$5$l$?4X?t$NI>2A$,$O$8$^$C$F$+$i(B
executableArray $B$,JQ?t(B {\tt arg1} $B$KBeF~$5$l(B, $B$=$NJQ?t$r(B scanner
$B$,I>2A$9$k$3$H$K$h$j(B, executableArray $B$,I>2A$5$l$k(B.

\noindent $BBP:v(B:
{\tt isThereExecutableArrayOnStack(ob)} $B$G%9%?%C%/$r8!::$9$k$h$&$K$9$k(B.
\begin{verbatim}
(cohom.sm1) run
[(or_attr) 8 /gb] extension 
[(or_attr) 8 /;] extension ;
0 1 10 { pop pop } for
[(RestrictedMode) 1] system_variable ;
[ [{(hello) message } ] (x,y) ] gb ;
\end{verbatim}

$B%F%9%H(B 2 ($B$3$A$i$O@5>o$KF0$/$O$:(B).
\begin{verbatim}
(ox.sm1) run
[(or_attr) 8 /fctr] extension 
[(or_attr) 8 /pmat] extension ;
[(or_attr) 8 /;] extension ;
0 1 10 { pop pop } for
[(RestrictedMode) 1] system_variable ;
[ (x^2-1) (x,y) ] fctr pmat ;
\end{verbatim}

\end{document}

