<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">%#!eplatex resume.tex
\documentclass[a4j,papersize]{jsarticle}
\usepackage[all]{xy}
\usepackage{moreverb,manfnt}
\usepackage[14Q,20mm,ls175,nohiragino]{jd}
\makeatletter
\fpinit
\tracingstats=1\xspcode'134=3
\def\JTeX{J\TeX}
\def\etrip{{\tt e-TRIP}}
\def\trip{{\tt TRIP}}
\def\mf{{\fontencoding{U}\fontfamily{manual}\selectfont METAFONT}}
\renewcommand{\section}{%
  \jd@startsection{section}{1}{\z@}{\z@}{3}{1.1zh}{1zh}%
  {\normalfont\LARGE\headfont\raggedright}}
\renewcommand{\subsection}{%
  \jd@startsection{subsection}{2}{\z@}{\z@}{2}{1zh}{0.25zh}%
  {\normalfont\large\headfont\raggedright}}
\input shl-tab
\newdimen\@baselineskip
\def\WEB{\texttt{WEB}}
\def\eTeX{$\epsilon$-\TeX}\def\pdfTeX{pdf\/\TeX}
\def\epTeX{$\epsilon$-\pTeX}\def\peTeX{pe\TeX}
\def\NTS{\leavevmode\hbox{$\cal N\kern-0.35em\lower0.5ex\hbox{$\cal T$}%
  \kern-0.2emS$}\,}
\def\XeTeX{\leavevmode
  \setbox0=\hbox{X\lower.5ex
  \hbox{\kern-.15em\reflectbox{E}}\kern-.1667em \TeX}%
  \dp0=0pt \ht0=0pt \box0 } 
% â†‘ http://wiki.contextgarden.net/Talk:XeTeX ã®ã‚’æ”¹å¤‰

% from etex_man.sty
\DeclareFontShape{OT1}{cmr}{bxrev}{n}{&lt;-&gt; xbmc10}{} % for right-to-left text
\DeclareTextFontCommand{\revrm}{\fontseries{bxrev}\fontshape{n}\selectfont}
\def\TeXXeT{\TeX-\revrm{\TeXXeTstate=1\beginR\TeX-\endR}}
\def\emph#1{{\rm\bfseries\mathversion{normal}#1}}

\def\xymtt#1{\hbox to 0zw{\hss\texttt{#1}\hss}}
\jdAdjust
\count0=0\thispagestyle{empty}
\jdNline{16}{}
\jdNline{3}{\huge\emph{è¨ˆç®—æ•°å­¦IIã€€ä½œæ¥­è¨˜éŒ²}}
\makeatletter
\jdNline{-1}{}
\jdNline[r]{2}{\Large 05ç­ ``epsilon''ï¼ŒåŒ—å· å¼˜å…¸}
\jdNline[r]{1}{\large \number\year/\two@digits\month/\two@digits\day
     \space\two@digits\hour:\two@digits\minute}
\makeatother
\newpage
\tableofcontents

\newpage
\section{æ³¨æ„äº‹é&nbsp;…}
\begin{itemize}
\item æˆæžœç‰©ã®\epTeX ã¯\verb+http://www.ms.u-tokyo.ac.jp/~kitagawa/+ã§å…¬
      é–‹ã—ã¦ãŠã‚Šã¾ã™ï¼Ž
\item è§’è—¤ã•ã‚“ãŒ2007/12/30ã«p\TeX${}+{}$\eTeX ã®å®Ÿé¨“\footnote{ã“ã¡
      ã‚‰ã¯\peTeX ã¨å‘¼ç§°ï¼Žæ­£å¼ã«ã¯ã©ã†logoã‚’çµ„ã‚€ã‹åˆ†ã‹ã‚‰ãªã„ã®ã§ï¼Œã“ã®è¡¨ç¾
      ã§è¨±ã—ã¦ã‚‚ã‚‰ãŠã†ï¼Žpã¨eã®ä½ç½®ãŒåå¯¾ãªã®ãŒãŠã‚‚ã—ã‚ã„ã¨å…±ã«å¹¸ã„ã§ã‚ã‚‹
      ã‘ã‚Œã©ã‚‚ï¼Œã“ã¡ã‚‰ã®åç§°ã®ç”±æ¥ã¯p(\eTeX)ã¨ã„ã†å®Ÿè£…æ–¹æ³•ã§ã‚ã£ãŸã‹ã‚‰ã&nbsp;
      ã‚ã†ï¼ˆã¨æŽ¨æ¸¬ã—ã¦ã¿ã‚‹ï¼‰ï¼Žpe\TeX ã®ç™»å&nbsp;´ã§ã“ã¡ã‚‰ã‚‚ã‚„ã‚‹æ°—ãŒã‹ãç«‹ã¦ã‚‰
      ã‚Œï¼Œ\epTeX ãŒã‚ˆã‚Šå®Œæˆåº¦ãŒé«˜ã„ã‚‚ã®ã¨ãªã‚ŠãˆãŸï¼Ž}ã‚’å…¬é–‹ã•ã‚ŒãŸãŒï¼Œã“ã‚Œ
      ã¯æœ¬ãƒ—ãƒ­ã‚¸ã‚§ã‚¯ãƒˆã¨ã¯å…¨ãé–¢ä¿‚ã®ãªã„ã‚‚ã®ã§ã‚ã‚‹ï¼Ž
\item ã“ã®æ–‡æ›¸ã¯æ¦‚ã­ç€æ‰‹ã—ãŸé&nbsp;†ç•ªã«ä¸¦ã‚“ã§ã„ã‚‹ãŒï¼Œã€Œå½¢å¼åŒ–ã€ä»¥é™ã¯é&nbsp;†ç•ªãŒ
      è‹¥å¹²å…¥ã‚Šä¹±ã‚Œã¦ã„ã‚‹ï¼Žã¾ãŸå¾Œã«ãªã‚‹ã»ã©å®Ÿéš›ã®ä½œæ¥­ã¨åŒæ™‚é€²è¡Œã—ã¦æ›¸ã„ãŸ
      éƒ¨åˆ†ãŒå¤šããªã£ã¦ãã‚‹ï¼Ž
\item æœ¬æ–‡æ›¸ã¯è¨ˆç®—æ•°å­¦IIã®ç™ºè¡¨ã«ç”¨ã„ã‚‹ã«ã¯é•·ã™ãŽã‚‹ã¨ã„ã†ã“ã¨ã§ï¼Œç™ºè¡¨å½“æ—¥ (2/1)
      ã«ä½¿ã†ã®ã¯åˆ¥ã«ä½œã£ãŸã‚¹ãƒ©ã‚¤ãƒ‰ã&nbsp;ã‘ã¨ã—ãŸï¼Žã—ã‹ã—ï¼Œã‚‚ã¡ã‚ã‚“ï¼Œã“ã®æ–‡æ›¸
      ã¯æ®‹ã™ã¤ã‚‚ã‚Šï¼Ž
\item \emph{ä¸€éƒ¨ã®versionã®Adobe Readerã§ã¯ãƒ˜ãƒ–ãƒ©ã‚¤æ–‡å­—ãŒã¡ã‚ƒã‚“ã¨ã§ãªã„
      ã‚ˆã†ã§ã™ãŒï¼ŒåŽŸå›&nbsp;ã¯ã¾ã&nbsp;ã‚ˆãã‚ã‹ã‚Šã¾ã›ã‚“ï¼Ž}
\item é˜¿éƒ¨ ç´€è¡Œã•ã‚“ï¼Œè§’è—¤ äº®ã•ã‚“ï¼Œã€Œæ•™è·ç”·ã€ã•ã‚“ï¼Œã€Œé€šã‚Šã™ãŒã‚Š2ã€ã•ã‚“ã‚’ã¯
      ã˜ã‚ã¨ã™ã‚‹æ–¹ã€…ã«ï¼ˆã“ã®ã‚ˆã†ãªã¨ã“ã‚ã§ç”³ã—è¨³ãªã„ãŒï¼‰æ·±ããŠç¤¼ã‚’ç”³ã—ä¸Š
      ã’ã¾ã™ï¼Ž
\end{itemize}
\newpage

\section{ãƒ†ãƒ¼ãƒžã«ã¤ã„ã¦}
\subsection{èƒŒæ™¯}
Knuthæ•™æŽˆã®é–‹ç™ºã•ã‚ŒãŸç‹­ç¾©ã®\TeX ã§ã¯ï¼Œæ—¥æœ¬èªžãŒé€šã‚‰ãªã„ï¼Žãã‚Œã‚’æ—¥æœ¬èªžã«å¯¾
å¿œã•ã›ã‚ˆã†ã¨ã„ã†è©¦ã¿ã¨ã—ã¦ï¼ŒNTT \JTeX\footnote{åƒè‘‰å¤§ã®æ¡œäº•ã•ã‚“ãŒãƒ¡ãƒ³ãƒ†ï¼Ž
\verb+http://www.math.s.chiba-u.ac.jp/~sakurai/software.html+ï¼Ž} ã¨ã‚¢ã‚¹
ã‚­ãƒ¼ã®\pTeX\footnote{\verb+http://www.ascii.co.jp/pb/ptex/+ãŒå…¬å¼ãƒšãƒ¼ã‚¸
ã§ã‚ã‚‹ï¼Ž}ãŒæœ‰åã§ã‚ã‚Šï¼Œ
å¾Œè€…ã®\pTeX ã¯ç¸¦çµ„ã¿ã‚‚ã§ãã‚‹ã¨ã„ã†ã“ã¨ã‚‚ã‚ã£ã¦ï¼Œæ—¥æœ¬ã§ã¯æ¨™æº–çš„ã«ãªã£ãŸã¨
ã„ã£ã¦ã‚‚ã‚ˆã„ï¼Žï¼ˆç‹­ç¾©ã®ï¼‰\TeX ã«å¯¾å¿œã™ã‚‹\LaTeX ãƒžã‚¯ãƒ­ã«ã¤ã„ã¦ã‚‚ï¼ŒJ\TeX,
\pTeX ã®ãã‚Œãžã‚Œã«å¯¾å¿œç‰ˆãŒå­˜åœ¨ã—ï¼ŒæŽ¥é&nbsp;­è¾žã‚’æ‹å€Ÿã—ã¦p\LaTeX ãªã©ã®ã‚ˆã†ã«å‘¼
ã¶ï¼Ž

\eteiri

\def\heb#1{\leavevmode\smash{\fontencoding{U}\fontfamily{heb}\selectfont #1}}
ä¸€æ–¹ï¼Œãã‚Œä»¥å¤–ã®\TeX ã®æ‹¡å¼µã¨ã—ã¦ï¼Œä¾‹ãˆã°æ¬¡ã®ã‚ˆã†ãªã‚‚ã®ãŒã‚ã‚‹ï¼Ž
\begin{itemize}
\item \eTeX\ (eTeX). å„ç¨®æ©Ÿèƒ½ãŒæ‹¡å¼µã•ã‚Œã¦
      ã„ã‚‹ï¼Žè©³ç´°ã¯å¾Œè¿°ï¼Ž
\item $\Omega$ (Omega). \TeX ã‚’Unicodeã«å¯¾å¿œã•ã›ã¦å¤šè¨€èªžå‡¦ç†ã‚’å®Ÿè£…ã•ã›ãŸã‚‚ã®ã§ã‚
      ã‚‹ï¼Žã“ã‚Œã«å¯¾å¿œã™ã‚‹\LaTeX ãƒžã‚¯ãƒ­ã¯$\Lambda$ (Lambda) ã¨å‘¼ã°ã‚Œã‚‹ï¼Ž
å…¬å¼ãƒšãƒ¼ã‚¸ã¯\verb+http://omega.enstb.org/+ï¼Ž
\item  \heb{\char'200}(Aleph). $\Omega$ã«\eTeX ç›¸å½“ã®æ©Ÿèƒ½ã‚’å–ã‚Šè¾¼ã‚“ã&nbsp;ã‚‚
      ã®ï¼Žå¯¾å¿œã™ã‚‹\LaTeX ãƒžã‚¯ãƒ­ã¯ \heb{\char'214} (Lamed) ã¨å‘¼ã°ã‚Œã‚‹ï¼Ž
\item \pdfTeX. \TeX\ sourceã‹ã‚‰ç›´ã«pdfã‚’ä½œæˆã§ãã‚‹ã‚ˆã†ã«ã—ãŸã‚‚ã®ï¼Žä»Šã¯
      \eTeX ãŒãƒ™ãƒ¼ã‚¹ã¨ã®ã“ã¨ï¼Žå…¬å¼ãƒšãƒ¼ã‚¸ã¯
\verb+http://www.tug.org/applications/pdftex/+ï¼Ž
\end{itemize}

\eteiri

ã•ã¦ï¼Œ\TeX ã¯ã‚ã‚‹ç¨®ã®ãƒ—ãƒ­ã‚°ãƒ©ãƒŸãƒ³ã‚°è¨€èªžã§ã‚ã‚Šï¼Œå¤‰æ•°ï¼Œã¤ã¾ã‚Šãƒ¬ã‚¸ã‚¹ã‚¿ã‚‚
\verb+\count+ï¼ˆ4\,byteæ•´æ•°)ï¼Œ\verb+\dimen+ï¼ˆ$2^{-16}$\,ptå˜ä½ã§ï¼Œæ•´æ•°éƒ¨
14\,bitï¼Œå°æ•°éƒ¨16\,bitã®å›ºå®šå°æ•°ç‚¹æ•°ï¼‰ï¼Œ\verb+\box+ãªã©ã®ã„ãã¤ã‹ã®ç¨®é¡žãŒ
ã‚ã‚Šï¼Œå„ç¨®é¡ž0\,ã€œ\,255ã®index ã§ï¼Œã¤ã¾ã‚Š1 ç¨®é¡žã«ã¤ã256å€‹ãšã¤ä½¿ãˆã‚‹ã‚ˆã†ã«ãªã£
ã¦ã„ã¦ï¼Œ\pTeX ã§ã‚‚ãã‚Œã‚’å¼•ããšã£ã¦ã„ã‚‹ï¼Žã—ã‹ã—ï¼ŒMusiX\TeX ãªã©ã®ã‚ˆã†ãªå·¨
å¤§ãªãƒžã‚¯ãƒ­ãƒ‘ãƒƒã‚±ãƒ¼ã‚¸ã§ã¯ï¼Œå…¨ãåŒã˜sourceã§ã‚‚ï¼ˆp\LaTeX ã§ã¯æ—¥æœ¬èªžã¾ã‚ã‚Šã§
ä½™è¨ˆã«ãƒ¬ã‚¸ã‚¹ã‚¿ã‚’ä½¿ã†ã®ã§ï¼‰æ¬§æ–‡\LaTeX ã§ã¯å‡¦ç†ã§ãã‚‹ãŒï¼Žp\LaTeX ã§ã¯å‡¦ç†ã§
ããªã„ã¨ã„ã£ãŸäº‹æ…‹ãŒã™ã§ã«ç™ºç”Ÿã—ã¦ã„ã‚‹ï¼Žä¸€æ–¹ï¼Œå‰å‡ºã®\eTeX ã«ã‚ˆã‚‹æ‹¡å¼µã§ã¯ï¼Œ
ãƒ¬ã‚¸ã‚¹ã‚¿ã¯å„ç¨®$2^{15}$å€‹ä½¿ãˆã‚‹ã‚ˆã†ã«æ”¹è‰¯ã•ã‚Œã¦ã„ã‚‹ã®ã§ï¼Œæ‹¡å¼µæ©Ÿèƒ½ã‚’ä½¿ã†çŠ¶
æ³ã§ã¯å®Ÿè³ªçš„ã«ã¯èµ·ã“ã‚Šãˆãªã„ã¨æ€ã£ã¦ã‚ˆã„ï¼Žï¼Ž

\eteiri

æ¬§æ–‡ã®\LaTeX ã‚’ä½¿ãŠã†ã¨ã—ã¦ç«¯æœ«ä¸Šã§\verb+latex+ã¨æ‰“ã¤ã¨ï¼Œãã“ã§èµ·å‹•ã™ã‚‹
ã®ã¯å…ƒã€…ã®\TeX ã§ã¯ãªãï¼Œå¤§å¹…ã«æ©Ÿèƒ½æ‹¡å¼µã•ã‚ŒãŸ\pdfTeX ãŒäº’æ›ãƒ¢ãƒ¼ãƒ‰ã§å‹•ã„
ã¦ã„ã‚‹ã¨ã„ã†çŠ¶æ³ãŒæœ€è¿‘ã§ã¯ç™ºç”Ÿã—ã¦ã„ã‚‹ï¼Œç¾ã«ï¼Œä½œæ¥­ã‚’è¡Œã£ãŸPCã§ã¯\TeX\
Live 2007ã¨ã„ã†\TeX é–¢é€£ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ã¾ã¨ã‚ãŸã‚‚ã®ï¼ˆ\pTeX ã¯å…¥ã£ã¦ãªã„ï¼‰ã«ï¼Œ
è‡ªåˆ†ã§\pTeX ã‚’è¿½åŠ&nbsp;ã—ã¦ä½¿ã£ã¦ã„ã‚‹ã®ã&nbsp;ãŒï¼Œä»¥ä¸‹ã®ã‚ˆã†ã«\pdfTeX ãŒèµ·å‹•ã—ãŸï¼Ž
ã“ã®ã“ã¨ã‹ã‚‰è€ƒãˆã‚‹ã¨ï¼Œä¸–ç•Œçš„ã«ã¯\eTeX ã®æ©Ÿèƒ½ãŒåˆ©ç”¨ã§ãã‚‹ã“ã¨ãŒ
å½“ãŸã‚Šå‰ã«ãªã‚Šã¤ã¤ã‚ã‚‹ã¨ã„ã£ã¦ã‚‚ã‚ˆã„ã®ã‹ã‚‚ã—ã‚Œãªã„ï¼Žã¤ã¾ã‚Šï¼Œç‰¹ã«ï¼Œå„ç¨®
256å€‹ã¨ã„ã†ãƒ¬ã‚¸ã‚¹ã‚¿ã®åˆ¶é™ã¯ã‚‚ã¯ã‚„obsoluteã«ãªã‚Šã¤ã¤ã‚ã‚‹ã¨ã„ãˆã‚‹ã&nbsp;ã‚ã†ï¼Ž

\begin{adjustvboxheight}
\narrowbaselines\small
\begin{verbatim}
ã€€ã€€[h7k doc]$ latex
ã€€ã€€This is pdfTeX, Version 3.141592-1.40.3 (Web2C 7.5.6)
ã€€ã€€ï¼ˆå¾Œç•¥ï¼‰
\end{verbatim}
\end{adjustvboxheight}

\subsection{ãƒ†ãƒ¼ãƒžã®æç¤º}
å‰ç½®ããŒé•·ããªã£ãŸãŒï¼Œä»¥ä¸Šã®èƒŒæ™¯ã‹ã‚‰ï¼Œæœ¬ç­ã§ã¯\emph{\pTeX ã«$\bm
\epsilon$-\TeX ã®æ©Ÿèƒ½ã®ä¸€éƒ¨ï¼Œç‰¹ã«ãƒ¬ã‚¸ã‚¹ã‚¿æ•°ã®è©±ã«ã¤ã„ã¦ã®æ©Ÿèƒ½ã‚’çµ„ã¿è¾¼ã‚€}
ã¨ã„ã†ã“ã¨ã‚’ç¬¬1ã®ç›®æ¨™ã¨ã—ãŸï¼Ž

ç¬¬2ã®ç›®æ¨™ã¯åŠåˆ†ãƒã‚¿ã§ã‚ã‚‹ï¼Ž\TeX ã‚½ãƒ¼ã‚¹å†…ã§ä½¿ç”¨ã§ãã‚‹ç®—è¡“æ¼”ç®—ã¯ã™ã¹ã¦æ•´æ•°
ï¼ˆã¨å›ºå®šå°æ•°ç‚¹æ•°ï¼‰ã®å››å‰‡æ¼”ç®—ã§ã‚ã‚‹ãŸã‚ï¼Œä¾‹ãˆã°3æ¬¡æ–¹ç¨‹å¼ã®è§£ã®è¿‘ä¼¼è¨ˆç®—ãªã©ã¯
Fortranã¨ã‹Cã¨ã‹ã®ä»–ã®è¨€èªžã§ã‚„ã‚‰ãªã‘ã‚Œã°ãªã‚‰ãªã‹ã£ãŸï¼Žã“ã‚Œã‚’\TeX ã®å†…éƒ¨ã§ã§
ããŸã‚‰ï¼Œã„ã¡ã„ã¡è¨ˆç®—ç”¨ãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;ã®çµæžœã‚’è²¼ã‚Šä»˜ã‘ãŸã‚Š\verb+\input+ã§èª­ã‚“ã&nbsp;
ã‚Šã™ã‚‹å¿…è¦ãŒç„¡ãã¦ï¼Œæ¥½ã«ãªã‚‹ã«é•ã„ãªã„\footnote {ãã†è€ƒãˆã‚‹ã®ã¯å¤šåˆ†åƒ•ã&nbsp;ã‘
ã&nbsp;ï¼Ž}ï¼Œã¨åƒ•ã¯è€ƒãˆãŸã®ã§ï¼Œï¼ˆé€Ÿåº¦ã¯ã‚ã‚‹ç¨‹åº¦ã¯åº¦å¤–è¦–ã™ã‚‹ã“ã¨ã«ã—ã¦ï¼‰\emph{\TeX ã¸ã®æµ®
å‹•å°æ•°ç‚¹æ¼”ç®—ã®å®Ÿè£…}ã‚’æ¬¡ã®ç›®æ¨™ã«ã—ãŸ\footnote{Beebe\nobreak\cite{beebe}ã®titleã¯
Extending \TeX\ and \mf\ with Floating-Point Arithmeticã§ã‚ã‚‹ãŒï¼Œ
ãã¡ã‚‰ã¯ã€ŒLuaç­‰ã®ã‚¹ã‚¯ãƒªãƒ—ãƒˆè¨€èªžã«ã‚ˆã‚‹ï¼ˆIEEE 754rã«åŸºã¥ãã‚ˆã†ãªï¼‰
å®Ÿè£…ã€ã¨ã„ã†ã‚¢ãƒ—ãƒ­ãƒ¼ãƒã‚’ç¤ºã—ã¦ã„ã‚‹ã&nbsp;ã‘ã§ã‚ã‚‹ï¼Ž}ï¼Ž

\section{\TeX å‘¨è¾ºã®compileæ–¹æ³•}
\pTeX ã®æ”¹é€&nbsp;ã‚’ã™ã‚‹ãŸã‚ã«ã¯ï¼Œãã‚ŒãŒã©ã®ã‚ˆã†ã«compileã•ã‚Œã¦ã„ã‚‹ã‹ã‚’çŸ¥ã‚‰ãª
ã‘ã‚Œã°ã‚‚ã¡ã‚ã‚“ã§ããªã„ï¼Žåƒ•ã¯æ˜”ã‹ã‚‰\TeX é–¢ä¿‚ã®ãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;ã‚’è‡ªåˆ†ã§ã‚½ãƒ¼ã‚¹ã‹
ã‚‰ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã—ã¦ã„ãŸï¼ˆUnixç³»çµ±ãªã‚‰åœŸæ‘ã•ã‚“ã«ã‚ˆã‚‹ptetex3ã®ãŠã‹ã’ã§ï¼Œã&nbsp;ã„
ã¶ç°¡å˜ã«ãªã£ãŸï¼‰ã®ã§çŸ¥ã£ã¦ã„ãŸã®ã§ã“ã‚Œã‚’èª¿ã¹ã‚‹æ™‚é–“ã¯ã»ã¨ã‚“ã©0ã§æ¸ˆã‚“ã&nbsp;ï¼Ž

\TeX ã®ä¸€ç•ªå…ƒã€…ã®ã‚½ãƒ¼ã‚¹ã¯{\tt tex.web}ã¨ã„ã†ãƒ•ã‚¡ã‚¤ãƒ«ã§ã‚ã‚Šï¼Œã¯ã£ãã‚Šå†’é&nbsp;­
ã«
\begin{adjustvboxheight}
\narrowbaselines\small
\begin{verbatim}
ã€€ã€€% This program is copyright (C) 1982 by D. E. Knuth; all rights are reserved.
ã€€ã€€% Copying of this file is authorized only if (1) you are D. E. Knuth, or if
ã€€ã€€% (2) you make absolutely no changes to your copy. (The WEB system provides
ã€€ã€€% for alterations via an auxiliary file; the master file should stay intact.)
ã€€ã€€% See Appendix H of the WEB manual for hints on how to install this program.
ã€€ã€€% And see Appendix A of the TRIP manual for details about how to validate it.

ã€€ã€€% TeX is a trademark of the American Mathematical Society.
ã€€ã€€% METAFONT is a trademark of Addison-Wesley Publishing Company.
\end{verbatim}
\end{adjustvboxheight}
\noindent ã¨ã‚ã‚‹ã‚ˆã†ã«ï¼Œã“ã‚ŒãŒKnuthæ•™æŽˆã®è£½ä½œã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ãã®ã¾ã¾ã§ã‚ã‚‹ï¼Žã“ã®ãƒ•ã‚¡
ã‚¤ãƒ«ã¯\WEB ã¨ã„ã†è¨€èªž/æ›¸å¼ã§æ›¸ã‹ã‚Œã¦ã„ã‚‹ï¼Ž

\subsection{\WEB ã®èª¬æ˜Ž}
ã“ã“ã«ã¤ã„ã¦ã¯æ¾å±±\nobreak\cite{matsu3}ã‚’èª­ã‚“ã&nbsp;æ–¹ãŒï¼Œ
ä»¥ä¸‹ã®åƒ•ã®ä¸‹æ‰‹ãªèª¬æ˜Žã‚ˆã‚Šã‚ã‹ã‚Šã‚„ã™ã„ã‹ã‚‚ã—ã‚Œãªã„ãŒï¼Œã¾ã‚ï¼ŒãŠä»˜ãåˆã„ãã&nbsp;
ã•ã„ï¼Ž

\WEB ã®è©³ç´°ã¯Knuth~\cite{webman}ã¨ã‹
ã‹ã‚‰å¾—ã‚‰ã‚Œã‚‹ãŒï¼Œå¤§é›‘æŠŠã«è¨€ã†ã¨ï¼ŒPascalã§ã‹ã‹ã‚ŒãŸãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;ã®ã‚½ãƒ¼ã‚¹ã‚’å°ã•
ãåˆ†å‰²ã—ã¦ï¼Œå„åˆ†å‰²ã®æ–­ç‰‡ã¯\TeX ã‚½ãƒ¼ã‚¹ã«ã‚ˆ
ã‚‹èª¬æ˜Žæ–‡ã‚’å¿…è¦ãªã‚‰ä»˜å±žã•ã›ã¦ï¼Œãã‚Œã‚‰ã‚’ï¼ˆã»ã¨ã‚“ã©ä»»æ„ã®é&nbsp;†åºã§ï¼‰ä¸¦ã¹ãŸã‚‚ã®
ã§ã‚ã‚‹ï¼Ž
ä¸Šã®èª¬æ˜Žã§ã¯éžå¸¸ã«ã‚ã‹ã‚Šã«ãã„ã®ã§ï¼Œå®Ÿä¾‹ã‚’åˆ¥ã«æŒ™ã’ã‚‹ã“ãŠã«ã—ã¦ãŠã“ã†ï¼ˆä»˜
éŒ²å‚ç…§ï¼‰ï¼Ž
\eteiri

ã•ã¦ï¼Œ\WEB ã§æ›¸ã‹ã‚ŒãŸãƒ•ã‚¡ã‚¤ãƒ«ï¼ˆä¾‹ãˆã°\verb+fuga.web+ï¼‰ã‚’\verb+tangle+ã¨ã„
ã†ãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;ã«é€šã™ã¨ï¼Œãã“ã‹ã‚‰Pascalã§æ›¸ã‹ã‚ŒãŸãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;ã®ã‚½ãƒ¼ã‚¹ã&nbsp;ã‘ãŒæŠœ
ãå‡ºã•ã‚Œï¼Œ\verb+fuga.pas+ã¨ã‹\verb+fuga.p+ãŒã§ãã‚‹ï¼Žä¸€æ–¹ã§ï¼Œ\verb+weave+
ã¨ã„ã†ãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;ã«é€šã™ã¨ï¼Œ\verb+fuga.web+ä¸­ã«æ›¸ã‹ã‚ŒãŸè§£èª¬æ–‡ãŒPascalã‚½ãƒ¼
ã‚¹ã¨ã¨ã‚‚ã«æ•´å½¢ã•ã‚Œï¼Œ\TeX ã‚½ãƒ¼ã‚¹\verb+fuga.tex+ã‚’å¾—ã‚‹ï¼Žã“ã‚Œã‚’\TeX ã§å‡¦ç†
ã™ã‚‹ã¨ï¼Œç¶ºéº—ã«æ•´å½¢ã•ã‚ŒãŸã‚½ãƒ¼ã‚¹ä»˜ãã®ãƒ‰ã‚­ãƒ¥ãƒ¡ãƒ³ãƒˆãŒå¾—ã‚‰ã‚Œã‚‹ï¼Œã¨ã„ã†å¯¸æ³•ã§
ã‚ã‚‹\footnote{ã¡ãªã¿ã«ï¼Œtangleã¯ã€Œã‚‚ã¤ã‚Œã‚‹/ã•ã›ã‚‹ã€ï¼Œweave /w\'i:v/ã¯ã€Œç¹”ã‚‹ã€ã¨
ã„ã†æ„å‘³ã§ã‚ã‚‹ï¼Ž{\tt tangle}ã¯\WEB ã‚½ãƒ¼ã‚¹ä¸­ã«é©å½“ãªé&nbsp;†åºã§ç½®ã‹ã‚ŒãŸãƒ—ãƒ­ã‚°ãƒ©
ãƒ&nbsp;ã®å„æ–­ç‰‡ã‚’ã¡ã‚ƒã‚“ã¨ä¸¦ã¹ç›´ã™ãŒï¼Œåã‹ã‚ŒãŸPascalã‚½ãƒ¼ã‚¹ã¯èª­ã‚‚ã†ã¨ã™ã‚‹æ°—ãŒå¤±ã›
ã‚‹ã»ã©ãã¡ã‚ƒãã¡ã‚ƒã§ã‚ã‚‹ï¼Ž}ï¼Ž

ã¾ãŸï¼Œ\WEB ã«ã¯change fileã¨ã„ã†æ©Ÿèƒ½ãŒç”¨æ„ã•ã‚Œã¦ãŠã‚Šï¼Œã¡ã‚‡ã†ã©ãƒ‘ãƒƒãƒãƒ•ã‚¡ã‚¤
ãƒ«ã®å½¹å‰²ã‚’æžœãŸã™ï¼Žæ§‹é€&nbsp;ã‚‚ä¼¼ã¦ãŠã‚Šï¼Œ\newpage
\begin{adjustvboxheight}
\narrowbaselines
\begin{verbatim}
ã€€ã€€@x
ã€€ã€€å¤‰æ›´å‰ã®éƒ¨åˆ†
ã€€ã€€@y
ã€€ã€€å¤‰æ›´å¾Œã®éƒ¨åˆ†
ã€€ã€€@z
\end{verbatim}
\end{adjustvboxheight}
\noindent ã®ç¹°ã‚Šè¿”ã—ã‹ã‚‰ãªã£ã¦ã„ã‚‹ï¼Ž\verb+@x+ã®è¡ŒãŒ\verb+@x l.1701 hogehoge...+ãªã©
ã®ã‚ˆã†ã«ãªã£ã¦ã„ã‚‹ï¼ˆæ³¨é‡ˆãŒæ›¸ã‹ã‚Œã¦ã„ã‚‹ï¼‰ã“ã¨ã‚‚å¤šã„ï¼Ž{\tt tangle}ã‚„{\tt
weave}ã®å¼•æ•°ã«ã¯ã“ã®change fileã‚’\WEB ã‚½ãƒ¼ã‚¹ã¨ã¨ã‚‚ã«æŒ‡å®šã™ã‚‹ã“ã¨ãŒã§ãã¦ï¼Œ
ä¾‹ãˆã°ï¼Œ\par
\noindent \ \ \ \ {\tt &gt;\ tangle fuga.web fuga.ch}

\noindent ã¨ã™ã‚‹ã¨ï¼Œ{\tt fuga.web}ã®å†…å®¹ã‚’{\tt
fuga.ch}ã§ãƒ‘ãƒƒãƒã—ãŸã‚‚ã®ã«ã¤ã„ã¦ï¼Œ{\tt tangle}å‡¦ç†ãŒè¡Œã‚ã‚Œã‚‹ï¼Žã¾ãŸï¼Œ{\tt
tie}ã¨ã„ã†ãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;ã‚’ä½¿ãˆã°ï¼Œ\WEB ã‚½ãƒ¼ã‚¹ã¨change fileã‹ã‚‰ï¼Œchange fileé©
ç”¨å¾Œã®\WEB ã‚½ãƒ¼ã‚¹ã‚’ä½œã£ãŸã‚Šï¼Œè¤‡æ•°ã®change fileã‚’ã¾ã¨ã‚ã‚‹ã“ã¨ãŒã§ãã‚‹
\footnote{åŽ³å¯†ã«ã¯ï¼Œã“ã‚Œã¯{\tt CWEB}ã®ãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;ã‚‰ã—ã„ï¼Žåå‰ã®ç”±æ¥ã¯è‹±å˜
èªžãŒã€Œçµã¶ã€ã¨ã„ã†æ„å‘³ã&nbsp;ã‹ã‚‰ã§ã‚ã‚ã†ï¼ŽStar Warsã®æŸå¸å›½è»æˆ¦é—˜æ©Ÿã¨ã¯é–¢ä¿‚ã¯
ãªã„ã&nbsp;ã‚ã†ï¼Ž}ï¼Ž

\subsection{Web2Cã¨\TeX ã®ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«}

ã•ã¦ï¼Œ{\tt tangle}ã§{\tt tex.web}ã‚’å‡¦ç†ã™ã‚‹ã¨{\tt tex.p}ãŒç”Ÿæˆã•ã‚Œã‚‹ãŒï¼Œ
ç¾åœ¨ã¯Web2Cã¨ã„ã†å®Ÿè£…æ–¹æ³•ã§ã“ã‚Œã‚’å‡¦ç†ã—ã¦ã„ã‚‹ï¼Žè©³ç´°ã¯æ¾å±±\nobreak\cite{matsu3}
ã«è­²ã‚‹ãŒï¼Œ{\tt tex.web}ã«{\tt tex.ch}ã¨ã„ã†Web2Cå®Ÿè£…ç‰¹æœ‰ã®æ‹¡å¼µã‚„ã‚·ã‚¹
ãƒ†ãƒ&nbsp;ä¾å­˜éƒ¨åˆ†ï¼ˆå…¥å‡ºåŠ›ã¨ã‹ï¼Œæ™‚è¨ˆï¼‰ã‚’ç´ã‚ãŸãƒ‘ãƒƒãƒã‚’é©ç”¨ã—ã¦ï¼Œãã‚Œã‚’{\tt
tangle}ã«ã‹ã‘ã¦{\tt tex.p}ã‚’ç”Ÿæˆã™ã‚‹ï¼Žãã®å¾Œï¼Œ{\tt web2c}ã¨ã„ã†ãƒ—ãƒ­ã‚°ãƒ©
ãƒ&nbsp;ï¼ˆã¨ä»˜å±žã™ã‚‹å°ãƒ„ãƒ¼ãƒ«ï¼‰ã«ã‚ˆã£ã¦ï¼Œ{\tt tex.p}ã¯{\tt texini.c}, {\tt
tex0.c},~$\ldots$ã¨ã„ã†Cã‚½ãƒ¼ã‚¹ã«ã¾ã§å¤‰æ›ã•ã‚Œã‚‹ï¼Žãã‚Œã‚‰ã¨ï¼ˆã‚‚ã¨ã‚‚ã¨Cã‚½ãƒ¼
ã‚¹ã§æº–å‚™ã•ã‚Œã¦ã„ã‚‹ã‚·ã‚¹ãƒ†ãƒ&nbsp;ä¾å­˜éƒ¨åˆ†ã§ã‚ã‚‹ï¼‰{\tt texextra.c}ã¨ã‹ã‚’ã‚³ãƒ³ãƒ‘ã‚¤
ãƒ«ï¼Œãƒªãƒ³ã‚¯ã—ã¦ï¼Œã‚ˆã†ã‚„ãå®Ÿè¡Œå¯èƒ½å½¢å¼ãŒå‡ºæ¥ä¸ŠãŒã‚‹ã¨ã„ã†ã‚ã‘ã§ã‚ã‚‹ï¼Ž

ã“ã‚Œã‚’å›³ã«ã—ã¦ã¿ã‚ˆã†ï¼š
\jdAline[c]{\small\narrowbaselines\xymatrix{%
\texttt{tex.web}\ar[r]&amp;\fbox{\tt tangle}\ar[r]&amp;\texttt{tex.p}\ar[rr]^-{\rm
Web2C}&amp;&amp;\text{C source}\ar[rr]^-{\rm C\ compiler}&amp;&amp;\texttt{tex}\\
&amp;\texttt{tex.ch}\ar[u]}}

åŒæ§˜ã«ï¼Œ\pTeX ã®ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã¯æ¬¡ã®ã‚ˆã†ã«è¡Œã‚ã‚Œã‚‹\footnote{æœ€å¾Œã®C
compiler ã®ã¨ã“ã‚ã¯çœç•¥ã—ãŸï¼Žã¾ãŸï¼ŒåŽ³å¯†ã«ã¯{\tt ptex-base.ch}ã¨{\tt
ptex.web}ã‹ã‚‰{\tt ptex.ch}ã‚’ä½œã‚Šï¼Œãã‚Œã‚’é©ç”¨ã—ã¦{\tt tangle}ã«é£Ÿã‚ã›ã¦ã„
ã‚‹ãŒï¼Œãã“ã‚‰è¾ºã¯çœç•¥ï¼Ž}ï¼š

\jdAline[c]{\small\narrowbaselines\xymatrix{\texttt{%
tex.web}\ar[r]&amp;\fbox{\tt tie}\ar[r]&amp;\texttt{ptex.web}^*\ar[r]&amp;\fbox{\tt
tangle}\ar[r]&amp;\texttt{ptex.p}^* \ar[rr]^-{\rm Web2C}&amp;&amp;\text{C source}\\
&amp;\texttt{tex.ch}\ar[u]&amp;&amp;\texttt{ptex-base.ch}^*\ar[u] }}

ã•ã‚‰ã«ï¼Œä»Šå›žã®æº–ä¸»å½¹ã¨ã‚‚è¨€ãˆã‚‹\eTeX ã§ã¯ï¼Œã“ã†ãªã£ã¦ã„ã‚‹ï¼š
\jdAline[c]{\small\narrowbaselines\xymatrix{ {\tt
tex.web}\ar[r]&amp;\fbox{\tt tie}\ar[r]&amp;\texttt{etex.web}\ar[r]&amp;\fbox{\tt
tangle}\ar[r]&amp;\texttt{etex.p} \ar[rr]^-{\rm Web2C}&amp;&amp;\text{C source}\\
{\begin{array}{c}\texttt{etex.ch}^{\dagger}\\{\tt
etex.fix}^{\dagger}\end{array}}\ar[ur] &amp;{\begin{array}{c}{\tt
tex.ch0}^{\dagger}\\\texttt{tex.ch}\\\texttt{tex.ch1}^{\dagger}\\{\tt
tex.ech}^{\dagger}\\(\texttt{etex.web})\end{array}}\ar[r] &amp;\fbox{\tt
tie}\ar[r]&amp;\texttt{etex.ch}\ar[u] }}

ã“ã“ã§ï¼Œ$*$, $\dagger$ã¨ã‹ã¯ãƒ•ã‚¡ã‚¤ãƒ«ã®ã‚ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã‚’è¡¨ã—ã¦ã„ã‚‹ï¼ŽãªãŠï¼Œ
{\tt etex.fix}ã¯å®Ÿéš›ã«ã¯ä¸­èº«ã¯ãªã‹ã£ãŸï¼Ž

\newpage
ã“ã“ã‹ã‚‰ï¼Œç¬¬1ã®ç›®æ¨™ï¼Œã¤ã¾ã‚Š\pTeX ã«\eTeX ã®æ©Ÿèƒ½ã®ä¸€éƒ¨ã‚’ãƒžãƒ¼ã‚¸
ã™ã‚‹ã“ã¨ï¼Œã‚’å®Ÿç¾ã•ã›ã‚‹ãŸã‚ã«ã¯ï¼Œå¤§é›‘æŠŠã«è¨€ãˆã°ï¼Œ${\tt tex.web}+{\tt
tex.ch}+\text{\tt ptex-bash.ch}^*+{\tt etex.ch}^{\dagger}$ã¨ã™ã‚‹ã‹ï¼Œ${\tt
tex.web}+{\tt tex.ch}+{\tt etex.ch}^{\dagger}+\text{\tt ptex-bash.ch}^*$ã¨
ï¼ˆã“ã“ã§ã®åŠ&nbsp;æ³•ã¯ã‚‚ã¡ã‚ã‚“éžå¯æ›ã§ã‚ã‚‹ï¼ï¼‰ã™ã‚Œã°ã‚ˆã„ã&nbsp;ã‚ã†ï¼Œã¨æƒ³åƒãŒã¤ãï¼Ž
ã©ã¡ã‚‰ã‚’é¸ã‚“ã§ã‚‚ã‚ˆã‹ã£ãŸãŒï¼Œã“ã“ã§ã¯\pTeX ã‚’ãƒ™ãƒ¼ã‚¹ã¨ã—ãŸã„ã¨ã„ã†æ„å‘³ã§ï¼Œ
å‰è€…ã‚’æŽ¡ç”¨ã™ã‚‹ã“ã¨ã«ã—ãŸ\footnote{ã“ã‚Œã«ã‚ˆã‚ŠprojectåãŒ\emph{$\bm
\epsilon$-\pTeX}ã¨æ±ºã¾ã£ãŸï¼Ž$\varepsilon$-(\pTeX)ã®ã¤ã‚‚ã‚Šã§ã‚
ã‚‹ï¼Žã‚‚ã¡ã‚ã‚“ã“ã®æ–‡æ›¸ã‚‚\epTeX
ã§çµ„ç‰ˆã—ã¦ã„ã‚‹ï¼Ž}ï¼Ž

\section{$\bm \epsilon$-\TeX ã®ãƒžãƒ¼ã‚¸}
\subsection{\pTeX ã®æº–å‚™}

ã¨ã„ã†ã‚ã‘ã§ï¼Œä¸»ã«ç·¨é›†ã™ã‚‹ã®ã¯{\tt etex.ch}ã§ã‚ã‚‹ï¼Ž
ã—ã‹ã—ï¼Œ\pTeX ã‚’å…ƒã«ä½œæ¥­ã‚’ã™ã‚‹ã®ã§ï¼Œ\pTeX ãŒã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã§ãã‚‹ã“ã¨ã‚’ç¢ºã‹ã‚
ã¦ãŠã‹ã­ã°ãªã‚‰ãªã„ï¼Žãã®æ‰‹é&nbsp;†ã¯å¤§ã¾ã‹ã«ã¯\TeX wiki~\cite{texwiki}ã®å¾Œ
åŠéƒ¨ã«ã‚ã‚‹ã€Œå¤ã„æƒ…å&nbsp;±ã€ã«ã‚ã‚‹é€šã‚Šã§ã‚ã‚‹ï¼Žã—ã‹ã—ï¼Œte\TeX\ 3.0ä¸‹ã§ã¯ç„¡äº‹ã«ã‚
ã‚‹ã‚ˆã†ã«ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ãŒã§ãã‚‹ã®ã&nbsp;ãŒï¼Œ\TeX\ live 2007ã&nbsp;ã¨Web2Cã®ãƒãƒ¼ã‚¸ãƒ§ãƒ³ãŒ
æ–°ã—ãï¼Œé€”ä¸­ã§ä»¥ä¸‹ã®ã‚ˆã†ãªã‚¨ãƒ©ãƒ¼ã‚’å‡ºã—ã¦æ­¢ã¾ã£ã¦ã—ã¾ã£ãŸï¼š
\begin{adjustvboxheight}
\narrowbaselines\small
\begin{verbatim}
ã€€ã€€gcc -DHAVE_CONFIG_H  -I. -I.. -I../.. -I../..   -O2 -s -march=pentium-m -fomit-f
ã€€ã€€rame-pointer  -c ptexextra.c -o ptexextra.o
ã€€ã€€ptexextra.c: In function 'parse_options':
ã€€ã€€ptexextra.c:956: error: too few arguments to function 'printversionandexit'
ã€€ã€€ptexextra.c: In function 'getjobname':
ã€€ã€€ptexextra.c:1722: error: number of arguments doesn't match prototype
ã€€ã€€texcoerce.h:908: error: prototype declaration
ã€€ã€€make: *** [ptexextra.o] Error 1
\end{verbatim}
\end{adjustvboxheight}
ã“ã‚Œã¯{\tt printversionandexit}é–¢æ•°ã¨{\tt getjobname}é–¢æ•°ã®å®£è¨€ãŒWeb2Cã®
version upã«ä¼´ã£ã¦å¤‰ã‚ã£ã¦ã—ã¾ã£ãŸã®ãŒåŽŸå›&nbsp;ã§ã‚ã‚‹ï¼Žä¿®æ­£ç®‡æ‰€ã¯
{\tt ptex756.diff}ã«diffã®å½¢ã§æ›¸ã„ã¦ã„ã‚‹ï¼Ž
ã¾ãŸï¼Œ{\tt tftopl}ã¨ã‹ã«ã¤ã„ã¦ã¯{\tt tangle}ã®æ®µéšŽã§ã‚¨ãƒ©ãƒ¼ãŒå‡ºã‚‹ã‚ˆã†ã§ã‚
ã‚‹ãŒï¼Œã“ã‚Œã‚‰ã¯æœ¬projectã¨é–¢ä¿‚ãªã„ã®ã§çœç•¥ã™ã‚‹ï¼š
\begin{adjustvboxheight}
\narrowbaselines\small
\begin{verbatim}
ã€€ã€€This is TIE, CWEB Version 2.4. (Web2C 7.5.6)
ã€€ã€€Copyright (c) 1989,1992 by THD/ITI. All rights reserved.
ã€€ã€€(../tftopl.web)
ã€€ã€€(../tftopl.ch)
ã€€ã€€....500....1000....1500
ã€€ã€€(No errors were found.)
ã€€ã€€../tangle ./tftopl.web tftopl.ch
ã€€ã€€This is TANGLE, Version 4.5 (Web2C 7.5.6)
ã€€ã€€*1*6*18*26*44*88*96*100
ã€€ã€€! Hmm... 1 of the preceding lines failed to match. (change file l.378)
ã€€ã€€@y
ã€€ã€€   *114*126
ã€€ã€€Writing the output file.....500..
ã€€ã€€Done.
ã€€ã€€(Pardon me, but I think I spotted something wrong.)
ã€€ã€€make: *** [tftopl.p] Error 1
\end{verbatim}
\end{adjustvboxheight}

ã•ã¦ï¼Œã¨ã‚Šã‚ãˆãšã®ãŸãŸãå°ã¨ã—ã¦\pTeX ã®\WEB ã‚½ãƒ¼ã‚¹ï¼Œã¤ã¾ã‚Š{\tt
tex.web}, {\tt tex.ch}, {\tt ptex-base.ch}ã‚’1ã¤ã«ã¾ã¨ã‚ãŸ{\tt
ptex-orig.web}ã‚’{\tt tie}ã«ã‚ˆã£ã¦ä½œæˆã—ãŸï¼Žãã®å¾Œï¼Œ{\tt ptex-orig.web}ä¸­
ã®æœ€åˆã®éƒ¨åˆ†ã§ã‚ã‚‹ã€Œ{\tt This is TeX}ã€ã®éƒ¨åˆ†ãªã©ã‚’è‹¥å¹²ä¿®æ­£ã—ãŸï¼Žä¿®æ­£ç®‡æ‰€ã¯
diffã®å½¢ã§{\tt ptex-orig.diff}ã¨ã—ã¦ã‚ã‚‹ï¼Ž

\subsection{$\bm\epsilon$-\TeX ã®æ©Ÿèƒ½}
\eTeX ã®ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«\nobreak\cite{etexman}ã‚’å…ƒã«\eTeX ã®ä¸»ãªæ©Ÿèƒ½ã‚’è¦‹ã¦ã¿ã‚‹ã“ã¨ã«ã™ã‚‹ï¼Ž
\eTeX ã«ã¯Compatibility modeã¨Extended modeã®2ã¤ãŒå­˜åœ¨ã—ï¼Œå‰è€…ã§ã¯\eTeX
ç‰¹æœ‰ã®æ‹¡å¼µã¯ç„¡åŠ¹ã«ãªã‚‹ã®ã§ã¤ã¾ã‚‰ãªã„ï¼Žå¾Œè€…ãŒãŠã‚‚ã—ã‚ã„ï¼Ž

æ‹¡å¼µæ©Ÿèƒ½ã‚’ä½¿ã†ã«\xspcode`*=3\xspcode`-=3{}ã¯ãƒ•ã‚¡ã‚¤ãƒ«åã‚’æ¸¡ã™ã¨ãã«{\tt *}
ã‚’ã¤ã‘ã‚‹ã‹ã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‚ªãƒ—ã‚·ãƒ§ãƒ³ã¨ã—ã¦{\tt -etex}ã‚¹ã‚¤ãƒƒãƒã‚’ã¤ã‘ã‚Œã°ã„ã„
ãŒï¼Œ\eTeX æ‹¡å¼µã«é–¢ã‚ã‚‹è¿½åŠ&nbsp;ãƒžã‚¯ãƒ­\footnote{ä¾‹ãˆã°ï¼Œ\TeX ã§ã¯ãƒ¬ã‚¸ã‚¹ã‚¿ã«
\verb+\@tempcnta+ãªã©ã®ã€Œåˆ¥
åã€ã‚’ã¤ã‘ã‚‹ã“ã¨ãŒéžå¸¸ã«ã‚ˆãã‚ã‚‹ï¼Žã“ã®æ©Ÿèƒ½ã«ã¤ã„ã¦ã¯æˆ‘ã€…ãŒå®Ÿéš›ã«ä½¿ã†ã®ã¯ã¯plainãƒžã‚¯ãƒ­ã‚„
\LaTeX ãƒžã‚¯ãƒ­ã«ã‚ˆã£ã¦æä¾›ã•ã‚Œã¦ãŠã‚Šï¼Œå½“ç„¶256å€‹åˆ¶é™ã®ç’°å¢ƒä¸‹ã‚’å‰æã¨ã—ã¦çµ„
ã¾ã‚Œã¦ã„ã‚‹ï¼Ž}ã¯å½“ç„¶ãªãŒã‚‰ãã‚Œã&nbsp;ã‘ã§
ã¯é§„ç›®ã§ã‚ã‚‹ï¼Žã€Œplainãƒžã‚¯ãƒ­ for \eTeXã€ï¼ˆ{\tt etex.fmt}ã¨ã„ã†ã®ãŒä¸€ç•ªãƒžã‚·
ã‹ãªï¼‰ã§ã¯è‡ªå‹•çš„ã«è¿½åŠ&nbsp;ãƒžã‚¯ãƒ­ã§ã‚ã‚‹{\tt etex.src}ãŒå‘¼ã°ã‚Œã‚‹ï¼Ž\LaTeX ä¸‹ã§ã¯
ã¡ã‚‡ã†ã©{\tt etex.src}ã«å¯¾å¿œã—ãŸ{\tt etex} ãƒ‘ãƒƒã‚±ãƒ¼ã‚¸ã‚’èª­ã¿è¾¼ã‚€å¿…è¦ãŒã‚ã‚‹ï¼Ž

\paragraph{ãƒ¬ã‚¸ã‚¹ã‚¿ã®å¢—åŠ&nbsp;}
æœ€åˆã«è¿°ã¹ãŸã‚ˆã†ã«ï¼Œ\TeX ã§ã¯6ç¨®é¡žã®ãƒ¬ã‚¸ã‚¹ã‚¿ãŒå„256å€‹ãšã¤åˆ©ç”¨ã§ãã‚‹ï¼Žã
ã‚Œãžã‚Œã®ãƒ¬ã‚¸ã‚¹ã‚¿ã«ã¯\verb+\dimen75+ãªã©ã®ã‚ˆã†ã«0\,ã€œ\,255ã®ç•ªå·ã§æŒ‡å®šã§ãã‚‹
ä»–ï¼Œäºˆã‚åˆ¥åã®å®šç¾©ã‚’ã—ã¦ãŠã‘ã°ãã‚Œã«ã‚ˆã£ã¦æŒ‡å®šã™ã‚‹ã“ã¨ã‚‚ã§ã
ã‚‹\makeatletter\advance\c@footnote-1\footnotemark\makeatotherï¼Ž
ã“ã‚Œã‚‰ã®ã„ãã¤ã‹ã¯ç‰¹æ®Šãªç”¨é€”ã«ç”¨ã„ã‚‰ã‚Œã‚‹ï¼ˆä¾‹ãˆã°
\verb+\count0+ã¯ãƒšãƒ¼ã‚¸ç•ªå·ãªã©ã®ã‚ˆã†ã«ï¼‰ã“ã¨ã«ãªã£ã¦ã„ã‚‹ã®ã§ï¼Œã•ã‚‰ã«user
ãŒä½¿ãˆã‚‹ãƒ¬ã‚¸ã‚¹ã‚¿ã¯æ¸›å°‘ã™ã‚‹ï¼Ž

\eTeX ã§ã¯ï¼Œè¿½åŠ&nbsp;ã®ãƒ¬ã‚¸ã‚¹ã‚¿ã¨ã—ã¦ç•ªå·ã§è¨€ã†ã¨256\,ã€œ\,32767ãŒä½¿ç”¨ã§ãã‚‹ã‚ˆã†ã«
ãªã£ãŸï¼Žä¸Šã®pdfã«ã‚ˆã‚‹ã¨æœ€åˆã®0\,ã€œ\,255ã¨é•ã£ã¦è‹¥å¹²ã®åˆ¶é™ã¯ã‚ã‚‹ã‚ˆã†ã&nbsp;ãŒï¼Œã
ã‚Œã¯äº›ç´°ãªè©±ã§ã‚ã‚‹ï¼Žè¿½åŠ&nbsp;ã•ã‚ŒãŸï¼ˆå„ç¨®é¡žã‚ãŸã‚Šï¼‰$32768-256=32512$å€‹ã®ãƒ¬ã‚¸
ã‚¹ã‚¿ã¯ï¼Œãƒ¡ãƒ¢ãƒªã®åŠ¹çŽ‡ã‚’é‡è¦–ã™ã‚‹ãŸã‚sparse registerã¨ã—ã¦ï¼Œã¤ã¾ã‚Šï¼Œå¿…è¦ãªæ™‚ã«å§‹ã‚ã¦ãƒ„ãƒªãƒ¼æ§‹é€&nbsp;ã®ä¸­ã§ç¢ºä¿
ã•ã‚Œã‚‹ã‚ˆã†ã«ãªã£ã¦ã„ã‚‹ï¼Ž

\paragraph{å¼ãŒä½¿ç”¨å¯èƒ½ã«}
\TeX ã«ãŠã‘ã‚‹æ•°é‡ã®è¨ˆç®—ã¯å……å®Ÿã—ã¦ã„ã‚‹ã¨ã¯è¨€ã„é›£ã„ï¼Žä¾‹ãˆã°ï¼Œ

ã€€\verb+\dimen123+${}\leftarrow($\verb+\dimen42+${}+{}$\verb+\@tempdima+
$)/2$

\noindent ã¨ã„ã†è¨ˆç®—ã‚’å…ƒã€…ã®\TeX ã§æ›¸ã“ã†ã¨ã™ã‚‹ã¨ï¼Œ
\begin{verbatim}
ã€€ã€€\dimen123=\dimen42 \advance\dimen123 by \@tempdima \dimen123=0.5\@tempdima
\end{verbatim}
ã®ã‚ˆã†ã«æ›¸ã‹ãªã„ã¨ã„ã‘ãªã„ï¼Žä»£å…¥ï¼ŒåŠ&nbsp;ç®—ä»£å…¥ï¼Œä¹—ç®—ä»£å…¥ï¼Œé™¤ç®—ä»£å…¥ãã‚‰ã„ã—ã‹
æ¼”ç®—ãŒç”¨æ„ã•ã‚Œã¦ã„ãªã„çŠ¶æ…‹ã«ãªã£ã¦ã„ã‚‹ï¼ˆä¸Šã®ã‚³ãƒ¼ãƒ‰ã®ã‚ˆã†ã«ï¼Œ$d_2\mathrel{+\!\!=}
0.8 d_1$ã¨ã„ã†ã‚ˆã†ãªå®šæ•°å€ã‚’å†&nbsp;ã™ã‚‹ã“ã¨ã¯å¹³æ°—ï¼‰ï¼Ž

\eTeX ã§ã¯ï¼Œãã®ãƒ¬ã‚¸ã‚¹ã‚¿ã®æ¼”ç®—ã«ï¼Œä»–ã®ãƒ—ãƒ­ã‚°ãƒ©ãƒŸãƒ³ã‚°è¨€èªžã§ä½¿ã‚ã‚Œã¦ã„ã‚‹ã‚ˆã†ãªæ•°å¼ã®è¡¨ç¾ãŒä½¿ãˆã‚‹ã‚ˆã†ã«ãªã£ãŸï¼Žä¸Šã®PDFã§ã¯å®Ÿä¾‹ã¨ã—ã¦
\begin{verbatim}
ã€€ã€€\ifdim \dimexpr (2pt-5pt)*\numexpr 3-3*13/5\relax + 34pt/2&lt;\wd20
\end{verbatim}
ãŒæ›¸ã‹ã‚Œã¦ã„ã‚‹ï¼Žã“ã‚Œã¯ï¼Œ\def\mpt{\,\mathrm{pt}}
\[
 32\mpt=(2\mpt-5\mpt)\left(3-\mathop{\mathrm{div}}(3\cdot 13,5)\right)
+\frac{34\mpt}{2}&lt;\text{{\tt \char'134 box20}ã®å¹…}
\]
ãŒçœŸã‹å½ã‹ã‚’åˆ¤å®šã—ã¦ã„ã‚‹ã“ã¨ã«ãªã‚‹\footnote{divã¯æ•´æ•°é™¤ç®—ã‚’è¡¨ã—ãŸã¤ã‚‚ã‚Š
ã§ã‚ã‚‹ï¼Žæ•´æ•°é™¤ç®—ã¯ä½™ã‚ŠãŒè¢«é™¤æ•°ã®ç¬¦å·ã¨ç­‰ã—ããªã‚‹ã‚ˆã†ã«è¨ˆç®—ã•ã‚Œã‚‹ï¼Ž}ï¼Ž

\newpage
\paragraph{{\tt\char'134 middle} primitive}
\TeX ã«\verb+\left+, \verb+\right+ã¨ã„ã†primitiveãŒã‚ã‚Šï¼Œãã‚Œã‚’ä½¿ãˆã°æ‹¬
å¼§ã®å¤§ãã•ãŒè‡ªå‹•èª¿æ•´ã•ã‚Œã‚‹ã®ã¯ã‚ˆãçŸ¥ã‚‰ã‚Œã¦ã„ã‚‹ï¼Ž\eTeX ã§ã¯ï¼Œ
ã•ã‚‰ã«\verb+\middle+ primitiveãŒè¿½åŠ&nbsp;ã•ã‚ŒãŸï¼Ž

å…·ä½“ä¾‹ã‚’è¿°ã¹ã‚‹ï¼Ž
\def\set#1#2{\setbox0=\hbox{$\displaystyle #1,#2$}%
\left\{\, \vphantom{\copy0}#1 \,\right|\!\left.\, \vphantom{\copy0}#2 \,\right\}}
\def\eset#1#2{\left\{\, #1 \,\middle|\, #2 \,\right\}}
\[ \set{n+\frac12}{n\in \omega} \eset{n+\frac12}{n\in \omega} \]

ã“ã‚Œã¯ä»¥ä¸‹ã®sourceã§å‡ºåŠ›ã—ãŸã‚‚ã®ã§ã‚ã‚‹ï¼š
\begin{adjustvboxheight}
\narrowbaselines
\begin{verbatim}
ã€€ã€€\def\set#1#2{\setbox0=\hbox{$\displaystyle #1,#2$}%
ã€€ã€€\left\{\, \vphantom{\copy0}#1 \,\right|\!\left.\, \vphantom{\copy0}#2 \,\right\}}
ã€€ã€€\def\eset#1#2{\left\{\, #1 \,\middle|\, #2 \,\right\}}
ã€€ã€€\[ \set{n+\frac12}{n\in \omega} \eset{n+\frac12}{n\in \omega} \]
\end{verbatim}
\end{adjustvboxheight}

ä¸¡æ–¹ã¨ã‚‚é›†åˆã®è¡¨è¨˜ã‚’è¡Œã†ã‚³ãƒžãƒ³ãƒ‰ã§ã‚ã‚‹ï¼Ž\TeX æµã®\verb+\set+ã§ã¯2ã¤ã®
\verb+\left+, \verb+\right+ã®çµ„ã§å®Ÿç¾ã•ã›ãªã‘ã‚Œã°ãªã‚‰ãšï¼Œãã®ãŸã‚ã«$|$ã®
å·¦å´ã¨å³å´ã«å…¥ã‚‹å¼ã®æœ€å¤§å¯¸æ³•ã‚’æ¸¬å®šã™ã‚‹ã¨ã„ã†é¢å€’ãªæ–¹æ³•ã‚’ä½¿ã£ã¦ã„ã‚‹ï¼Žãã®
ä¸Šï¼Œã“ã®å®šç¾©ã§ã¯\verb+\textstyle+ä»¥ä¸‹ã®æ•°å¼ï¼ˆæ–‡ç«&nbsp;ä¸­ã®æ•°å¼ã¨ã‹ï¼‰ã§ã¯ãã®ã¾
ã¾ä½¿ãˆãšï¼Œãã‚Œã«ã‚‚å¯¾å¿œã•ã›ã‚ˆã†ã¨ã™ã‚‹ã¨é¢å€’ã«ãªã‚‹ï¼Žä¸€æ–¹ï¼Œ\eTeX æµã®
\verb+\eset+ã§ã¯ï¼Œä½•ã‚‚è€ƒãˆãšã«
\verb+\left+, \verb+\middle+, \verb+\right+ã&nbsp;ã‘ã§å®Ÿç¾ã§ãã‚‹ï¼Ž

\paragraph{\TeXXeT\ \rm({\tt TeX-{}-XeT})}
left-to-rightã¨right-to-leftã‚’æ··æ¤ã§ãã‚‹ã¨ã„ã†æ©Ÿèƒ½ã§ã‚ã‚‹ã‚‰ã—ã„ï¼Ž
ãƒ˜ãƒ–ãƒ©ã‚¤èªžã‚ãŸã‚Šã®çµ„ç‰ˆã«ä½¿ãˆã‚‹ã‚‰ã—ã„ãŒï¼Œã‚ˆãçŸ¥ã‚‰ãªã„ï¼Ž
ã“ã“ã§ã®RtoLã¯LtoRã«çµ„ã‚“ã&nbsp;ã‚‚ã®ã‚’é€†é&nbsp;†ã«ã—ã¦ã„ã‚‹ã&nbsp;ã‘ã®ã‚ˆã†ãª
æ°—ãŒã™ã‚‹ï¼Ž
%\footnote{ä¾‹ãˆã°{\TeXXeTstate=1\beginR ``Tea, Earl Grey,
%hot.''\endR}ã®ã‚ˆã†ã«ï¼Ž}ï¼Ž
\eteiri

ã¨ã‚Šã‚ãˆãšä¸€ç›®ã«ã¤ããã†ãªæ‹¡å¼µæ©Ÿèƒ½ã¨ã„ã£ãŸã‚‰ã“ã‚Œãã‚‰ã„ã&nbsp;ã‚ã†ã‹ï¼Žä»–ã«ã‚‚
tracingæ©Ÿèƒ½ã‚„æ¡ä»¶åˆ¤æ–­æ–‡ã®å¼·åŒ–ãªã©ã‚ã‚‹ãŒï¼Œãã“ã‚‰è¾ºã¯ãƒ‘ãƒƒã¨ã—ãªã„ã®ã§ã“ã“
ã§ç´¹ä»‹ã™ã‚‹ã®ã¯çœç•¥ã™ã‚‹ã“ã¨ã«ã—ã‚ˆã†ï¼Ž

ã“ã®ä¸­ã§ï¼Œ\TeXXeT æ©Ÿèƒ½ã&nbsp;ã‘ã¯ï¼Œã€Œ\TeX ã‹ã‚‰\pTeX ã¸ã®å¤‰æ›´éƒ¨åˆ†ã¨ã‹ã¡ã‚ã£ã¦ï¼Œ
ä½œæ¥­ã«éžå¸¸ã«æ‰‹é–“ãŒã‹ã‹ã‚‹ã€ã¨äºˆæƒ³ã—ãŸï¼ˆæ&nbsp;¹æ‹&nbsp;ã¯ãªã—ï¼Žã‚ãˆã¦è¨€ãˆã°å‹˜ï¼‰ï¼Žãã‚Œ
ã«ï¼Œåƒ•ã¯å³â†’å·¦ã®è¨€èªžã‚’ã‚¢ãƒ©ãƒ“ã‚¢èªžã‚„ãƒ˜ãƒ–ãƒ©ã‚¤èªžãã‚‰ã„ã—ã‹çŸ¥ã‚‰ãšï¼Œã“ã‚Œã‚‰ã¯
Arab\TeX ãªã©ã‚’ä½¿ã†ã“ã¨ã§\pLaTeX ã§ã‚‚å…¥åŠ›ã§ãã‚‹ã®ã§ï¼Œã²ã¨ã¾ãš\TeXXeT æ©Ÿèƒ½ã&nbsp;
ã‘ã¯å®Ÿè£…ã‚’è¦‹é€ã‚Š\footnote{ç›®æ¬¡ã‹ã‚‰ã‚‚åˆ†ã‹ã‚‹é€šã‚Šï¼Œæœ€çµ‚çš„ã«ã¯å®Ÿè£…ã™ã‚‹ã“ã¨ã«
ãªã‚‹ãŒï¼Ž}ï¼Œä»–ã¯ã§ãã‚‹é™ã‚Šå®Ÿè£…ã™ã‚‹ã“ã¨ã«ã—ãŸï¼Ž

\subsection{{\tt etex.ch}ã®æ”¹å¤‰}
ã“ã“ã‹ã‚‰å®Ÿéš›ã®ä½œæ¥­ã§ã‚ã‚Šï¼Œã²ã©ãé€€å±ˆãªä½œæ¥­ã§ã‚ã‚‹ï¼Ž
ã¾ãš{\tt etex.ch}å…ˆé&nbsp;­ã®è‘—ä½œæ¨©ç­‰ã«é–¢ã™ã‚‹éƒ¨åˆ†ã‚’
æ›¸ãæ›ãˆã¦ãŠãï¼Ž

{\tt etex.ch}ä¸­ã®{\tt @x ... @y ... @z}ã®ã¨ã“ã‚ã«ã¯ã‚ã‚ŠãŒãŸã„ã“ã¨ã«ã‚³ãƒ¡
ãƒ³ãƒˆãŒã¤ã„ã¦ã„ã¦ï¼Œã©ã†ã„ã†ç†ç”±ã§ãƒ‘ãƒƒãƒãŒå½“ãŸã‚‹ã®ã‹ã¨ï¼Œå½“ãŸã‚‹è¡Œç•ªå·ã¾ã§ã‚
ã‹ã‚‹ã‚ˆã†ã«ãªã£ã¦ã„ã‚‹\footnote{ä½†ã—ï¼Œã“ã“ã«æ›¸ã‹ã‚Œã¦ã„ã‚‹è¡Œç•ªå·ã¯{\tt
tex.web}ã«å¯¾ã—ã¦ã®ãã‚Œã§ã‚ã‚ã†ï¼Žã—ã‹ã—{\tt ptex-orig.web}ã§ã‚‚ã‚ã¾ã‚Šè¡Œç•ª
å·ã¯å¤‰ã‚ã‚‰ãªã„ï¼Ž}ï¼Žæ¬¡ã¯{\tt etex.ch}ã®æŠœç²‹ã§ã‚ã‚‹ï¼š
\begin{adjustvboxheight}
\narrowbaselines\small
\begin{verbatim}
ã€€ã€€%---------------------------------------
ã€€ã€€@x [15] m.208 l.4087 - e-TeX saved_items
ã€€ã€€@d un_vbox=24 {unglue a box ( \.{\\unvbox}, \.{\\unvcopy} )}
ã€€ã€€@y
ã€€ã€€@d un_vbox=24 {unglue a box ( \.{\\unvbox}, \.{\\unvcopy} )}
ã€€ã€€  {( or \.{\\pagediscards}, \.{\\splitdiscards} )}
ã€€ã€€@z
ã€€ã€€%---------------------------------------
ã€€ã€€@x [15] m.208 l.4097 - e-TeX TeXXeT
ã€€ã€€@d valign=33 {vertical table alignment ( \.{\\valign} )}
ã€€ã€€@y
ã€€ã€€@d valign=33 {vertical table alignment ( \.{\\valign} )}
ã€€ã€€  {or text direction directives ( \.{\\beginL}, etc.~)}
ã€€ã€€@z
ã€€ã€€%---------------------------------------
ã€€ã€€@x [15] m.208 l.4113 - e-TeX middle
ã€€ã€€@d left_right=49 {variable delimiter ( \.{\\left}, \.{\\right} )}
ã€€ã€€@y
ã€€ã€€@d left_right=49 {variable delimiter ( \.{\\left}, \.{\\right} )}
ã€€ã€€  {( or \.{\\middle} )}
ã€€ã€€@z
%---------------------------------------
\end{verbatim}
\end{adjustvboxheight}

\TeXXeT æ©Ÿèƒ½ã®å®Ÿè£…ã¯ã¨ã‚Šã‚ãˆãšè¦‹é€ã£ãŸã¨æ›¸ã„ãŸã®ã§ï¼Œ
ä¸Šã§è¨€ã†ã¨ã“ã‚ã®{\tt e-TeX TeXXeT}ãªã©ã¨ã‚³ãƒ¡ãƒ³ãƒˆãŒæŒ¯ã‚‰ã‚Œã¦ã„ã‚‹éƒ¨åˆ†ã‚’ãƒãƒƒã‚µãƒª
å‰Šé™¤ã™ã‚‹ã¨ã¨ã‚‚ã«ï¼Œ{\tt ptex-orig.web}ã«ãã®ã¾ã¾{\tt etex.ch}ãŒé©ç”¨ã§ããª
ã„ã¨ã“ã‚ã‚’èª¿ã¹ï¼Œ{\tt tex.web}ã¨{\tt ptex-orig.web}ã‚‚è¦‹ãªãŒã‚‰ä¿®æ­£ã—ã¦ã„ãï¼Ž
\eTeX æ‹¡å¼µã®æœ¬è³ªçš„ãªéƒ¨åˆ†ã¯ï¼Œï¼ˆ\pTeX ã§ã‚‚ãã†ã&nbsp;ã£ãŸãŒï¼‰{\tt etex.ch}ã®å¾Œ
åŠéƒ¨ã®ä»¥ä¸‹ã®éƒ¨åˆ†ã«é›†ä¸­ã—ã¦ç¾ã‚Œã‚‹ã®ã§ï¼Œãã“ã§ã‚‚
\TeXXeT é–¢é€£ã¨æ€ã‚ã‚Œã‚‹å&nbsp;´æ‰€ã‚’å‰Šé™¤ã—ãŸï¼Ž
\begin{adjustvboxheight}
\narrowbaselines\small
\begin{verbatim}
ã€€ã€€%---------------------------------------
ã€€ã€€@x [54] m.1379 l.24945 - e-TeX additions
ã€€ã€€@* \[54] System-dependent changes.
ã€€ã€€@y
ã€€ã€€@* \[53a] The extended features of \eTeX.
ã€€ã€€ï¼ˆä¸­ç•¥ï¼‰
ã€€ã€€@* \[54] System-dependent changes.
ã€€ã€€@z
ã€€ã€€%---------------------------------------
\end{verbatim}
\end{adjustvboxheight}

å‰Šé™¤ã—ã™ãŽãŸã‚ˆã†ãªå&nbsp;´åˆã¯{\tt tangle}æ™‚ã«è­¦å‘Šãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤ºã•ã‚Œã‚‹ï¼ˆæ–­ç‰‡
ãŒæ¬&nbsp;ã‘ã¦ã„ãŸå&nbsp;´åˆï¼‰ã‹ï¼ŒC sourceã®ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã§ã‚¨ãƒ©ãƒ¼ãŒå‡ºã‚‹ã®ã§ï¼Œé€€å±ˆã§ã¯ã‚ã£
ãŸãŒï¼Œãã‚“ãªã«åŽ³ã—ãã¯ç„¡ã‹ã£ãŸï¼Ž

ãªãŠï¼Œ{\tt ptex-orig.web}ã«ãã®ã¾ã¾{\tt etex.ch}ãŒé©ç”¨ã§ããª
ã„ã¨ã“ã‚ã‚’èª¿ã¹ã‚‹ã®ã¯ç°¡å˜ã§ã‚ã‚‹ï¼Žãã®ã‚ˆã†ãªã¨ã“ã‚ãŒã‚ã£ãŸå&nbsp;´åˆï¼Œ{\tt
tie}ã§é©ç”¨å¾Œã®\WEB ã‚½ãƒ¼ã‚¹ã‚’ä½œã‚ã†ã¨ã™ã‚‹ã¨ï¼Œä»¥ä¸‹ã®ã‚ˆã†ãªãƒ¡ãƒƒã‚»ãƒ¼ã‚¸ãŒè¡¨ç¤º
ã•ã‚Œã‚‹ã‹ã‚‰ã§ã‚ã‚‹ï¼Ž
\begin{adjustvboxheight}
\narrowbaselines\small
\begin{verbatim}
ã€€ã€€[h7k eptex]$ tie -m ep.web  ptex-orig.web ../etexdir/etex.ch
ã€€ã€€This is TIE, CWEB Version 2.4. (Web2C 7.5.6)
ã€€ã€€Copyright (c) 1989,1992 by THD/ITI. All rights reserved.
ã€€ã€€(ptex-orig.web)
ã€€ã€€(../etexdir/etex.ch)
ã€€ã€€....500....1000....1500....2000....2500....3000....3500....4000....4500....5000.
ã€€ã€€...5500....6000....6500....7000....7500....8000....8500....9000....9500....10000
ã€€ã€€....10500....11000....11500....12000....12500....13000....13500....14000....1450
ã€€ã€€0....15000....15500....16000....16500....17000....17500....18000....18500....190
ã€€ã€€00....19500....20000....20500....21000....21500....22000....22500....23000....23
ã€€ã€€500....24000....24500....25000....25500....26000....26500....27000....27500....2
ã€€ã€€8000....28500..
ã€€ã€€! Change file entry did not match (file ../etexdir/etex.ch, l.200).

ã€€ã€€(Pardon me, but I think I spotted something wrong..)
\end{verbatim}
\end{adjustvboxheight}
ã¡ã‚‡ã£ã¨ãšã¤{\tt etex.ch}ã‚’æ”¹å¤‰ã™ã‚‹ã”ã¨ã«ä¸Šã®ã‚ˆã†ãªã‚³ãƒžãƒ³ãƒ‰ã‚’èµ°ã‚‰ã›ã‚Œã°ï¼Œ
æ¬¡ã«ä¿®æ­£ã™ã‚‹ã¹ãå&nbsp;´æ‰€ãŒã‚ã‹ã‚‹ã¨ã„ã†è©±ã§ã‚ã‚‹ï¼Ž

\subsection{\trip\ test, \etrip\ test}
\trip\ testã¨ã¯ï¼ŒKnuthæ•™æŽˆã«ã‚ˆã‚‹\TeX ã®debugã®è£œåŠ©ãƒ„ãƒ¼ãƒ«ã§ã‚ã‚‹ï¼Žã“ã‚Œã¯\TeX
ã®ã‚½ãƒ¼ã‚¹ã‚³ãƒ¼ãƒ‰ã®å…¨éƒ¨åˆ†ã‚’æ¸¡ã‚‹ã‚ˆã†ã«ä½œã‚‰ã‚ŒãŸãƒ†ã‚¹ãƒˆå…¥åŠ›ã§ã‚ã‚Šï¼Œå¤§é‡ã®logã‚’
å‡ºåŠ›ã™ã‚‹ï¼Žä¸€åº¦è‡ªåˆ†ã®è¨ˆç®—æ©Ÿã§\trip\ testã‚’è¡Œã„ï¼Œãã®çµæžœãŒã€Œæ­£ã—ã„ã€å‡ºåŠ›ã¨
ç•°ãªã£ã¦ã„ãŸãªã‚‰ï¼Œãã‚Œã¯ã©ã“ã‹ã«bugãŒæ½œã‚“ã§ã„ã‚‹ã«é•ã„ãªã„ã¨ã„ã†ã“ã¨ã‚’æ„
å‘³ã™ã‚‹ï¼ŽKnuthæ•™æŽˆè‡ªèº«ã‚‚ï¼ŒKnuth~\cite{trip}ã®ä¸­ã§ä»¥ä¸‹ã®ã‚ˆã†ã«è¿°ã¹ã¦ã„ã‚‹ï¼Ž
\begin{adjustvboxheight}
\narrowbaselines\begin{indented}{2zw}
If somebody claims to have a correct implementation of \TeX, I will not
believe it until I see that {\tt TRIP.TEX} is translated properly.
I propose, in fact, that a program must meet two criteria before it
can justifiably be called \TeX: (1)~The person who wrote it must be
happy with the way it works at his or her installation; and (2)~the
program must produce the correct results from {\tt TRIP.TEX}.
\end{indented}
\end{adjustvboxheight}
ãã®æ„å‘³ã§ã¯ï¼Œp\TeX ã®æ®µéšŽã§ã‚‚ã‚‚ã¯ã‚„\trip\ testã¯ãƒ‘ã‚¹ã—ãªã„ï¼Ž\TeX ã§å‡ºã¦ã„ãŸ\\
ã€€ã€€\verb+! Bad character code (256).+\\
ã¨ã„ã†errorã¯ã‚‚ã¯ã‚„å‡ºãªã„ã—ï¼Œå†…éƒ¨ãƒ¢ãƒ¼
ãƒ‰ãŒå‡ºåŠ›ã•ã‚Œã‚‹æ‰€ã§ã‚‚ã„ã¡ã„ã¡\verb+yoko direction+ãªã©ãŒå‡ºåŠ›ã•ã‚Œã‚‹ï¼Žã—ã‹
ã—æˆ‘ã€…ã¯\pTeX ã‚’ãƒ™ãƒ¼ã‚¹ã¨ã—ã¦ã„ã‚‹ã®ã§ï¼Œ\epTeX ã®å‹•ä½œã‚’ãƒã‚§ãƒƒã‚¯ã™ã‚‹ã¨ã„ã†
ä»Šã®æ–‡è„ˆã§ã¯ï¼Ž\pTeX ã«ã‚ˆã‚‹å‡ºåŠ›ã‚’\trip\ testã®ã€Œæ­£ã—ã„ã€å‡ºåŠ›ã¨
è€ƒãˆã¦ã‚‚ã‚ˆã„ã&nbsp;ã‚ã†ï¼Ž

\eteiri ã•ã‚‰ã«ï¼Œä»Šå›žã¯\eTeX ã®æ©Ÿèƒ½ã‚‚çµ„ã¿è¾¼ã‚“ã§ã„ã‚‹ã®ã&nbsp;ã‹ã‚‰ï¼Œ\eTeX ã«ã‚ˆã‚‹
\trip\ testã®å‡ºåŠ›ã¨ã‚‚æ¯”è¼ƒã™ã‚‹å¿…è¦ãŒã‚ã£ãŸï¼ŽExtended mode
ã®å‡ºåŠ›ã¯å½“ç„¶\TeX ã«ã‚ˆã‚‹\trip\ testã®
å‡ºåŠ›ã¨ã¯ç•°ãªã‚‹ï¼Žå¹¸ã„ï¼Œãã®å†…å®¹ã¯æ–‡çŒ®\nobreak\cite{etrip}ã«è¨˜è¿°ã•ã‚Œã¦ã„ã‚‹ï¼Žã¾ãŸï¼Œ
\eTeX ã§ã¯ï¼Œ\eTeX ç‰¹æœ‰ã®æ‹¡å¼µæ©Ÿèƒ½ã‚’ãƒ†ã‚¹ãƒˆã™ã‚‹ãŸã‚ã®ï¼ŒåŒæ§˜ã®
\etrip\ testã¨ã„ã†ã‚‚ã®ãŒåˆ¥ã«ç”¨æ„ã•ã‚Œã¦ã„ã‚‹ï¼Ž

\eteiri ã²ã¨ã¾ãš\TeXXeT ä»¥å¤–ã‚’è¿½åŠ&nbsp;ã—ãŸ\epTeX ã«ã‚ˆã‚Š\trip, \etrip\ testã‚’
è¡Œã‚ã›ã¦ã¿ãŸï¼Žå‡ºåŠ›çµæžœ
ã¯ï¼Œ\pTeX ã«ã‚ˆã‚‹çµæžœã¨ã‚‚\eTeX ã«ã‚ˆã‚‹çµæžœã¨ã‚‚è‹¥å¹²ç•°ãªã£ã¦ã„ãŸãŒï¼Œãã®å·®ç•°
ã¯ï¼Œ\TeX${}\to{}$\pTeX ã«ã‚ˆã‚‹å‡ºåŠ›çµæžœã®å·®ç•°ã¨\TeX${}\to{}$\eTeX ã«ã‚ˆã‚‹å‡º
åŠ›çµæžœã®å·®æ„ã‚’åˆã‚ã›ãŸã‚‚ã®ã§ã—ã‹ãªã„ï¼Žã¾ãŸï¼Œ\epTeX ã«ã‚ˆã‚‹\etrip\ testã®çµ
æžœã¯\eTeX ã®ãã‚Œã¨å¤§ããç•°ãªã‚‹ãŒï¼Œãã‚Œã¯ã€Œ\epTeX ãŒ\TeXXeT ã‚’å®Ÿè£…ã—ã¦ã„ãª
ã„ã“ã¨ã«ã‚ˆã‚‹ã‚‚ã®ã€ã€Œ\pTeX ã«åˆã†ã‚ˆã†ã«{\tt etex.ch}ã‚’å¤‰æ›´ã—ãŸã“ã¨ã«ã‚ˆã‚‹ï¼Œ
å†…éƒ¨ãƒ‘ãƒ©ãƒ¡ã‚¿ã®è‹¥å¹²ã®å¤‰æ›´ã€ã€Œ\pTeX ã®æ©Ÿèƒ½ã«ã‚ˆã‚‹ï¼Œ\verb+yoko direction+ã¨ã‹
ã®è¿½åŠ&nbsp;å‡ºåŠ›ãªã©ã€ãŒã»ã¨ã‚“ã©ã§ã‚ã‚Šï¼Œååˆ†ã«äºˆæ¸¬ãŒã§ããŸã‚‚ã®ã§ã‚ã£ãŸï¼Žãã®æ„
å‘³ã§ã¯ï¼Œï¼ˆæ—¥æœ¬èªžå‡¦ç†ä»¥å¤–ã«ã¯ï¼‰criticalãªbugã¯ã“ã®æ™‚ç‚¹ã§ãªã‹ã£ãŸã¨è¨€ã£ã¦ã„
ã„ã&nbsp;ã‚ã†\footnote{ãªãŠï¼Œç¬¬6ç«&nbsp;ã§ã•ã‚‰ãªã‚‹\trip, \etrip\ testã‚’ãƒ‘ã‚¹ã•ã›ã‚‹ãŸ
ã‚ã®debugã‚’è¡Œã£ã¦ã„ã‚‹ï¼Ž}ï¼Ž

ã“ã®\trip, \etrip\ testã¯ï¼Œå®Ÿéš›ã«\epTeX ã®debugã«å½¹ã«ç«‹ã£ãŸï¼Ž11/1
è¿‘å‚ã§ï¼Œã™ã§ã«ã€Œé€šå¸¸ã®ã‚½ãƒ¼ã‚¹ãƒ•ã‚¡ã‚¤ãƒ«ã‚’å…¥åŠ›ã—ã¦ã‚‚å‡ºåŠ›ã¯åŒã˜ã€çŠ¶æ³ã«ã¯ãªã£
ã¦ã„ãŸï¼Žã—ã‹ã—ï¼Œ\trip\ testã‚’ã‹ã‘ã‚‹ã¨ï¼Œç•°å¸¸ãªpenaltyå€¤\footnote{penalty
ï¼ˆç½°é‡‘ï¼‰ã¨ã¯ï¼Œæ”¹è¡Œ/æ”¹ãƒšãƒ¼ã‚¸ã®åˆ¶å¾¡ã«ä½¿ã‚ã‚Œã‚‹é‡ã§ã‚ã£ã¦ï¼Œbox, glueã¨ã¨ã‚‚ã«
\TeX ã§ã®çµ„ç‰ˆã«ãŠã„ã¦é‡è¦ãªå½¹å‰²ã‚’æžœãŸã—ã¦ã„ã‚‹ï¼Ž}ã®å‡ºåŠ›ãŒè¦‹ã‚‰ã‚ŒãŸï¼Ž
ãã“ã§ï¼Œ\eTeX ã«ã‚ˆã‚‹penaltyæ‹¡å¼µã‚’\epTeX ã«å®Ÿè£…ã™ã‚‹ã¨ã“ã‚ã«bugãŒåŸ‹ã¾ã£ã¦ã„ã‚‹ã¨è¦‹
å½“ã‚’ä»˜ã‘ã¦ï¼Œãã“ã‚’è¦‹ç›´ã—ãŸçµæžœï¼Œ\verb+etexdir/etex.ch+ï¼ˆã¤ã¾ã‚Šï¼Œã‚‚ã¨ã‚‚ã¨
ã®\TeX${}\to{}$\eTeX ã®change fileï¼‰ã«ã‚ã‚‹2ç®‡æ‰€ã®ä¿®æ­£ç®‡æ‰€ãŒï¼Œ\epTeX ç”¨ã®
\verb+etex.ch+ã«ã¯ä½•æ•…ã‹æŠœã‘è½ã¡ã¦ã„ãŸã“ã¨ãŒåˆ†ã‹ã‚Šï¼Œã“ã®\epTeX ã®bugã‚’ä¿®æ­£ã™
ã‚‹ã“ã¨ãŒã§ããŸã®ã§ã‚ã‚‹ï¼Ž

\eteiri
ãªãŠï¼Œã“ã®æ™‚ç‚¹ã§ã‚‚\epTeX ã¯\eTeX ã®\TeXXeT ä»¥å¤–ã®å…¨ã¦ã®æ©Ÿèƒ½ã‚’å®Ÿè£…ã—ã¦ã„
ãŸã“ã¨ã‚’æ³¨æ„ã—ã¦ãŠã“ã†ï¼Ž
\newpage
\section{æµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã®å®Ÿè£…}
ã‚‚ã†ä¸€ã¤ã®ãƒ†ãƒ¼ãƒžã®æŸ±ï¼Œæµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã®å®Ÿè£…ã«å…¥ã‚ã†ï¼Ž

ã¾ãšï¼Œã‚µãƒãƒ¼ãƒˆã™ã‚‹ç²¾åº¦ã«ã¤ã„ã¦ã§ã‚ã‚‹ãŒï¼Œè¨ˆç®—é€Ÿåº¦ã‹ã‚‰è¨€ãˆã°4\,byteã®æ‰€è¬‚
ã€Œå˜ç²¾åº¦ã€ãŒè‰¯ãï¼Œã‚³ãƒ¼ãƒ‰ã‚‚ç°¡å˜ã«ãªã‚‹ï¼Žã—ã‹ã—å˜ç²¾åº¦ã¯æœ‰åŠ¹æ¡æ•°ãŒ7æ¡å‰å¾Œã—ã‹
ãªã„ï¼Žã—ã‹ã—ï¼Œå®Ÿéš›ã®æ•°å€¤è¨ˆç®—ã§ã¯ï¼Œã“ã®7æ¡ç¨‹åº¦ã®ç²¾åº¦ã§ã¯ä¸è¶³ã—ï¼Œå€ç²¾åº¦ä»¥ä¸Š
ãŒä½¿ã‚ã‚Œã‚‹å&nbsp;´åˆãŒå¤šã„ã¨æ€ã‚ã‚Œã‚‹ï¼Žæµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã®å®Ÿè£…ã®ç›®çš„ãŒã€Œ\TeX ã«æ•°å€¤
è¨ˆç®—ã‚’ã‚„ã‚‰ã›ã‚‹ã€ã“ã¨ã§ã‚ã‚‹ã®ã§ï¼Œå€ç²¾åº¦ä»¥ä¸Šã¯å¿…é&nbsp;ˆã§ã‚ã‚‹ï¼Ž

\subsection{åŸºæœ¬æ–¹é‡}
ä½•ã‚ˆã‚Šã‚‚ï¼Œ\TeX ã®æ—¢å­˜éƒ¨åˆ†ã®\WEB ã‚½ãƒ¼ã‚¹ã‚’æ”¹å¤‰ã™ã‚‹ã¨ã“ã‚ã‚’æœ€å°é™ã«ç•™ã‚ã‚‹ã“ã¨ã‚’æœ€
å„ªå…ˆã«ã—ãŸï¼Žä½¿ã„å‹æ‰‹ã‹ã‚‰è¨€ãˆã°ï¼Œæ–°ã—ã„ãƒ¬ã‚¸ã‚¹ã‚¿ã®ç¨®é¡žã‚’ï¼ˆä¾‹ãˆã°
\verb+\real+ã¨ã‹ã„ã†åå‰ã§ï¼‰å®šç¾©ã—ã¦ï¼Œä»–ã®ãƒ¬ã‚¸ã‚¹ã‚¿ã¨åŒæ§˜ã«æ‰±ãˆã‚‹ã‚ˆã†ã«ã—
ãŸã»ã†ãŒã‚ˆã„ã®ã&nbsp;ãŒï¼Œãã‚Œã¯\TeX ã®å†…éƒ¨å‡¦ç†ã‚’å¤§ããå¤‰æ›´ã™ã‚‹ã“ã¨ã¨ãªã‚Šï¼Œbug
ã‚‚æ··ã˜ã‚‹å¯èƒ½æ€§ã‚‚å¢—ãˆã‚‹ï¼Ž

\eteiri
ã“ã“ã§ï¼Œ\TeX ã®æ•°é‡ã«ã¾ã¤ã‚ã‚‹ãƒ¬ã‚¸ã‚¹ã‚¿ã®ç¨®é¡žã‚’æ€ã„å‡ºãã†ï¼š
\begin{itemize}
\item \verb+\count+ï¼š$-2147483647$ã‹ã‚‰$+2147483647$ã¾ã§ã®æ•´æ•° (number) ã‚’æ&nbsp;¼ç´ã™ã‚‹ï¼Ž
\item \verb+\dimen+ï¼š$1$\,sp${}=2^{-16}$\,ptã‚’åˆ»ã¿å¹…ã¨ã—ã¦ï¼Œçµ¶å¯¾å€¤ãŒ
      $2^{30}$\,sp${}=16384$\,pt ã‚ˆã‚Šå°ã•ã„é•·ã• (dimension) ã‚’æ&nbsp;¼ç´ã™ã‚‹ï¼Ž
\item \verb+\skip+ï¼šã„ã‚ã‚†ã‚‹glueï¼Žè‡ªç„¶é•· (width part)ï¼Œä¼¸ã³é‡
      (stretch part)ï¼Œç¸®ã¿é‡ (shrink part)ã‚’æŒã£ã¦ãŠã‚Šï¼Œå¾Œè€…2ã¤ã¯ç„¡é™å¤§ã‚‚
      æŒ‡å®šã§ãã‚‹ï¼ˆã—ã‹ã‚‚ãã®ç„¡é™å¤§ã«ã¯rank ãŒã‚ã£ãŸã‚Šã™ã‚‹ï¼‰ï¼Ž
\item \verb+\muskip+ï¼šæ•°å¼ãƒ¢ãƒ¼ãƒ‰ã§ã®\verb+\skip+ã«ç›¸å½“ã™ã‚‹ï¼Ž
\end{itemize}
å‰è€…2ã¤ã¯å†…éƒ¨ã§ã‚‚4\,byteã§ã‚ã‚Šï¼Œå¾Œè€…2ã¤ã¯4\,byteå¤‰æ•°3ã¤åˆ†ã‚’è¨˜æ†¶é&nbsp;˜åŸŸ
ã¨ã—ã¦ä½¿ã£ã¦ã„ã‚‹ï¼Ž\TeX ã®ã‚½ãƒ¼ã‚¹ã‚’è¦‹ã‚‹ã¨ï¼Œãƒ¬ã‚¸ã‚¹ã‚¿ãŒã“ã‚Œã‚‰ï¼ˆã¨
\verb+\toks+, \verb+\box+ï¼‰ã&nbsp;ã‘ã§ã‚ã‚‹ã“ã¨ã«ä¾å­˜ã—ãŸã‚³ãƒ¼ãƒ‰ãŒæ›¸ã‹ã‚Œã¦ã„ãŸã®
ã§ï¼Œæ–°ãŸã«æµ®å‹•å°æ•°ç‚¹æ•°ç”¨ã®ãƒ¬ã‚¸ã‚¹ã‚¿ã¨å°‚ç”¨ã®è¨˜æ†¶é&nbsp;˜åŸŸã‚’ç¢ºä¿ã—ãŸã‚Šã™ã‚‹ã®ã¯åŠ´
åŠ›ãŒã‹ã‹ã‚‹ã&nbsp;ã‘ã&nbsp;ã¨åˆ¤æ–­ã—ãŸï¼Žãã®ã‚ˆã†ã«è€ƒãˆã¦ã¿ã‚‹ã¨ï¼Œ\verb+\skip+ãŒ
12\,byteä»¥ä¸Šã‚’ä½¿ã£ã¦ã„ã‚‹ã“ã¨ã«ãªã‚‹ï¼Ž

\eteiri
ã™ã‚‹ã¨ï¼Œ1ã¤ã®glueã«æµ®å‹•å°æ•°ç‚¹æ•°1ã¤ã‚’ç´ã‚ã‚‹ã‚ˆã†ã«ã™ã‚‹ã®ãŒæ¥½ã§ã‚ã‚‹ï¼Žã›ã£ã‹
ã12\,byteã‚ã‚‹ã®ã«8\,byteåˆ†ã—ã‹ä½¿ã‚ãªã„ã®ã¯å‹¿ä½“ãªã„ã®ã§ï¼Œ12\,byteåˆ†ã«ã§ã
ã‚‹é™ã‚ŠåŽã¾ã‚‹é™ã‚Šã®ç²¾åº¦ã¨ã™ã‚‹ã“ã¨ã«ã—ãŸï¼ŽãªãŠï¼ŒWeb2Cã§ã‚µãƒãƒ¼ãƒˆã•ã‚Œã¦ã„ã‚‹
Pascalã®æ©Ÿèƒ½ã¯é™å®šçš„ãªã‚‚ã®ã§ã‚ã‚‹ã®ã§ï¼ŒPascalè¦æ&nbsp;¼å†…ã«ã‚ã‚‹æµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã®
ã‚µãƒãƒ¼ãƒˆã«ã¤ã„ã¦ã‚‚ä¸å®‰ã§ã‚ã‚‹ï¼Žãã“ã§ï¼Œã“ã“ã§ã¯\emph{æ•´æ•°æ¼”ç®—ã®ã¿ã‚’ç”¨ã„ã¦å®Ÿè£…}ã™
ã‚‹ã“ã¨ã¨ã—ãŸï¼Žãã®ãŸã‚ï¼Œä»®æ•°éƒ¨ã®æ¼”ç®—ã¯æœ¬è³ªçš„ã«ã¯å¤š
å€é•·æ•´æ•°ã®æ¼”ç®—ã§ã‚ã‚‹ã®ã§é€Ÿåº¦ã¯éžå¸¸ã«é…ã„ã“ã¨ã‚’è¦šæ‚Ÿã—ãªã‘ã‚Œã°ãªã‚‰ãªã„ï¼Žï¼Ž

\eteiri
é«˜ãƒ¬ãƒ™ãƒ«ãªæ©Ÿèƒ½ã¯\TeX ã®ãƒžã‚¯ãƒ­æ©Ÿèƒ½ã‚’ä½¿ã„å®Ÿè£…ã™ã‚‹ã“ã¨ã‚’è€ƒãˆã‚‹ã¨ï¼Œã¨ã‚Šã‚ãˆ
ãšå®Ÿè£…ã™ã¹ãæ©Ÿèƒ½ã¨ã—ã¦ï¼Œä»¥ä¸‹ã‚’æ±ºã‚ãŸï¼š
\begin{itemize}
\item æµ®å‹•å°æ•°ç‚¹å®šæ•°å€¤ã‚’è¡¨ç¾ã™ã‚‹glueã‚’è¿”ã™ï¼š\verb+\real+\footnote{ä»–ã®ã‚³
      ãƒžãƒ³ãƒ‰ãŒfpã‚’æŽ¥é&nbsp;­è¾žã«ã—ã¦ã„ã‚‹ã®ã«ã“ã‚Œã&nbsp;ã‘ãã†ã˜ã‚ƒãªã„ã®ã¯å¤‰ã‹ã‚‚ã—ã‚Œ
      ãªã„ãŒï¼Œã‹ã¨ã„ã£ã¦\verb+\fp+ã«ã™ã‚‹ã®ã¯çŸ­ã™ãŽã‚‹æ°—ãŒã™ã‚‹ã—ï¼Œæ¼”ç®—ã‚³ãƒž
      ãƒ³ãƒ‰å´ã‚’\verb+\realadd+ãªã©ã¨ã™ã‚‹ã¨é•·ã™ãŽã‚‹ã¨æ€ã£ãŸã‹ã‚‰ã§ã‚ã‚‹ï¼Žå½“
      ç„¶ãªãŒã‚‰ï¼ŒFortranã®{\tt REAL*}\hskip0.1zw$x$ãŒæ&nbsp;¹åº•ã«ã‚ã‚‹ï¼Ž}ï¼Ž
\item 2é&nbsp;…æ¼”ç®—ï¼š\verb+\fpadd+, \verb+\fpsub+, \verb+\fpmul+,
      \verb+\fpdiv+, \verb+\fppow+ï¼Žçµæžœã¯ç¬¬1å¼•æ•°ã®ãƒ¬ã‚¸ã‚¹ã‚¿ã«ä¸Šæ›¸ãï¼Ž
\item å˜é&nbsp;…æ¼”ç®—ï¼š\verb+\fpneg+ï¼Œãã®ä»–åˆç­‰é–¢æ•°é”ï¼Ž
\item æµ®å‹•å°æ•°ç‚¹æ•°ã®å‡ºåŠ›ï¼ŒåŠã³åž‹å¤‰æ›ï¼Ž
\end{itemize}
\newpage
æ&nbsp;¼ç´å½¢å¼ã¯è‰²ã€…ã¨æ‚©ã‚“ã&nbsp;ãŒï¼Œæœ€çµ‚çš„ã«ã¯ä»¥ä¸‹ã«è¿°ã¹ã‚‹ã‚ˆã†ã«è½ã¡ç€ã„ãŸï¼Ž2é€²ã§
æ&nbsp;¼ç´ã™ã‚‹ã¨åŸºæ•°å¤‰æ›ã¨ã‹ã„ã†å¤‰ãªã‚‚ã®ã‚’çµ„ã‚€å¿…è¦ãŒã‚ã‚‹\footnote{ã‚‚ã¡ã‚ã‚“
debugæ™‚ã§ã‚ã£ã¦ã‚‚ï¼Žåƒ•ã¯æš—ç®—ã¯ç•°å¸¸ã«å¼±ã„ã—ï¼Ž}ã®ã§ï¼Œ10é€²ã§è¡Œã£ãŸï¼Žä½†ã—æŒ‡æ•°
éƒ¨ã«ã¤ã„ã¦ã¯è«¸äº‹æƒ…ã«ã‚ˆã‚Š$16$\,bitåˆ†ã¨ã—ã¦ã„ã‚‹ï¼Ž
\jdAline[c](1){\unitlength=5mm
\begin{picture}(30,2)
\put(0,0){\line(0,1){1.5}}
\put(0,0){\line(1,0){30}}
\put(10,0){\line(0,1){1.5}}
\put(20,0){\line(0,1){1.5}}
\put(30,0){\line(0,1){1.5}}
\put(0,1){\line(1,0){30}}

\put(7,0){\line(0,1){1}}
\put(2,0){\line(0,1){1}}
\put(1,0){\line(0,1){1}}
\put(11,0){\line(0,1){1}}
\put(21,0){\line(0,1){1}}

\put(8.5,0.5){\line(0,-1)1}
\put(8.5,-0.6){\makebox(0,0)[t]{\small $A_1$ (3)}}
\put(1.5,0.5){\line(0,-1)1}
\put(1.5,-0.6){\makebox(0,0)[t]{\small $F$}}
\put(4.5,0.5){\line(0,-1)1}
\put(4.5,-0.6){\makebox(0,0)[t]{\small $E$}}
\put(15.5,0.5){\line(0,-1)1}
\put(15.5,-0.6){\makebox(0,0)[t]{\small $A_2$ (9)}}
\put(25.5,0.5){\line(0,-1)1}
\put(25.5,-0.6){\makebox(0,0)[t]{\small $A_3$ (9)}}

\put(0,1){\line(1,-1){1}}
\put(0,0){\line(1,1){1}}
\put(10,1){\line(1,-1)1}
\put(10,0){\line(1,1)1}
\put(20,1){\line(1,-1)1}
\put(20,0){\line(1,1)1}

\put(5,1.25){\makebox(0,0)[b]{\small width part}}
\put(15,1.25){\makebox(0,0)[b]{\small stretch part}}
\put(25,1.25){\makebox(0,0)[b]{\small shrink part}}

\end{picture}}
\eteiri
ä¸€ã¤ã®glueã®è‡ªç„¶é•·ï¼Œä¼¸ã³é‡ï¼Œç¸®ã¿é‡ã¯\TeX å†…éƒ¨ã§ã¯ãã‚Œãžã‚Œ32\,bitæ•´æ•°ã¨ã—
ã¦æ‰±ã‚ã‚Œã¦ã„ã‚‹ï¼Žã“ã‚Œã‚‰ã‚’ã“ã®é&nbsp;†ã«ä¸¦ã¹ã¦ï¼Œ1ã¤ã®96\,bité&nbsp;˜åŸŸã¨ã¿ãªã—
ã¦æ›¸ã„ãŸã®ãŒä¸Šã®å›³ã§ã‚ã‚‹ï¼Ž
\begin{enumerate}
\item å„32\,bitéƒ¨åˆ†ã§ã¯ä¸Šä½2\,bitã¯æœªä½¿ç”¨ã¨ã™ã‚‹\footnote{dimensionã®è¡¨ç¾
      ã§ã¯æœ€ä¸Šä½bitã¯ç¬¦å·ï¼Œæ¬¡ã®bitã¯Overflowæ¤œå‡ºç”¨ã®ã‚ˆã†ãªæ„å‘³ã‚’æŒã£ã¦ã„
      ã‚‹ï¼Žãã®ãŸã‚ï¼Œã“ã‚Œã‚‰ã®2\,bitã‚‚ä½¿ã£ã¦ã—ã¾ã†ã¨ä½•ã‹ã¨é¢å€’ã«ãªã‚‹ã‚ˆã†ã«
      æ€ã‚ã‚ŒãŸï¼Ž}ï¼Žã
      ã‚Œãžã‚Œã®æ®‹ã‚Š30\,bitã§10é€²9æ¡ã‚’æ&nbsp;¼ç´ã™ã‚‹ï¼Ž
\item ä»®æ•°éƒ¨ã¯å›³ã®$A_1$, $A_2$, $A_3$ã§ç¤ºã—ãŸé&nbsp;˜åŸŸã¨ã™ã‚‹ï¼Žã“ã‚Œã‚‰ã®å¾Œã‚ã«()ã§ã
      ãã£ãŸæ•°å­—ã¯ãã“ã®10é€²ã§ã®æ¡æ•°ã‚’è¡¨ã™ï¼Žåˆè¨ˆã§10é€²21
      æ¡åˆ†ã®é&nbsp;˜åŸŸã¨ãªã‚Šï¼Œï¼ˆå›³ã®ï¼‰å·¦å´ã‚’ä¸Šä½ã¨ã—ã¦21æ¡ã‚’æ&nbsp;¼ç´ã™ã‚‹ï¼Žå°æ•°ç‚¹ãŒ
      $A_1$ã§ã®100ã®ä½ã¨10ã®ä½ã®é–“ã«æ¥ãŸçŠ¶æ…‹ã‚’ã€Œæ­£è¦åŒ–ã•ã‚Œã¦ã„ã‚‹ã€ã¨ç§°ã™ã‚‹ï¼Ž
\item æŒ‡æ•°éƒ¨ã¯$E$ã§ç¤ºã—ãŸéƒ¨åˆ†ã§ï¼Œ2é€²æ•°ã§16\,bitåˆ†ã®é&nbsp;˜åŸŸã‚’ã‚‚ã£ã¦ã„ã‚‹ï¼Žã“ã“
      ã«ã¯å®Ÿéš›ã®æŒ‡æ•°ï¼ˆ$-32767$--$32767$ï¼‰ã‚’32767ã‚’ãƒã‚¤ã‚¢ã‚¹ã—ãŸå€¤ãŒæ&nbsp;¼
      ç´ã•ã‚Œã‚‹ï¼Žä½†ã—ï¼Œã“ã®$E$ã®å€¤ãŒ65535ã®ã¨ãã¯ï¼Œï¼ˆæ­£è²&nbsp;ã®ï¼‰ç„¡é™å¤§ã¨ã—ã¦
      æ‰±ã†ï¼Ž
\item $F$ã§è¡¨ã—ãŸéƒ¨åˆ†ã¯0, 1, 2ã®ã©ã‚Œã‹ãŒæ&nbsp;¼ç´ã•ã‚Œï¼Œç¬¦å·bitã¨ã—ã¦ã®å½¹å‰²ã‚’æŒã¤ï¼Ž
      0ã¯æ­£ï¼Œ1ã¯è²&nbsp;ï¼Œ2ã¯NaNã‚’è¡¨ã™ï¼Ž
\item ä»¥ä¸Šã®èª¬æ˜Žã§ã¯è¦‹ã«ãã„ã®ã§ï¼Œã“ã®glueãŒè¡¨ç¾ã—ã¦ã„ã‚‹å€¤ã‚’è¿°ã¹ã‚‹ã¨ï¼Œä»¥ä¸‹ã®ã‚ˆ
      ã†ã«ãªã‚‹ï¼Ž
\[
 \begin{cases}
(1-2F)(10^{18}A_1+10^9A_2+A_3)\cdot 10^{E-32767-20},
&amp;{\rm if}\ F\neq2;\\
{\rm NaN},&amp;{\rm if}\ F=2.
\end{cases}
\]
ã¾ãŸï¼Œwidth partã«å®Ÿéš›ã«æ&nbsp;¼ç´ã•ã‚Œã¦ã„ã‚‹å€¤ã¯$1000(E+65536F)+A_0$ã§ã‚ã‚‹ï¼Ž

\end{enumerate}

\TeX ã‚½ãƒ¼ã‚¹ä¸­ã§ã®æµ®å‹•å°æ•°ç‚¹æ•°ã®è¡¨è¨˜ã¯ï¼Œä»–ã®ãƒ—ãƒ­ã‚°ãƒ©ãƒŸãƒ³ã‚°è¨€èªžã§ã‚‚ã‚ˆãç”¨ã„
ã‚‰ã‚Œã¦ã„ã‚‹ã”ãæ™®é€šã®è¡¨è¨˜ã‚’æŽ¡ç”¨ã™ã‚‹ãŒ\footnote{Fortranã§ã¯æŒ‡æ•°éƒ¨ã«{\tt
D}ã‚„æ™‚ã«ã¯{\tt Q}ãªã©ã‚’è¨±å®¹ã—ãŸã‚Šã—ã¦ã„ã‚‹ã‘ã‚Œã©ã‚‚ï¼Œãã‚Œã‚‰ã¯\epTeX ã§ã¯èª
ã‚ãªã„ï¼Ž}ï¼Œ\TeX æœ¬æ¥ã®èª­ã¿å–ã‚Šãƒ«ãƒ¼ãƒãƒ³ã‚’ä¸€éƒ¨æµ
ç”¨ã—ãŸéƒ¨åˆ†ãŒã‚ã‚‹ãŸã‚ï¼Œå°æ•°ç‚¹ã¯å¤§é™¸å¼ã®`,'ã‚‚èªã‚ï¼Œç¬¦å·ã¯è¤‡æ•°ã‚ã£ã¦ã‚‚ã„ã„
ï¼ˆãã®å&nbsp;´åˆï¼Œå®Ÿéš›ã®ç¬¦å·ã¯å…¨éƒ¨æŽ›ã‘ãŸã‚‚ã®ã«ãªã‚‹ï¼‰ã“ã¨ã«ãªã£ãŸï¼Ž

\subsection{å†…éƒ¨è¡¨ç¾ã¨å››å‰‡æ¼”ç®—}
å®Ÿéš›ã®æ¼”ç®—ã‚’glueã«ã€Œãƒ‘ãƒƒã‚¯ã•ã‚ŒãŸã€çŠ¶æ…‹ã§è¡Œã†ã®ã¯ä½™ã‚Šè‰¯ããªã„ã‚ˆã†ã«æ„Ÿã˜ãŸï¼Ž
ãªãœãªã‚‰ï¼Œåˆç­‰é–¢æ•°ã®å®Ÿè£…ã‚’æœ€åˆã‹ã‚‰å¿µé&nbsp;­ã«ç½®ã„ã¦ã„ãŸãŒï¼Œãã‚Œã‚’21æ¡ç²¾åº¦ã®ã¾ã¾ã§è¨ˆç®—ã™
ã‚‹ã®ã¯ç²¾åº¦ã®é¢ã§éžå¸¸ã«ä¸å®‰ã&nbsp;ã£ãŸã‹ã‚‰ã§ã‚ã‚‹ï¼Ž
ãã†ã™ã‚‹ã¨ï¼Œå†…éƒ¨ã§ã®è¨ˆç®—ã®å®Ÿè£…ã¯ï¼Œ21æ¡ã¨ã¯é™ã‚‰ãªã„ä»»æ„é•·\footnote{ã¨ã¯
ã„ã£ã¦ã‚‚ï¼Œã•ã™ãŒã«æ•°åƒæ¡ã¨ã‹æ•°ä¸‡æ¡ã¨ã‹ã¯ãŸã‹ãŒ21æ¡ã®è¨ˆç®—ã®å†…éƒ¨å‡¦ç†ã¨ã—ã¦
ã¯ã—ãªã„ã&nbsp;ã‚ã†ï¼Žå€‹äººçš„ã«ã¯60æ¡ã‚‚ã‚ã‚Œã°ååˆ†ã¨æ„Ÿã˜ã¦ã„ã‚‹ï¼Ž}ã®è¨ˆç®—ã«å¯¾å¿œã§
ãã‚‹ã‚ˆã†ã«ã—ãŸæ–¹ãŒã‚ˆã„ï¼Ž

ä¸Šã‚’è€ƒæ…®ã«å…¥ã‚Œã¦ï¼Œæµ®å‹•å°æ•°ã®å†…éƒ¨è¡¨ç¾ã§ã‚ã‚‹4\,byteæ•´æ•°åž‹ã®é…åˆ—$q$ã‚’ä»¥ä¸‹
ã®ã‚ˆã†ã«å®šã‚ã‚‹ï¼š
\jdAline[c]{\unitlength=5mm
\begin{picture}(30,2)
\put(0,0){\line(1,0){15}}
\put(20,0){\line(1,0){10}}
\put(0,1){\line(1,0){15}}
\put(20,1){\line(1,0){10}}
\put(0,0){\line(0,1){1.5}}
\put(2.5,0){\line(0,1){1}}
\put(5,0){\line(0,1){1.5}}
\put(10,0){\line(0,1){1.5}}
\put(15,0){\line(0,1){1.5}}
\put(20,0){\line(0,1){1.5}}
\put(25,0){\line(0,1){1.5}}
\put(30,0){\line(0,1){1.5}}
\put(1.25,0.5){\makebox(0,0){\small $n$}}
\put(3.75,0.5){\makebox(0,0){\small ç¬¦å·}}
\put(7.5,0.5){\makebox(0,0){\small æŒ‡æ•°éƒ¨}}
\put(12.5,0.5){\makebox(0,0){\small $a_0$}}
\put(22.5,0.5){\makebox(0,0){\small $a_{n-1}$}}
\put(27.5,0.5){\makebox(0,0){\small $a_{n}$}}
\put(2.5,1.1){\makebox(0,0)[b]{\small $q[0]$}}
\put(7.5,1.1){\makebox(0,0)[b]{\small $q[1]$}}
\put(12.5,1.1){\makebox(0,0)[b]{\small $q[2]$}}
\put(22.5,1.1){\makebox(0,0)[b]{\small $q[n+1]$}}
\put(27.5,1.1){\makebox(0,0)[b]{\small $q[n+2]$}}
\put(17.5,0.5){\makebox(0,0){$\cdots\cdots\cdots\cdots$}}
\end{picture}}
ã“ã“ã§ï¼Œå„$a_i$, $0\le i\le n+1$ã¯0\,ã€œ\,999ã®ç¯„å›²ã®è‡ªç„¶æ•°ã§ã‚ã£ã¦ï¼Œç¬¦å·éƒ¨ã¯
ï¼ˆå‰ç¯€ã®ã‚ˆã†ã«ï¼‰0ãŒæ­£ï¼Œ1ãŒè²&nbsp;ï¼Œ2ãŒNaNã‚’è¡¨ã™ï¼Žå³ã¡ï¼Œä»®æ•°éƒ¨ã‚’åŸºæ•°1000ã§è¡¨ç¾
ã—ã¦ã„ã‚‹\footnote{ä¹—æ³•ã‚’è¡Œã†å&nbsp;´åˆï¼ŒåŸºæ•°ã®å¹³æ–¹ãŒå‡¦ç†ç³»ã®å†…éƒ¨ã§æ‰±ãˆã‚‹å¿…è¦ã¯
ãªã„ã‚ˆã†ã«æ„Ÿã˜ã‚‹ãŒï¼Œãã‚Œã‚’è€ƒãˆã‚‹ã¨ï¼ŒåŸºæ•°ã«32768ã¨ã‹10000ã¨ã‹ã‚’ä½¿ã£ãŸæ–¹ãŒï¼Œ
ãƒ¡ãƒ¢ãƒªã‚‚è¨ˆç®—ã®æ‰‹é–“ã‚‚æ¸›ã‚‹ã“ã¨ã«ãªã‚‹ï¼Žã—ã‹ã—ï¼Œglueã«æ&nbsp;¼ç´ã™ã‚‹ã®ãŒ21æ¡ã§ã‚ã‚‹
ã‹ã‚‰ï¼Œ1000ã«ã™ã‚‹ã®ã‚‚ãã‚“ãªã«æ‚ªããªã„ã‚ˆã†ã«æ€ã†ï¼Ž}ã“ã¨ã«ãªã‚‹ï¼Ž$a_{n}$ã¯æ¡
ä¸ŠãŒã‚Šãªã©ã®éš›ã«ç”¨ã„ã‚‰ã‚Œï¼Œæ‰€è¬‚ã€Œæ­£è¦åŒ–ã•ã‚ŒãŸçŠ¶æ…‹ã€ã§ã¯$a_n=0$, $a_{n-1}\ge
100$ã§ã‚ã‚‹ï¼Žã¾ãŸï¼ŒæŒ‡æ•°éƒ¨ã¯ï¼ˆæ­£è¦åŒ–ã•ã‚ŒãŸçŠ¶æ…‹ã§ã¯ï¼‰$-32767$\,ã€œ\,$32767$ã®ç¯„å›²
ã®æ•´æ•°ãŒé€šå¸¸ã®æµ®å‹•å°æ•°ç‚¹æ•°ã‚’ï¼Œ32768ãŒç„¡é™å¤§ã‚’è¡¨ã™ï¼ŽNaNã‚„0ã«ç¬¦å·ã®åŒºåˆ¥ã¯
ãªãï¼Œå½“ç„¶ãªãŒã‚‰IEEE 754/754rè¦æ&nbsp;¼ã«ã¯å…¨ç„¶é©åˆã—ãªã„ï¼Ž$n$ã‚’ã€Œæµ®å‹•å°æ•°ç‚¹æ•°
ã®é•·ã•ã€ã¨ä»¥é™å‘¼ã¶ã“ã¨ã«ã™ã‚‹ï¼Ž

ã“ã®ã‚ˆã†ãªé…åˆ—ã¯ï¼Œæœ€åˆã®å®Ÿè£…ã§ã¯ï¼Œãã®éƒ½åº¦å‹•çš„ã«ç¢ºä¿ï¼Œè§£æ”¾ã™ã‚‹ã“ã¨ã«ã—ãŸ
\footnote{ã“ã®ãƒãƒªã‚·ãƒ¼ã¯5.6ç¯€ã§å¤‰æ›´ã•ã‚Œã‚‹ï¼Ž}ï¼Ž\TeX ã§ã®ãƒ¡ãƒ¢ãƒªç®¡
ç†ã¯ã™ã¹ã¦\TeX è‡ªèº«ãŒè¡Œã†\footnote{èµ·å‹•æ™‚ã«å·¨å¤§ãª4\,byteæ•´æ•°åž‹ã®é…åˆ—ã‚’ç¢º
ä¿ã—ã¦ï¼Œã‚ã¨ã¯å…¨éƒ¨ãã®æž&nbsp;å†…ã§è¡Œã‚ã‚Œã‚‹ï¼Žé…åˆ—ç¢ºä¿ã¨è§£æ”¾ã¯ãã‚Œãžã‚Œ
$\langle{\it pointer}\rangle:={\it get\_node}(\langle{\it
length}\rangle)$ã¨{\it free\_node}($\langle{\it
pointer}\rangle,\langle{\it length}\rangle$)ã§è¡Œã‚ã‚Œã‚‹ï¼Žã“ã“ã§
$\langle{\it pointer}\rangle$ã¯å…ˆé&nbsp;­è¦ç´&nbsp;ã®indexã§ã‚ã‚Šï¼Œ$\langle{\it
length}\rangle$ã¯ç¢ºä¿ã•ã‚ŒãŸé…åˆ—ã®è¦ç´&nbsp;æ•°ã§ã‚ã‚‹ï¼Ž}ã“ã¨ãŒä¼çµ±çš„ã«ãªã£ã¦ã„ã‚‹
 (\cite{arizawa}) ã®ã§ï¼Œã“ã“ã§ã‚‚å½“ç„¶ãã‚Œã«å¾“ã†ï¼Ž

\eteiri æµ®å‹•å°æ•°ç‚¹ã®å››å‰‡æ¼”ç®—ã‚’å¤§ããã‚ã‘ã‚‹ã¨ï¼Œä»®æ•°éƒ¨åŒå£«ã®è¨ˆç®—ã¨ï¼ŒæŒ‡æ•°éƒ¨
ã®èª¿æ•´ã«2åˆ†ã•ã‚Œã‚‹ï¼Žå‰è€…ã¯å‰ã«æ›¸ã„ãŸã‚ˆã†ã«å¤šå€é•·æ•´æ•°ã®å››å‰‡è¨ˆç®—ã¨ãªã‚‹ã®ã§ï¼Œ
Knuth~\cite{TAOCP}ã«ã‚ã‚‹ã€Œå¤å…¸çš„ãªã€ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ&nbsp;ã‚’ãã®ã¾ã¾ç”¨ã„ã‚‹ã“ã¨ãŒã§
ãã‚‹ï¼Ž

ã“ã‚Œã‚‰ã®ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ&nbsp;ã¯ï¼ˆå‰²ã‚Šç®—ã‚’é™¤ã‘ã°ï¼‰ãã‚“ãªã«é•·ãã¯ãªãï¼ŒæŒ‡æ•°éƒ¨ã‚„ç¬¦
å·ã®å‡¦ç†ï¼Œç„¡é™å¤§ã‚„NaNã®å‡¦ç†ã®æ–¹ãŒåˆ†é‡çš„ã«ã¯å¤šã„ï¼Žæ•´æ•°æ¼”ç®—ã¨ã—ã¦å¾—ã‚‰ã‚ŒãŸ
ä»®æ•°éƒ¨ã‚’æ­£è¦åŒ–ã™ã‚‹å‡¦ç†ã‚„ï¼ŒåŠ&nbsp;æ³•ã‚„æ¸›æ³•ã§è¡Œã‚ã‚Œã‚‹2å¼•æ•°ã®æŒ‡æ•°éƒ¨ã‚’æƒãˆ
ã‚‹å‡¦ç†ï¼Œã¾ãŸä¹—æ³•ã‚„é™¤æ³•ã§è¡Œã‚ã‚Œã‚‹ï¼Œåˆ—ã®é•·ã•ã‚’å»¶é•·ã—ãŸã‚Šç¸®å°ã—ãŸã‚Šã™ã‚‹å‡¦ç†
ã®æ–¹ã«ã„ã£ãã†æ°—ã‚’ä½¿ã£ãŸï¼Ž

%%% è¦æ¤œè¨Žï¼šé™¤ç®—ã‚’Newtonæ³•ã§ï¼Œshort_mult

\subsection{å…¥å‡ºåŠ›ã¨åž‹å¤‰æ›}
æ¼”ç®—ã¯ã§ãã‚‹ã‚ˆã†ã«ãªã£ã¦ã‚‚ï¼Œãã‚Œã‚’å…¥å‡ºåŠ›ã™ã‚‹ã“ã¨ãŒã§ããªã‘ã‚Œã°ã©ã†ã—ã‚ˆã†ã‚‚
ãªã„ï¼Žæµ®å‹•å°æ•°ç‚¹ã¯glueã¨ã—ã¦\verb+\skip+ãƒ¬ã‚¸ã‚¹ã‚¿ã«æ&nbsp;¼ç´ã•ã‚Œã‚‹ã®ã§ï¼Œ
\verb+\skip+ãƒ¬ã‚¸ã‚¹ã‚¿ã«å¯¾ã—ã¦ç›´ã«packã•ã‚ŒãŸå€¤ã‚’æŒ‡å®šã—ãŸã‚Šï¼Œã‚ã‚‹ã„ã¯
\verb+\the+ã§å‡ºåŠ›ã‚’ã—ãŸã‚Šã™ã‚Œã°ä¸€å¿œã¯ã„ã„ã®ã&nbsp;ãŒï¼Œãã‚Œã§ã¯éžå¸¸ã«ä½¿ã„å‹æ‰‹
ãŒæ‚ªã„ï¼Ž

\eteiri
å…¥åŠ›å´ã«ã¤ã„ã¦ã®ã»ã¨ã‚“ã©ã®å‡¦ç†ã¯
æµ®å‹•å°æ•°ç‚¹æ•°ã‚’èª­ã¿è¾¼ã¿ï¼Œå†…éƒ¨è¡¨ç¾ã®é…åˆ—ã®å½¢ã«å¤‰æ›ã—ã¦è¿”ã™\textit{scan\_float}\
procedureã«ã‚ˆã£ã¦è¡Œã†ï¼Ž
ã“ã‚Œã¯æ•´æ•°ã‚’èª­ã¿è¾¼ã‚€\textit{scan\_int}ã‚„é•·ã•ã‚’èª­ã¿å–ã‚‹
\textit{scan\_dimen}ï¼Œglueã‚’èª­ã¿å–ã‚‹\textit{scan\_glue}ã®å„procedureã«å¯¾
å¿œã™ã‚‹ã‚‚ã®ã¨ã—ã¦è€ƒãˆãŸã‚‚ã®ã§ï¼Œã‚³ãƒ¼ãƒ‰ã‚‚å¤§ã„ã«å‚è€ƒã«ã•ã›ã¦ã‚‚ã‚‰ã£ãŸï¼Ž
2é&nbsp;…æ¼”ç®—ã®ã‚³ãƒžãƒ³ãƒ‰ã®2ã¤ã‚ã®å¼•æ•°ã‚’èª­ã¿å–ã‚‹éƒ¨åˆ†ã‚‚ã“ã®procedureã€Œã&nbsp;ã‘ã€ã§è¡Œ
ã‚ã‚Œã‚‹ï¼Ž

\textit{scan\_dimen}ã§ã¯æ•´æ•°éƒ¨åˆ†ã‚’èª­ã‚€ã®ã«\textit{scan\_int}ã‚’ç”¨ã„ã¦ï¼Œæ¬¡
ã«å°æ•°éƒ¨ã‚’ç‹¬è‡ªã«èª­ã¿å–ã‚‹ã¨ã„ã†æ–¹æ³•ã‚’ã¨ã£ã¦ã„ãŸãŒï¼ŒåŒã˜æ–¹æ³•ã§ã¯21æ¡ã®æ•°å€¤
ã‚’èª­ã¿å–ã‚‹ã“ã¨ã¯ã§ããªã„ï¼Žãã“ã§ï¼Œ\textit{scan\_float}ã§ã¯ï¼Œå…ˆã«ï¼ˆã™ãå¾Œ
ã§è¿°ã¹ã‚‹ï¼‰å†…éƒ¨è¡¨ç¾ã®é…åˆ—ã‚’21æ¡åˆ†ç¢ºä¿ã—ï¼Œãã‚Œã«ä¸Šã®æ–¹ã‹ã‚‰æ•°å­—ã‚’è©°ã‚ã¦ã„ã
ã¨ã„ã†æ–¹æ³•ã‚’ã¨ã£ãŸï¼Ž22æ¡ã‚ä»¥é™ãŒå­˜åœ¨ã—ãŸå&nbsp;´åˆã¯ï¼ŒKnuth~\cite{TAOCP}ã«å¾“ã„ã€ŒåŸºæœ¬
çš„ã«ã¯å››æ¨äº”å…¥ã&nbsp;ãŒï¼Œä¸¸ã‚ã‚‹æ¡ãŒ5ã§ã‚ã‚‹å&nbsp;´åˆã¯æœ€ã‚‚è¿‘ã„å¶æ•°ã«ãªã‚‹ã‚ˆã†ã«ã€ä¸¸ã‚
ã‚‹\footnote{ã“ã®ä¸¸ã‚æ–¹ã¯å†…éƒ¨æ¼”ç®—ã§å…±é€šã§ã‚ã‚‹ï¼Žå…¨éƒ¨ã®ä¸‹ä½ã®æ¡ã‚’è¦‹ã¦ã‚‹ã‚ã‘
ã§ã¯ç„¡ã„ã®ã§ï¼Œä¸¸ã‚èª¤å·®ã¯æœ€å¤§ã§0.6\,ulpãã‚‰ã„ã«ãªã‚‹ã¯ãšã§ã‚ã‚‹ï¼Ž}ï¼Žã“ã†ã—
ã¦ä»®æ•°éƒ¨ã‚’èª­ã‚ã‚‹ã&nbsp;ã‘èª­ã‚“ã&nbsp;å¾Œï¼Œã‚‚ã—{\tt e}ã¾ãŸã¯{\tt E}ãŒã‚ã‚Œã°ï¼Œãã®å¾Œã«
æŒ‡æ•°éƒ¨ãŒç¶šãã‚‚ã®ã¨èªè­˜ã—ã¦ï¼ŒæŒ‡æ•°éƒ¨ã‚’\textit{scan\_int}ã§èª­ã¿å–ã‚‹ï¼Žã“ã†ã—
ã¦ä»®æ•°éƒ¨ã‚‚æŒ‡æ•°éƒ¨ã‚‚ä¸¡æ–¹èª­ã¿è¾¼ã‚“ã&nbsp;å¾Œã¯ï¼Œ\textit{scan\_float}ã¯ã“ã‚Œã‚’glueã¨
ã—ã¦packã—ï¼Œãã‚Œã‚’è¿”ã™ï¼Ž

\eteiri
ã¾ãŸï¼Œã€Œæµ®å‹•å°æ•°ç‚¹æ•°ã‚’èª­ã¿å–ã‚‹ã€ã¨ã¯ã„ã£ã¦ã‚‚ï¼Œæ–‡å­—åˆ—ã§æ›¸ã‹ã‚ŒãŸ{\tt
-1.701E5}ã&nbsp;ã‘ã‚’ã€Œèª­ã¿å–ã‚‹ã€ã®ã§ã¯ã‚ã¾ã‚Šä¾¿åˆ©ã§ã¯ãªã„ã®ã§ï¼Œ
æ—¢å­˜ã®skipãƒ¬ã‚¸ã‚¹ã‚¿ã‚„ï¼Œcountãƒ¬ã‚¸ã‚¹
ã‚¿ã‚„dimenãƒ¬ã‚¸ã‚¹ã‚¿ã‚‚æŒ‡å®šã§ãã‚‹ã‚ˆã†ã«ã—ã¦ã‚ã‚‹ï¼Žskipãƒ¬ã‚¸ã‚¹ã‚¿ã®å&nbsp;´åˆã¯ï¼Œã‚ã‚‹
æµ®å‹•å°æ•°ç‚¹æ•°ã‚’è¡¨ç¾ã—ã¦ã„ãªã„å¯èƒ½æ€§ã‚‚è€ƒãˆã‚‰ã‚Œã‚‹ã®ã§ï¼Œãã®ãƒã‚§ãƒƒã‚¯ã‚’è¡Œã†ã‚ˆ
ã†ã«ã—ã¦ã‚ã‚‹ï¼Žä¸€æ–¹ï¼Œcountãƒ¬ã‚¸ã‚¹ã‚¿ã‚„dimenãƒ¬ã‚¸ã‚¹ã‚¿ã¯ãã®ã‚ˆã†ãªã“ã¨ã«ã¤ã„ã¦
ã¯ãƒã‚§ãƒƒã‚¯ã™ã‚‹å¿…è¦ã¯ãªã„ï¼Ž
ãªãŠï¼Œdimensionã‚’ç›´ã«ï¼Œä¾‹ãˆã°\verb+1.2mm+ã¨ã‹æŒ‡å®šã•ã‚ŒãŸå&nbsp;´åˆã¯ï¼Œæœ€åˆã«å‡ºä¼šã†
æ–‡å­—ãŒ1ã§ã‚ã‚‹ã‹ã‚‰ï¼Œæµ®å‹•å°æ•°ç‚¹æ•°ãŒæ–‡å­—åˆ—è¡¨è¨˜ã•ã‚Œã¦ã„ã‚‹ã‚‚ã®ã¨è¦‹ãªã•ã‚Œã‚‹ã®
ã§ï¼Œæ„å›³ã—ãŸçµæžœã¯çµ¶å¯¾ã«å¾—ã‚‰ã‚Œãªã„ã“ã¨ã«æ³¨æ„ï¼Ž

\eteiri
å‡ºåŠ›éƒ¨ã§å•é¡Œã«ãªã‚‹ã®ã¯ã€Œã©ã®æ›¸å¼
ã§å‡ºåŠ›ã™ã‚‹ã‹ã€ã§ã‚ã‚‹ï¼Žã”å­˜çŸ¥ã®ã‚ˆã†ã«Fortranã§ã¯{\tt FORMAT}æ–‡ãŒï¼ŒCè¨€èªžã§ã¯
{\tt printf}æ–‡ã®ç¬¬ä¸€å¼•æ•°ãŒå‡ºåŠ›æ›¸å¼ã®è¨­å®šã‚’æ‹…ã£ã¦ãŠã‚Šï¼Œä½•æ¡å‡ºåŠ›ã™ã‚‹ã&nbsp;ã¨ã‹ï¼ŒæŒ‡æ•°
å½¢å¼ã«ã™ã‚‹ã®ã‹ãã†ã§ãªã„ã®ã‹ã¨ã‹ï¼Œã„ãã¤ã‹ã®è¨­å®šé&nbsp;…ç›®ãŒç”¨æ„ã•ã‚Œã¦ã„ã‚‹ï¼Žä»Š
å›žã§ã¯ãã†ã„ã†æœ¬æ&nbsp;¼çš„ãªå‡ºåŠ›æ©Ÿèƒ½ã‚’å®Ÿè£…ã™ã‚‹ã“ã¨ã¯ã›ãšã«ï¼Œprimitiveã¨ã—ã¦ã¯ä»¥
ä¸‹ã«çµžã‚‹ã“ã¨ã«ã—ãŸï¼š
\begin{enumerate}
\item\verb+\fpfrac+ï¼šä»®æ•°éƒ¨ã‚’$\pm a.bcd\cdots$ã®å½¢ã§å‡ºåŠ›ã™ã‚‹ï¼Žæœ€å¾Œã«0ãŒ
     ç¶šã‹ãªã„ç¯„å›²å†…ã§ã§ãã‚‹ã&nbsp;ã‘å¤šãã®æ¡ã‚’å‡ºåŠ›ã™ã‚‹ï¼Žæ­£æ•°ã®å&nbsp;´åˆã¯ç¬¦å·ã¯å‡º
     åŠ›ã•ã‚Œãªã„ï¼Ž
\item\verb+\fpexpr+ï¼šæŒ‡æ•°éƒ¨ã‚’ãã®ã¾ã¾å‡ºåŠ›ã™ã‚‹ï¼Ž
\end{enumerate}
æµ®å‹•å°æ•°ç‚¹æ•°å…¨ä½“ã‚’ä¸€åº¦ã«å‡ºåŠ›ã™ã‚‹primitiveã‚’æº–å‚™ã—ãªã‹ã£ãŸã®ã¯ï¼Œã€Œãã†ã„
ã†ã®ã¯ãƒžã‚¯ãƒ­æ©Ÿèƒ½ãŒã‚ã‚Œã°ç”¨ãŒè¶³ã‚Šã‚‹ã€ã“ã¨ã§ã‚ã‚‹ï¼Žã¾ãŸï¼Œ\TeX ã®æ•°å¼çµ„ç‰ˆèƒ½
åŠ›ã‚’ç”Ÿã‹ã•ãªã„ã®ã¯å‹¿ä½“ãªã„ã“ã¨ã§ã¯ãªã„ã‹ï¼Œã¨ã‚‚è€ƒãˆãŸã‹ã‚‰ã§ã‚ã‚‹ï¼Ž
\skip1=\real-1234567890123456.4
ä¾‹ãˆã°$-1234567890123456.4$ã‚’{\tt\fpfrac\skip1{}E\fpexpr\skip1}ã¨å‡ºåŠ›ã™
ã‚‹ã‚ˆã‚Šã‹ã¯ï¼Œ
$\fpfrac\skip1\times10^{\fpexpr\skip1}$ãªã©
ã¨è¡¨ç¤ºã•ã›ã‚‹æ–¹ãŒè¦‹æ&nbsp;„ãˆãŒè‰¯ã„ï¼Ž
æ¡æ•°æŒ‡å®šã«ã¤ã„ã¦ã¯ï¼ˆdimensionã®è¡¨ç¤ºã¨ã‹ã«ã‚‚ãã®ã‚ˆã†ãª
æ©Ÿèƒ½ã¯ç„¡ã„ã®ã§ï¼‰è¦‹é€ã‚‹ã“ã¨ã«ã—ãŸï¼Ž

\eteiri
countãƒ¬ã‚¸ã‚¹ã‚¿ã‚„dimenãƒ¬ã‚¸ã‚¹ã‚¿ã‹ã‚‰æµ®å‹•å°æ•°ç‚¹æ•°ã®å¤‰æ›ãŒå®Ÿè£…ã•ã‚ŒãŸã®ã&nbsp;ã‹ã‚‰ï¼Œ
é€†ã®ï¼Œå³ã¡æµ®å‹•å°æ•°ç‚¹æ•°ã‹ã‚‰æ•´æ•°ã‚„dimensionã¸ã®å¤‰æ›ã‚‚å®Ÿè£…ã•ã‚Œã‚‹ã¹ãã§ã‚ã‚‹ï¼Ž
ã—ã‹ã—ï¼Œdimensionã®\TeX ã§ã®å†…éƒ¨è¡¨ç¾ã‚’è€ƒãˆã‚‹ã¨ï¼Œ2ã¤ã®å‡¦ç†ã¯ã‚ã¾ã‚Šé•ã‚ãªã„ã‚ˆ
ã†ã«ã§ãã‚‹ï¼Ždimensionã¸ã®å¤‰æ›ã¯æµ®å‹•å°æ•°ç‚¹æ•°ã‚’spå˜ä½ã«ï¼ˆã¤ã¾ã‚Šï¼Œ65536ã‚’ã‹
ã‘ã¦ï¼‰ã—ãŸã‚‚ã®ã®æ•´æ•°éƒ¨ã‚’ã¨ã‚Œã°çµ‚ã‚ã£ã¦ã—ã¾ã†ï¼Ž
ä¸¸ã‚æ–¹ã«ã¤ã„ã¦ã¯ï¼Œ0ã«è¿‘ã„æ–¹ã«ä¸¸ã‚ã‚‹ã¨ã—ãŸãŒï¼Œdimensionã¸ã®å¤‰æ›ã¯ä¸€é€£ã®è¨ˆ
ç®—ã®æœ€å¾Œã§è¡Œã†ã“ã¨ã¨æ±ºã‚ã¦ãŠã‘ã°ï¼Žã‚ã¾ã‚Šä¸éƒ½åˆã¯èµ·ã“ã‚‰ãªã„ã‚ˆã†ã«æ„Ÿã˜ã‚‹ï¼Ž

\subsection{è™«å–ã‚Š}
ä»¥ä¸Šã®æ©Ÿèƒ½ã‚’å®Ÿè£…ã—ãŸæ‰€ã§ï¼ˆå®Ÿéš›ã¯å®Ÿè£…ã¨åŠåˆ†å¹³è¡Œã—ãŸæ„Ÿã˜ã§ï¼‰debugã‚’è¡Œã£ãŸï¼Ž
ã‚‚ã¯ã‚„\trip\ testç­‰ã«ã¯é&nbsp;¼ã‚‹ã“ã¨ã¯ã§ããšï¼Œå…¨éƒ¨è‡ªåˆ†ã§ãªã‚“ã¨ã‹ã—ãªã‘ã‚Œã°ãªã‚‰ãª
ã„ï¼Žå…ƒã‹ã‚‰typoãŒå¤šã„æ–¹ãªã®ã§bugã¯å¤šé‡ã«åŠã³ï¼Œã‹ãªã‚Šã®æ™‚é–“ã¨æ°—åŠ›ã‚’debugã«
ã¨ã‚‰ã‚Œã¦ã—ã¾ã£ãŸï¼Ždebugã¯ä¸»ã«åŠ&nbsp;ç®—ã‚„å¹³æ–¹æ&nbsp;¹ã‚’æ±‚ã‚ã‚‹Newtonæ³•ï¼Œ$e$ã®Taylorå±•
é–‹ã«ã‚ˆã‚‹è¨ˆç®—ãªã©ã®ç¹°ã‚Šè¿”ã—ã§è¡Œã£ãŸï¼Žæ¼”ç®—ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ&nbsp;ã®éƒ¨åˆ†ã«ã‚‚ï¼Œã‚¿ã‚¤ãƒ—ãƒŸ
ã‚¹ã‚„åƒ•ã®è©°ã‚ã®ç”˜ã•ï¼ˆåŠ&nbsp;æ¸›ç®—ã§ã®ç¬¦å·ã®å‡¦ç†ãªã©ï¼‰ãŒè¦‹ã‚‰ã‚ŒãŸãŒï¼ŒåŽ„ä»‹ã&nbsp;ã£ãŸã®ã¯
\TeX è‡ªèº«ã®ãƒ¡ãƒ¢ãƒªç®¡ç†ã«ã‚ˆã‚‹å‹•çš„ç¢ºä¿/è§£æ”¾ã®å‡¦ç†ã§ã‚ã£ãŸï¼Ž

å…ˆã®è„šæ³¨ã«æ›¸ã„ãŸã‚ˆã†ã«ï¼Œ\TeX ã§ã®ãƒ¡ãƒ¢ãƒªç¢ºä¿ã¯æœ€åˆã«å·¨å¤§ãªé…åˆ—ãŒç¢ºä¿ã•ã‚Œ
ãŸå¾Œã¯ã™ã¹ã¦\TeX å†…éƒ¨ã®\textit{get\_node}é–¢æ•°ãªã©ã«ã‚ˆã£ã¦è¡Œã‚ã‚Œã‚‹ã®ã§ã‚ã£
ãŸï¼Žå‹•çš„ç¢ºä¿ã§é¿ã‘ã¦é€šã‚Œãªã„å•é¡Œã¨ã—ã¦ï¼ŒåˆæœŸåŒ–å¿˜ã‚Œã¨è§£æ”¾å¿˜ã‚Œï¼Œãã‚Œã«2é‡
ã®è§£æ”¾ãŒã‚ã‚‹ï¼Žå‰è€…ã«ã¤ã„ã¦ã¯å¯¾å‡¦æ–¹æ³•ã¯ç°¡å˜ãªã®ã&nbsp;ãŒï¼Œå¾Œè€…2ã¤ãŒæ›²è€…ã&nbsp;ã£ãŸï¼Ž
æµ®å‹•å°æ•°ç‚¹æ•°ã‚’å†…éƒ¨ã§è¡¨ç¾ã™ã‚‹é…åˆ—ã¯è‡ªåˆ†ã§ä½œã£ãŸã“ã¨ãŒã‚ˆãã‚ã‹ã£ã¦ã„ã‚‹ã‹ã‚‰ï¼Œ
ãã‚Œã«ã¤ã„ã¦ã¯å•é¡Œãªã„ï¼Ž

\eteiri
ä¸€æ–¹ï¼Œå®Ÿã¯glueã®æ&nbsp;¼ç´ã«ã¤ã„ã¦ã‚‚å‹•çš„ç¢ºä¿/è§£æ”¾ãŒä½¿
ã‚ã‚Œã¦ã„ã‚‹ï¼Žglueã¯width, stretch, shrinkã®3ã¤ã®éƒ¨åˆ†ãŒã‚ã‚‹ã¨æ›¸ã„ãŸãŒï¼Œå†…
éƒ¨ã§ã¯ã•ã‚‰ã«\textit{glue\_ref\_count}ã¨ã„ã†é‡ãŒå„glueã«ã¤ã„ã¦è¨­ã‘ã‚‰ã‚Œã¦ã„
ã‚‹ï¼Žã“ã‚Œã¯åå‰ã®é€šã‚Šã€Œä½•å€‹ã®å¤‰æ•°ãŒã“ã®glueã‚’æŒ‡ã—ã¦ã„ã‚‹ã‹ã€ã¨ã„ã†ã®ã‚’ç¤ºã™
å€¤ã§ã‚ã£ã¦ï¼Œglueã‚’è§£æ”¾ã™ã‚‹ã‚ˆã†ã«\textit{delete\_glue\_ref} procedureã§æŒ‡ä»¤
ã—ã¦ã‚‚ï¼Œ\textit{glue\_ref\_count}ãŒ0ã§ãªã„é™ã‚Š\footnote{æœ¬æ¥ã¯nullå€¤åŸºæº–
ãªã®ã&nbsp;ãŒï¼Œãã“ã¾ã§ç´°ã‹ã„æ‰€ã¯ã©ã†ã§ã‚‚ã„ã„ï¼Ž}å®Ÿéš›ã«ã¯è§£æ”¾ã•ã‚Œãªã„ã‚ˆã†ã«ãªã£
ã¦ã„ã‚‹ï¼Žãã—ã¦ï¼Œskipãƒ¬ã‚¸ã‚¹ã‚¿ã«å®Ÿéš›ã«æ&nbsp;¼ç´ã•ã‚Œã¦ã„ã‚‹ã®ã¯å®Ÿéš›ã®glueã®å€¤ã¸ã®ãƒã‚¤
ãƒ³ã‚¿ã¨ãªã£ã¦ã„ã‚‹ï¼Ž

å‹•ä½œç¢ºèªã‚’ã—ãŸã¨ã“ã‚ï¼Œ\verb+\fpadd+ãªã©ã§ã‚ã‚‹skipãƒ¬ã‚¸ã‚¹ã‚¿ã®å€¤ãŒæ¼”ç®—çµæžœã«
ã‚ˆã£ã¦æ›¸ãæ›ãˆã‚‰ã‚Œã‚‹ã‚ˆã†ãªå&nbsp;´åˆã«ï¼Œæ›¸ãæ›ãˆå…ƒã®glueã¯ï¼ˆä»–ã«ãã‚Œã‚’å‚ç…§ã—ã¦
ã„ã‚‹å¤‰æ•°ãŒç„¡ã„é™ã‚Šï¼‰è§£æ”¾ã•ã‚Œã‚‹ã¹ãã§ã‚ã‚‹ã«ã‚‚é–¢ã‚ã‚‰ãšï¼Œãªãœã‹è§£æ”¾ã•ã‚Œãªã„
ã¾ã¾ï¼Œã„ã‚ã°æ¬¡ã€…ã¨éŽåŽ»ã®éºç‰©ã&nbsp;ã‘ãŒå¢—ãˆã¦ã„ã£ã¦ã—ã¾ã†ã¨ã„ã†äº‹æ…‹ãŒèµ·ã“ã£ãŸ
\footnote{\verb+\tracingstats+ã«ä¾‹ãˆã°3ãã‚‰ã„ã®å€¤ã‚’æŒ‡å®šã—ã¦ãŠã‘ã°ï¼Œ
\TeX ã§ã®ãƒ¡ãƒ¢ãƒªæ¶ˆè²»é‡ãŒãƒšãƒ¼ã‚¸å‡ºåŠ›æ™‚ã«è¡¨ç¤ºã•ã‚Œã‚‹ç”¨ã«ãªã‚‹ï¼Ž}ï¼Ž
1å›žã‚ãŸã‚Šã§ã¯äº›ç´°ãªé‡ã¨ã—ã‹ãªã‚‰ãªã„ãŒï¼Œã—ã‹ã—bugã¯bugã§ã‚ã‚‹ï¼Žã“ã‚Œã‚’é™¤åŽ»
ã™ã‚‹ãŸã‚ã«ï¼Œè§£æ”¾æŒ‡ä»¤ã‚’1å›žå¤šãå…¥ã‚ŒãŸã‚‰ï¼Œä»Šåº¦ã¯ç„¡é™ãƒ«ãƒ¼ãƒ—ã‚„ã‚‰segmentation
faultãŒå‡ºã¦å¼·åˆ¶çµ‚äº†ã™ã‚‹ã¨ã„ã†äº‹æ…‹ãŒç™ºç”Ÿã—ãŸï¼Ž

çµå±€ï¼Œ\textit{scan\_float} procedureã®å†…éƒ¨ã§æ—¢å­˜ã®glueã‚’å–ã‚Šå‡ºã™æ‰€ã§
reference countãŒ1å¢—åŠ&nbsp;ã—ã¦ã„ã‚‹ã®ã§ã¯ãªã„ã‹ã¨ã„ã†çµè«–ã«é”ã—ï¼Œ
\textit{glue\_ref\_count}ã&nbsp;ã‘ã‚’1æ¸›å°‘ã•ã›ã‚‹å‡¦ç†ã‚’ãã“ã«åŠ&nbsp;ãˆãŸæ‰€ï¼Œã†ã¾ãå‹•ãã‚ˆã†
ã«ãªã£ãŸï¼Ž

\subsection{åˆç­‰é–¢æ•°}
æ¬¡ã«ï¼Œåˆç­‰é–¢æ•°ã®å®Ÿè£…ã§ã‚ã‚‹ï¼ŽåŸºæœ¬çš„ã«ã¯ï¼Œé–¢ä¿‚å¼ã‚’ç”¨ã„ã¦å¼•æ•°ã‚’0è¿‘å‚ã®ã‚ã‚‹å€¤
ã«ã¾ã§æŒã£ã¦ã„ã£ã¦ï¼Œãã“ã‹ã‚‰å…ˆã‚’Taylorå±•é–‹ãªã©ã‚’ç”¨ã„ã¦è¨ˆç®—ã•ã›ï¼Œé–¢ä¿‚å¼ã‚’é€†ã«
ç”¨ã„ã¦å…ƒã«æˆ»ã™ã¨ã„ã†ã‚‚ã®ã§ã‚ã‚‹ï¼Žå¹³å±±\nobreak\cite{mppack}ã§ã®å®Ÿè£…ã¨å¥¥æ‘%
\nobreak\cite{okuc}ã‚’å¤§ã„ã«å‚è€ƒã«ã—ãŸï¼Ž

ã“ã“ã§ï¼Œé–¢ä¿‚å¼ã®é©ç”¨ã¨é€†å‘ãã®é©ç”¨ã«ã‚ˆã‚Šèª¤å·®ãŒå…¥ã‚Šè¾¼ã‚€ä½™åœ°ãŒã‚ã‚‹ã®ã§ï¼Œ
ãã“ã‚’ãªã‚“ã¨ã‹ã™ã‚‹ãŸã‚ã«å†…éƒ¨ã®å››å‰‡æ¼”ç®—ã‚’ä»»æ„ç²¾åº¦ã§ã§ãã‚‹ã‚ˆã†ã«å®Ÿè£…ã—ãŸã®
ã§ã‚ã‚‹ï¼Žæœ¬ç¯€ã®é–¢æ•°ã®è¨ˆç®—ã§ã¯ï¼Ž$n$æ¡ã®å¼•æ•°ãŒä¸Žãˆã‚‰ã‚ŒãŸæ™‚ã«ï¼Œå†…éƒ¨ã§ã¯
$n+15$æ¡ã§è¨ˆç®—ã‚’è¡Œã£ã¦ã„ã‚‹ï¼Žã“ã®åˆ†é‡ã¯ã€Œã¾ã‚ã“ã‚Œãã‚‰ã„æ¡ã‚’å¢—ã‚„ã—ã¦ãŠã‘ã°
ã„ã„ã‹ã€ã¨ã„ã†å‹æ‰‹ãªæŽ¨æ¸¬ã§é¸ã‚“ã&nbsp;ã‚‚ã®ã§ã‚ã£ã¦ï¼Œé©åˆ‡ã‹ã©ã†ã‹ã¯çŸ¥ã‚‰ãªã„ï¼Ž

\paragraph{å¹³æ–¹æ&nbsp;¹ (\textit{fp\_sqrt})}
$a$ã®å¹³æ–¹æ&nbsp;¹$\sqrt a$ã®è¨ˆç®—ã¯ï¼Œæ–¹ç¨‹å¼$1-a/x^2=0$ã‹ã‚‰å°Žã‹ã‚Œã‚‹Newtonæ³•
$x_{n+1}:=(3-ax_n^2)x_n/2$ã‚’ç”¨ã„ã‚‹ã“ã¨ã«ã—ãŸï¼Žã“ã®Newtonæ³•ã§ã¯$1/\!\sqrt
a$ãŒ2æ¬¡åŽæŸã§è¨ˆç®—ã•ã‚Œï¼ŒåŽæŸå¾Œ$x_\infty$ã«$a$ã‚’ã‹ã‘ã‚Œã°ï¼Œ$\sqrt a$ãŒå¾—ã‚‰ã‚Œ
ã‚‹ï¼Ž$a$
ã¯$[0.1,10)$ã®ç¯„å›²å†…ã«å…¥ã‚‹ã‚ˆã†ã«å¤‰æ›ã—ã¦è¨ˆç®—ã™ã‚‹ã“ã¨ã¨ã—ã¦ï¼ŒåˆæœŸå€¤$x_0$
ã¯ï¼Œ$a$ã®ä¸Šä½æ¡ã‚’ã„ãã¤ã‹ã¨ã£ãŸã‚‚ã®ã®å¹³æ–¹æ&nbsp;¹ã‚’å¥¥æ‘
\nobreak\cite{okuc}ã«è¼‰ã£ã¦ã„ã‚‹ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ&nbsp;ã‚’ä½¿ç”¨ã—ã¦è¨ˆç®—ã—ãŸã‚‚ã®ã¨ã—ãŸï¼Ž

ãªãŠï¼Œã“ã®é–¢æ•°ã®debugä¸­ã«ï¼Œãšã£ã¨å‰ã«æ›¸ã„ãŸã€Œåˆ—ã®é•·ã•ã®ç¸®å°ã€ã®ä¸¸ã‚å‡¦ç†
ã«bugãŒè¦‹ã¤ã‹ã£ãŸï¼ŽåŽŸå›&nbsp;ã¯{\bf while}\ $i&lt;n+1$ {\bf do} ... ã®ãƒ«ãƒ¼
ãƒ—ã§ï¼Œ$i$ã‚‚$n$ã‚‚æ›´æ–°ã›ãšã«å›žã—ã¦ã„ãŸã“ã¨ã§ã‚ã£ãŸï¼Žã“ã®ã‚ˆã†ã«ï¼Œåˆç­‰é–¢æ•°ã®
debugä¸­ã«ï¼Œæ—¢ã«çµ„ã‚“ã&nbsp;å››å‰‡æ¼”ç®—ç­‰ã®bugãŒç™ºè¦‹ã•ã‚Œã‚‹ã“ã¨ãŒçµæ§‹ã‚ã£ãŸãŒï¼Œä»¥é™
ã¯ã„ã¡ã„ã¡ãã‚Œã‚’æ›¸ã‹ãªã„ã“ã¨ã«ã™ã‚‹ï¼Ž

\paragraph{æŒ‡æ•°é–¢æ•° (\textit{fp\_exponent})}
æŒ‡æ•°é–¢æ•°ã¯Taylorå±•é–‹$\exp x=\sum_{i=0}^\infty x^i/i!$ã®æœ‰é™
é&nbsp;…ã®éƒ¨åˆ†å’Œã§è¨ˆç®—ã™ã‚‹ï¼ŽåŽæŸã‚’é€Ÿã‚ã‚‹ãŸã‚ã¨ï¼Œäº¤ä»£ç´šæ•°ã®è¨ˆç®—ã«æ¡è½ã¡ã®æã‚ŒãŒ
ã‚ã‚‹ã“ã¨ã‹ã‚‰ï¼ŒTaylorç´šæ•°ã®è¨ˆç®—ã¯$x\in[0,1]$ã®ç¯„å›²å†…ã&nbsp;ã‘ã§è¡Œã„ï¼Œä¸€èˆ¬ã¯
$\exp 2x=(\exp x)^2$, $\exp(-x)=1/\exp x$ã§ãã‚Œã«å¸°ç€ã•ã›ã¦ã„ã‚‹ï¼Ž

\paragraph{ä¸‰è§’é–¢æ•°å‘¨è¾º (\textit{fp\_tri\_hyp}, 
\textit{fp\_ceil\_floor})} 
ã”å­˜çŸ¥ã®ã‚ˆã†ã«ï¼Œä¸‰è§’é–¢æ•°ã¨åŒæ›²ç·šé–¢æ•°ã®Taylorå±•é–‹ã¯ç¬¦å·ãŒç•°ãªã‚‹ã&nbsp;ã‘ã§ã‚ã‚‹ï¼Ž
ã•ã‚‰ã«ï¼Œ$\tan x=\sin x/\cos x$ ã§ã‚ã‚Šï¼Œsinã®å±•é–‹ã¯å¥‡æ•°æ¬¡ã®ã¿ãŒï¼Œcosã®å±•é–‹
ã«ã¯å¶æ•°æ¬¡ã®ã¿ãŒç¾ã‚Œã‚‹ã®ã§ï¼Œ$\sin x$ã¨$\cos x$ã‚’ï¼ˆã‚ã‚‹ã„ã¯ï¼Œ$\sinh x$ã¨
$\cosh x$ã‚’ï¼‰åŒæ™‚ã«è¨ˆç®—ã™ã‚‹ã®ã‚‚æ‚ªãã¯ç„¡ã„ï¼Ž$\cos x$, $\cosh x$ã®Taylorå±•
é–‹ã®è¨ˆç®—ã§ã¯ï¼Œæ¡è½ã¡ã‚’é˜²ããŸã‚ã«2æ¬¡ã®é&nbsp;…ã‹ã‚‰å…ˆã®å’Œã‚’è¨ˆç®—ã—ã¦ï¼Œã™ã¹ã¦ã®è¨ˆç®—
ã®å¾Œã«1ã‚’è¶³ã™ã¨ã„ã†æ–¹æ³•ã‚’ã¨ã£ãŸï¼Ž

ã„ã¤ã‚‚ã®ã‚ˆã†ã«åŽæŸã‚’é€Ÿã‚ã‚‹ãŸã‚ï¼Œä¸‰è§’é–¢æ•°ã§ã¯å¼•æ•°ã‚’$[0,\pi/4]$ã«ï¼Œ
åŒæ›²ç·šé–¢æ•°ã§ã¯å¼•æ•°ã‚’$[0,1]$ã«å¸°ç€ã•ã›ã‚‹ï¼Žä¸‰è§’é–¢æ•°ã§ã¯ï¼Œå¼•æ•°$x$
ã«å¯¾ã—ã¦$a:=x-2\pi \lfloor x/2\pi\rfloor$ã¨ã—ã¦ï¼Œ$a/4$ã«å¯¾ã—ã¦Taylorå±•é–‹
ã®è¨ˆç®—ã‚’è¡Œã„ï¼Œ
\[
 \sin 2x=2\sin x(\cos x-1)+2\sin x,\qquad
\cos 2x-1=-2\sin^2 x
\]
ã‚’2å›žç”¨ã„ã¦ç­”ãˆã‚’è¨ˆç®—ã™ã‚‹ï¼Ž\newpage

åŒæ›²ç·šé–¢æ•°ã§ã¯ï¼Œ
\[
 \sinh 2x=2\sinh x(\cosh x-1)+2\sinh x,\qquad
\cosh 2x-1=2\sinh^2 x
\]
ã‚’åŒæ§˜ã«ç”¨ã„ã‚‹ï¼Ž

ã¾ãŸï¼Œå‰æ®µè½ã®$a$ã®å¼ã‹ã‚‰åˆ†ã‹ã‚‹ã‚ˆã†ã«ï¼Œ$\lfloor\cdot\rfloor$ã®è¨ˆç®—ãŒå¿…è¦
ã¨ãªã‚‹ï¼Žã“ã‚Œã¨åŒã˜ã‚ˆã†ãªã‚³ãƒ¼ãƒ‰ã§$\lceil\cdot\rceil$ã‚‚è¨ˆç®—ã§ãã‚‹ã®ã§ï¼Œã¤
ã„ã§ã«ä¸¡è€…ã‚’è¡Œã†\textit{fp\_ceil\_floor}\ procedureã‚‚ã“ã“ã§æ›¸ã„ãŸï¼Ž

\paragraph{å¯¾æ•°é–¢æ•°å‘¨è¾º (\textit{fp\_log\_inner}, 
\textit{fp\_log}, \textit{fp\_arc\_hyp})}
å¯¾æ•°é–¢æ•°ã¯ï¼Œå¥¥æ‘\nobreak\cite{okuc}ã«ã‚ˆã‚Œã°
\[
 \frac12\log\frac{1+u}{1-u}=u+\frac{u^3}{3}+\frac{u^5}{5}
+\frac{u^7}{7}+\cdots
\]
ã‚’è¨ˆç®—ã™ã‚‹æ–¹ãŒé€Ÿã„ã¨ã‚ã‚‹ãŒï¼Œæ˜Žã‚‰ã‹ã«åˆ†ã‹ã‚‹ã‚ˆã†ã«ã“ã®å¼ã¯arctanhã®Taylor
å±•é–‹å¼ãã®ã‚‚ã®ã§ã‚ã‚‹ï¼Ž$x=(1+u)/(1-u)$ã‚’è§£ãã¨$u=(x-1)/(x+1)$ã¨ãªã‚Šï¼Œã“ã‚Œ
ã¯$x&gt;0$ã§ã¯å˜èª¿å¢—åŠ&nbsp;ã§$x=1$ã®ã¨ãã«$u=0$ã¨ãªã‚‹ï¼Žå½“ç„¶åŽæŸã‚’é€Ÿã‚ã‚‹ãŸã‚ã«ã¯
$|u|$ãŒå°ã•ã„æ–¹ãŒã‚ˆã„ã®ã§ï¼Œ$x$ã‚’1ã®è¿‘å‚ã®ç¯„å›²ã«å¸°ç€ã•ã›ã¦è¨ˆç®—ã‚’ãŠã“ãª
ã†ã‚ˆã†ã«ã™ã‚‹ï¼Ž
å¸°ç€æ–¹æ³•ã¯å˜ç´”ã§ï¼Œã¾ãšé©åˆ‡ãª$10^n$ã‚’æŽ›ã‘ã¦$x\in [1,10)$ã¨
ã•ã›ï¼Œä»¥ä¸‹ã®ã‚ˆã†ã«ã•ã‚‰ã«å¤‰æ›ã™ã‚‹ï¼š
\def\from{\leftarrow}
\begin{alignat*}{4}
x \in[1,1.5)&amp;\Longrightarrow \text{\inhibitglueï¼ˆãã®ã¾ã¾ï¼‰\inhibitglue},\qquad&amp;
x \in[1.5,3)&amp;\Longrightarrow x\from x/2,\\
x \in[3,6)&amp;\Longrightarrow x\from x/4,&amp;
x \in[6,10)&amp;\Longrightarrow x\from x/8.
\end{alignat*}
ã“ã†ã™ã‚‹ã¨ï¼Œ$|u|\le 0.2$ã¨ãªã‚Šï¼ŒåŽæŸé€Ÿåº¦ã¯ã‹ãªã‚Šé€Ÿã„ã‚‚ã®ã¨äºˆæƒ³ã•ã‚Œã‚‹ï¼Žé€†
å¤‰æ›ã«å¿…è¦ãª$\log 10$, $\log 2$, $\log 4$, $\log 8$ã«ã¤ã„ã¦ã¯ï¼Œ$\log 10$
ã¨$\log 64$ã‚’å®šæ•°ã¨ã—ã¦å†…éƒ¨ã«æŒã£ã¦ãŠãã“ã¨ã¨ã—ãŸï¼Ž

å¯¾æ•°é–¢æ•°$\log x$ã‚’å®Ÿè£…ã—ã¦ã—ã¾ãˆã°ï¼Œé€†åŒæ›²ç·šé–¢æ•°ã¯ä»¥ä¸‹ã®å¼
ã§è¨ˆç®—å¯èƒ½ã§ã‚ã‚‹ï¼š
\begin{align*}
\mathop{\rm arcsinh} x&amp;=\log(x+\sqrt{x^2+1}),\\
\mathop{\rm arccosh} x&amp;=\log(x+\sqrt{x^2-1}),\qquad x\ge 1\\
\mathop{\rm arctanh} x&amp;=\frac12\log\frac{1+x}{1-x},\qquad |x|&lt;1
\end{align*}
ã“ã®ä¸­ã§arctanhã®å®Ÿè£…ã¯logã®ãã‚Œã®å†…éƒ¨ã«å…¥ã‚Šè¾¼ã‚€å½¢ã«ãªã£ã¦ã„ã‚‹ã®ã§ï¼Œå¼•æ•°
ãŒå°ã•ã„å&nbsp;´åˆã«ã¯$\log x$ã®å†…éƒ¨è¨ˆç®—éƒ¨ï¼ˆå³ã¡ï¼Œæœ¬ç¯€ã®æœ€åˆã«ç¤ºã—ãŸTaylorå±•é–‹
ã®è¨ˆç®—ï¼‰ã«ãã®ã¾ã¾å¼•ãæ¸¡ã—ã¦ã—ã¾ã†ã‚ˆã†ã«ã—ãŸï¼Ž

ã—ã‹ã—ï¼Œã“ã®å¼ã§ã¯$x\simeq 0$ã§ã‚ã‚‹ã¨ãï¼Œ$x+\sqrt{x^2+1}\simeq 1$ã¨ãªã‚‹
ã®ã§æ¡è½ã¡ãŒç™ºç”Ÿã™ã‚‹ï¼Žãã“ã§ï¼Œ$x$ã®æœ‰åŠ¹æ¡æ•°ãŒ$3n$ã§ã‚ã‚‹ã¨ãï¼Œ
$|x|&lt;10^{-n-5}$ã§ã‚ã‚Œã°ï¼Œæ¬¡ã®Taylorå±•é–‹å¼ã‚’ç”¨ã„ã¦arcsinhã‚’è¨ˆç®—ã™ã‚‹ã“ã¨ã«ã—
ãŸï¼š
\[
\mathop{\rm arcsinh} x=x-\frac{x^3}6+\frac{3x^5}{40}-\cdots.
\]
\paragraph{é€†ä¸‰è§’é–¢æ•° (\textit{fp\_arc\_tri})}
é€†ä¸‰è§’é–¢æ•°ã¯å¤šä¾¡ã&nbsp;ãŒï¼Œå¸¸è­˜çš„ã«è€ƒãˆã‚Œã°$\arcsin x$, $\arctan x\in
[-\pi/2,\pi/2]$, $\arccos x\in[0,\pi]$ã¨ã™ã‚‹ã®ãŒé©å½“ã&nbsp;ã‚ã†ï¼Ž$\arcsin
x=\arctan (x/\!\sqrt{1-x^2})$ã§ã‚ã‚‹ã‹ã‚‰ï¼Œ$\arctan x$ã&nbsp;ã‘è¨ˆç®—ã™ã‚Œã°ã‚ˆã„ãŒï¼Œ
ã“ã‚Œã¯ã„ã¤ã‚‚ã®ã‚ˆã†ã«ç´šæ•°å±•é–‹
\[
 \arctan x=\sum_{n} \frac{(-1)^nx^{2n+1}}{2n+1},\qquad |x|\le 1
\]
ã‚’ç”¨ã„ã‚‹ï¼Ž$\arctan x=\pi/2 - \arctan x^{-1}$, $\arctan x=\pi/4 - \arctan
((1-x)/(1+x))$ã‚’ç”¨ã„ã‚Œã°ï¼Œ$|x|\le \tan \pi/8=\sqrt 2-1=0.414\cdots$ã¾ã§
ã§ãã¦ï¼ŒåŽæŸã¯ä¿è¨¼ã•ã‚Œã‚‹ï¼Ž
\paragraph{ã¹ãä¹— (\textit{fp\_pow\_int})}
ä¸€èˆ¬ã«ã¯$a^b$ã®è¨ˆç®—ã¯$\exp(b\log a)$ã¨ã™ã‚Œã°ã‚ˆã„ãŒï¼Œãã‚Œã§ã¯$(-2)^5$ãªã©
ã®$a\in[-\infty,0)$, $b\in\mathbb Z\setminus\mathbb N$ã®ã¨ããŒè¨ˆç®—ã§ããª
ã„ï¼Žã“ã®ãŸã‚ï¼ŒæŒ‡æ•°éƒ¨åˆ†ãŒæ•´æ•°ã®ã¨ãã®ç´¯ä¹—ã‚’è¨ˆç®—ã™ã‚‹é–¢æ•°
\textit{fp\_pow\_int}ã‚’ä½œã£ãŸï¼Žæ–¹é‡ã¯å¥¥æ‘\nobreak\cite{okuc}ã«å¾“ã„ï¼Œä¾‹ãˆã°$b=1701$ã®
ã¨ãã¯ï¼Œ$1701=1024+512+128+32+4+1$ã§ã‚ã‚‹ã‹ã‚‰ï¼Œ$x_0:=a$, $x_{n+1}:=x_n^2$
ã¨ã—ãŸã¨ãï¼Œ$a^b=x_0x_2x_5x_7x_9x_{10}$ã¨ã—ã¦æ±‚ã‚ã‚Œã°è‰¯ã„ï¼Ž

æ°—ã«ãªã‚‹ã®ã¯$0^0$ã®æ‰±ã„ã&nbsp;ãŒï¼Œæœ¬æ¥ã¯NaNã¨ã™ã‚‹ã®ãŒæ­£å½“ãªæ‰±ã„ã§ã‚ã‚ã†ï¼Žã—ã‹
ã—ï¼Œã“ã“ã§ã¯æ‰‹æŠœãã—ï¼Œ\textit{fp\_pow}ã§ã‚‚\textit{fp\_pow\_int}ã§ã‚‚1ã¨ã—
ãŸï¼Žå¾Œã‹ã‚‰è€ƒãˆãŸã‚Šè¦‹ã¤ã‘ãŸã‚Šã—ãŸã“ã˜ã¤ã‘ã‚’3ã¤ã°ã‹ã‚Šï¼š
\begin{itemize}
\item $a^b=\exp(b\log a)$ã‚’ç„¡ç†ã‚„ã‚Š$a=b=0$ã®
ã¨ãã«ã‚‚é©ç”¨ã—ã¦ï¼Œ``$0^0=\exp(0\log 0)=\exp(0\cdot -\infty)=\exp 0=1$''ï¼Ž
\item $m^n=\#\{f\colon n\longrightarrow m\}$ã§ã‚ã‚‹\footnote{é›†åˆè«–çš„å®šç¾©ã«å¾“ã„ï¼Œ
$m=\{0,1,\ldots,m-1\}$ã¨ã—ã¦è€ƒãˆã¦ã„ã‚‹ï¼Ž}ã‹ã‚‰ï¼Œ
$0^0=\#\{f\colon0\longrightarrow 0\}=\#\{f\colon
\emptyset\longrightarrow\emptyset\}=1$ã¨ãªã‚‹ï¼Ž
\item äºŒé&nbsp;…å®šç†$(1+m)^n=\sum_{i=0}^n {n\choose i}m^i$ã‚’$m=n=0$ã®ã¨ãæˆç«‹
      ã•ã›ã‚‹ãŸã‚ã«å¿…è¦ï¼Ž
\end{itemize}

\subsection{é«˜é€ŸåŒ–}
ä¸€å¿œä»¥ä¸Šã«æŒ™ã’ãŸé–¢æ•°ã®å®Ÿè£…ã¯è¡Œã£ãŸãŒï¼Œã“ã‚Œã‚‰ã®é–¢æ•°ã¯æ¼”ç®—ã®é€”ä¸­çµŒéŽãŒæ±‚ã¾
ã‚‹åº¦ã«å‹•çš„ç¢ºä¿/è§£æ”¾ã‚’è¡Œã£ã¦ãŠã‚Šï¼Œarcsinã‚’æ±‚ã‚ã‚‹ã&nbsp;ã‘ã§800å›žä»¥ä¸Šã®å‹•çš„ç¢ºä¿
ã‚’è¡Œã£ã¦ã„ãŸï¼Žã“ã‚Œã¯é€Ÿåº¦çš„ã«éžå¸¸ã«ä¸åˆ©ã§ã‚ã‚‹ã®ã§ï¼Œã§ãã‚‹é™ã‚Šå‹•çš„ç¢ºä¿ã‚’è¡Œ
ã‚ãšã«ã™ã‚€ã‚ˆã†ã«æ›¸ãç›´ã™å¿…è¦ãŒã‚ã£ãŸï¼Ž

æ–¹é‡ã¨ã—ã¦ã¯æ¬¡ã®é€šã‚Šã§ã‚ã‚‹ï¼šå„æ¼”ç®—ã§ã¯ï¼Œå½“ç„¶å¼•æ•°ã¨çµæžœã‚’æ&nbsp;¼ç´ã™ã‚‹ãŸã‚ã®é&nbsp;˜
åŸŸã¨ï¼Œä¸€æ™‚é&nbsp;˜åŸŸãŒå¿…è¦ã«ãªã‚‹ãŒï¼Œå¼•æ•°ã®æœ‰åŠ¹æ¡æ•°ãŒï¼ˆã¤ã¾ã‚Šï¼Œå¼•æ•°ã‚’è¡¨ç¾ã™ã‚‹ã®
ã«å¿…è¦ãªãƒ¡ãƒ¢ãƒªé&nbsp;˜åŸŸã®é‡ãŒï¼‰ã‚ã‹ã£ã¦ã„ã‚Œã°ï¼Œä¸€æ™‚é&nbsp;˜åŸŸã®å¤§ãã•ã¯ãã“ã‹ã‚‰è¨ˆç®—
ã™ã‚‹ã“ã¨ãŒã§ãã‚‹ï¼Žå…ƒã€…ã®å‘¼ã³å‡ºã—å…ƒã¯\textit{do\_float\_operation}ã¨ã„ã†1
ã¤ã®procedureã§ã‚ã‚‹\footnote{ã“ã“ã§\TeX ã®ã‚³ãƒžãƒ³ãƒ‰ã§æ¸¡ã•ã‚ŒãŸæ¼”ç®—æŒ‡ä»¤ãŒæœ€
çµ‚çš„ã«å®Ÿè¡Œã•ã‚Œï¼Œçµæžœã‚’è¡¨ç¾ã™ã‚‹glueãŒå¾—ã‚‰ã‚Œã‚‹ï¼Ž}ï¼Žã‚ˆã£ã¦ï¼Œå¿…è¦ãªä¸€æ™‚é&nbsp;˜åŸŸã®ä¸Šé™ãŒ
ã‚ã‹ã‚‹ã®ã§ï¼Œæ¼”ç®—ã‚’å®Ÿéš›ã«å‘¼ã³å‡ºã™å‰ã«é©å½“ãªæ‰€ã§ç¢ºä¿ã—ã¦ãŠã‘ã°è‰¯ã„ï¼Ž

æ¼”ç®—ã®ç¨®é¡žã«ã‚ˆã£ã¦ä¸€æ™‚é&nbsp;˜åŸŸã®é‡ã¯æ¬¡ã®æ§˜ã«ãªã£ãŸï¼š
\jdAline[c](1){\small\tabrowsep=0.5zw%\setbox0=\hbox{fp}\advance\tabrowsep-\dp0
\btabular{c/lrr/r}\vline
\emph{æ¼”ç®—}&amp;\multicolumn{1}{c}{\emph{procedureå}}&amp;%
\emph{ã€€å¼•æ•°ã€€}&amp;\emph{ã€€è¿”ã‚Šå€¤ã€€}&amp;%
\multicolumn{1}{c}{\emph{ä¸€æ™‚é&nbsp;˜åŸŸ}}\\\hline
$+$, $-$&amp;\textit{fp\_add\_or\_sub}&amp;$n$, $n$&amp;$n$&amp;$n+3$\\
$\cdot$&amp;\textit{fp\_mul}&amp;$m$, $n$&amp;$m$&amp;$m+n+3$\\
$/$&amp;\textit{fp\_div}&amp;$n$, $n$&amp;$n$&amp;$5n+15$\\
$/$ (short)&amp;\textit{fp\_short\_div}&amp;$n$&amp;$n$&amp;$2n+10$\\
$a^2$&amp;\textit{fp\_square}&amp;$n$&amp;$n$&amp;$2n+3$\\
$\lfloor\cdot\rfloor$, $\lceil\cdot\rceil$%
    &amp;\textit{fp\_ceil\_floor}&amp;$n$&amp;$n$&amp;$n+3$\\\hline
\smash{$\sqrt{\hskip0.5zw}$}&amp;\textit{fp\_sqrt}&amp;$n$&amp;$n$&amp;$4n+32$\\
$\exp$&amp;\textit{fp\_exponent}&amp;$n$&amp;$n$&amp;$4n+32$\\
$\sin$, $\cosh$ etc.&amp;\textit{fp\_tri\_hyp}&amp;$n$&amp;$n+5$&amp;$5n+40$\\
$\log$ï¼ˆå†…éƒ¨ï¼‰&amp;\textit{fp\_log\_inner}&amp;$n$&amp;$n$&amp;$4n+12$\\
$\log$&amp;\textit{fp\_log}&amp;$n$&amp;$n$&amp;$6n+48$\\
$\arcsin$ etc.&amp;\textit{fp\_arc\_tri}&amp;$n$&amp;$n+5$&amp;$8n+120$\\
arcsinh etc.&amp;\textit{fp\_arc\_hyp}&amp;$n$&amp;$n+5$&amp;$8n+120$\\
$a^b$ if $b\in\mathbb Z$&amp;\textit{fp\_pow\_int}&amp;$n$&amp;$n$&amp;$3n+24$\\\vline
\etabular}
ä¸€æ™‚é&nbsp;˜åŸŸã®æ¬„ã®å˜ä½ã¯
4\,byteã§ã‚ã‚Šï¼Œå¼•æ•°ã¨è¿”ã‚Šå€¤ã¯ãã‚Œãžã‚Œã‚’è¡¨ã™æµ®å‹•å°æ•°ç‚¹æ•°ã®ã€Œé•·ã•ã€ã‚’è¡¨ã—ã¦ã„
ã‚‹\footnote{å‹•ä½œåˆ‡ã‚Šæ›¿ãˆã®ãƒ–ãƒ¼ãƒ«å€¤ã‚„æ•´æ•°ã®å¼•æ•°ã¯ã™ã¹ã¦çœç•¥ã—ã¦ã„ã‚‹ï¼Ž}ï¼Ž
ä½†ã—ï¼Œä¸‹åŠåˆ†ã®æ¼”ç®—ã«ã¤ã„ã¦ã¯ï¼Œä¸ŠåŠåˆ†ã®å››å‰‡æ¼”ç®—ç­‰ã®ä¸€æ™‚é&nbsp;˜åŸŸã¯é™¤ã„ã¦è¨ˆç®—ã—
ã¦ã„ã‚‹ï¼Ž

ã“ã“ã§ï¼Œåˆç­‰é–¢æ•°ã®æ¼”ç®—ã®ãŸã‚ã«ï¼Œ$\pi$, $\log 10$, $\log 64$ã‚’å®šæ•°ã¨ã—ã¦ã‚‚ã£
ã¦ãŠãã“ã¨ã¯å‰ç¯€ã«æ›¸ã„ãŸï¼Žã“ã®å®šæ•°ã®åˆæœŸåŒ–ã¨ä¸€æ™‚é&nbsp;˜åŸŸã®ç¢ºä¿ã¯åŒæ™‚ã«è¡Œã£ã¦
ã‚‚è‰¯ã„ã&nbsp;ã‚ã†ï¼Œã—ã‹ã—ï¼Œä¸€æ™‚é&nbsp;˜åŸŸã¨å®šæ•°ãŸã¡ã&nbsp;ã‘ã§ãƒ¡ãƒ¢ãƒªã®$80+184+3\cdot
23=333$è¦ç´&nbsp;ãŒä½¿ã‚ã‚Œã‚‹ã“ã¨ã«ãªã‚Šï¼Œå¸¸æ™‚ç¢ºä¿ã—ã¦ãŠãã®ã¯æ°—ãŒå¼•ã‘ã‚‹
\footnote{ç¾åœ¨ã®ã‚ˆã†ã«è´…æ²¢ã«ãƒ¡ãƒ¢ãƒªãŒä½¿ãˆã‚‹ç’°å¢ƒã§ã¯ã”ãåƒ…ã‹ã®é‡ã§ã‚ã‚‹ï¼Žãª
ãŠï¼Œå†…éƒ¨æ¼”ç®—ã¯æœ€å¤§$3(8+5)=39$æ¡ã§è¡Œã‚ã‚Œã‚‹ã®ã§ï¼Œå››å‰‡æ¼”ç®—ã«å¿…è¦ãªä¸€æ™‚é&nbsp;˜åŸŸ
ã¯80è¦ç´&nbsp;ã‚ã‚Œã°å……åˆ†ã¨ãªã‚‹ã®ã&nbsp;ãŒï¼Œ80113.22ã‚ˆã‚Šå‰ã®ç‰ˆã§ã¯ï¼Œé•·ã•18ã§å››å‰‡æ¼”ç®—
ã•ã‚Œã¦ã—ã¾ã†ãƒã‚°ãŒã‚ã£ãŸï¼Ž}ï¼Žãã“ã§ï¼Œ
ã“ã®ã€ŒåˆæœŸåŒ–ã€ã‚’è¡Œã†\verb+\fpinit+ã‚³ãƒžãƒ³ãƒ‰ã¨ï¼Œé€†ã«ä¸€æ™‚é&nbsp;˜åŸŸã‚„å®šæ•°ãŸã¡ã‚’è§£
æ”¾ã™ã‚‹\verb+\fpdest+ã‚³ãƒžãƒ³ãƒ‰ã‚’ä½œã‚Šï¼Œ\emph{æµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã‚’ä½¿ç”¨ã™ã‚‹å&nbsp;´é¢ã®
å‰å¾Œã«ã“ã‚Œã‚‰ã®ã‚³ãƒžãƒ³ãƒ‰ã‚’å®Ÿè¡Œã•ã›ã‚‹}ã‚ˆã†ã«ã—ãŸï¼ŽãªãŠï¼Œå®Ÿè£…ã®ç°¡ç•¥åŒ–ã®ãŸã‚ï¼Œ
äºŒé‡ç¢ºä¿ã‚„äºŒé‡è§£æ”¾ã®ãƒã‚§ãƒƒã‚¯ã¯å…¨ãè¡Œã£ã¦ãŠã‚‰ãšï¼Œä¸€æ™‚é&nbsp;˜åŸŸãŒç¢ºä¿ã•ã‚Œã¦ãªã„
çŠ¶æ…‹ã§æ¼”ç®—ã‚’è¡ŒãŠã†ã¨ã—ãŸã¨ãã®ã‚¨ãƒ©ãƒ¼å‡¦ç†ã‚‚å…¨ãè¡Œã£ã¦ã„ãªã„ï¼Žç¢ºä¿ã•ã‚Œã¦ãª
ã„çŠ¶æ…‹ã§æ¼”ç®—ã‚’è¡Œãˆã°ï¼Œæœ€æ‚ªã®å&nbsp;´åˆã¯ã‚»ã‚°ãƒ¡ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³é•åã§è½ã¡ã‚‹ã“ã¨ã«ãª
ã‚‹ã®ã§æ°—ã‚’ã¤ã‘ã‚‹ã“ã¨ï¼Ž

\section{å½¢å¼åŒ–}
æµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã‚’å®Ÿè£…ã—ãŸã¨ã“ã‚ã§ï¼Œèª¬æ˜Žæ–‡ã‚’ã¤ã‘ãŸã‚Šinstall script
ã‚’ã¤ã‘ãŸã‚Šã™ã‚‹æ®µéšŽã¸ã¨å…¥ã‚‹ã“ã¨ã«ã—ãŸï¼Žã“ã“ã‚‰è¾ºã‚’è¡Œã†ç›´å‰ã«ãªã£ã¦ï¼Œè§’è—¤
ã•ã‚“ã®\peTeX ãŒç™»å&nbsp;´ã—ãŸ\verb+^^;+ï¼Ž

\eteiri
ä¸€ç•ªè‹¦åŠ´ã—ãŸã®ã¯ï¼Œã€Œ\epTeX ã®ãŸã‚ã«ã©ã®ãƒ•ã‚¡ã‚¤ãƒ«ã‚’ä¿®æ­£ã—ãŸã®ã‹åˆ†ã‹ã‚‰ãªã„ã€
ã¨ã„ã†ã“ã¨ã§ã‚ã£ãŸï¼Ž{\tt ptexextra.c}ã®å¤‰æ›´ã¯ï¼Œã‚³ãƒžãƒ³ãƒ‰ãƒ©ã‚¤ãƒ³ã‚ªãƒ—ã‚·ãƒ§ãƒ³
{\tt -etex}ã‚’ã¤ã‘ã‚‹ãŸã‚ã«ã‚„ã£ãŸã“ã¨ã‚’è¦šãˆã¦ã„ãŸãŒï¼Œçµæ§‹ãã‚Œä»¥å¤–ã«ã‚‚å¤‰æ›´
ã—ãŸãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã£ãŸã‚‚ã®ã&nbsp;ã£ãŸï¼ŽãªãŠï¼Œåƒ•ã¯Makeã®ä½¿ã„æ–¹ãŒåˆ†ã‹ã‚‰ãªã„ã®ã§ï¼Œ
ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã¨ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã¯åŸºæœ¬çš„ã«ã¯ï¼ˆè‡ªåˆ†ã®ç’°å¢ƒç”¨ã®ï¼‰bash scriptã¨ã—ã¦
æº–å‚™ã—ã¦ï¼Œä½•ã‚’ã‚„ã£ã¦ã„ã‚‹ã‹ã¯åˆ¥é€”ãƒ†ã‚­ã‚¹ãƒˆãƒ•ã‚¡ã‚¤ãƒ«ã«æ›¸ã„ã¦ãŠã„ãŸï¼Ž

\pTeX ã‹ã‚‰\epTeX ã¸ã®ä¿®æ­£éƒ¨åˆ†ã‚’åˆ†é¡žã—ã¦ã¿ã‚‹ã¨ï¼Œãã®æ€§æ&nbsp;¼ã®é•ã„ã‹ã‚‰ã„ãã¤ã‚‚
ã®ãƒ•ã‚¡ã‚¤ãƒ«ã«åˆ†ã‘ãŸæ–¹ãŒæ°—åˆ†ãŒã„ã„ã¨æ€ã£ãŸã®ã§ï¼Œãã®ã‚ˆã†ã«ã—ãŸï¼Žå®Ÿè³ªçš„ã«ä½•
ã‚‚ã—ã¦ãªã„{\tt ptex-orig.diff}ã‚’å‰Šé™¤ã—ãŸã‚Šï¼Œ{\tt ptex-hack-1.diff}ï¼ˆæ¬¡ç«&nbsp;
å‚ç…§ï¼‰ã‚’å…¥ã‚ŒãŸã‚Šå–ã£ãŸã‚Šã¨ã‹ã§æ•´ç†ã—ãŸçµæžœï¼Œæœ¬ãƒ—ãƒ­ã‚¸ã‚§ã‚¯ãƒˆã®æœ€çµ‚çµæžœã¨ã—
ã¦ã¯ä»¥ä¸‹ã®ã‚ˆã†ã«ãªã£ãŸï¼š
\footnote{ä»¥ä¸‹ã¯{\tt README.txt}ã‹ã‚‰ã®å¼•ç”¨ã§ã‚ã‚‹ï¼Ž}ï¼Ž
\eteiri
\begin{adjustvboxheight}
\narrowbaselines\small
\begin{verbatim}
  â–&nbsp;ãƒ•ã‚¡ã‚¤ãƒ«æ§‹æˆ
  ----------------------------------------------------------------------
    README.txt         ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ï¼Ž
    Changelog          æ›´æ–°å±¥æ­´
    HOWTOINST.txt      ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«æ–¹æ³•ã«ã¤ã„ã¦
    doc/               æµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã«ã¤ã„ã¦ã®ç°¡æ˜“èª¬æ˜Žæ›¸
    ks2/               ã€Œè¨ˆç®—æ•°å­¦IIã€ã§ã®è©³ç´°ãªä½œæ¥­è¨˜éŒ²
    build              buildã™ã‚‹ãŸã‚ã®ï¼ˆè‡ªåˆ†ç”¨ã®ï¼‰bash script
    install            installã™ã‚‹ãŸã‚ã®ï¼ˆè‡ªåˆ†ç”¨ã®ï¼‰bash script
    trip               TRIP, e-TRIP testã‚’å®Ÿè¡Œã•ã›ã‚‹bash script
    eptex.src          etex.srcã‚’e-pTeXç”¨ã«æ”¹å¤‰ã—ãŸã‚‚ã®ï¼Žã»ã¨ã‚“ã©åŒã˜
    eptexdefs.lib      etexdefs.libã‚’e-pTeXç”¨ã«æ”¹å¤‰ã—ãŸã‚‚ã®ï¼Žã»ã¨ã‚“ã©åŒã˜
    ep1.diff           \
    pconvert.diff      |- e-TeXæ©Ÿèƒ½ã®ãƒžãƒ¼ã‚¸ã«ä½¿ç”¨ã™ã‚‹patchç¾¤
    etex-sysdep.ch     |
    etex.diff          /
    fp.ch              æµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã®å®Ÿè£…éƒ¨
    ptex756.diff       pTeXã‚’Web2C-7.5.6ã«å¯¾å¿œã•ã›ã‚‹patch
    uptex.diff         \_ upTeXã¨ãƒžãƒ¼ã‚¸ã—ã‚ˆã†ã¨ã™ã‚‹ã¨ãã«ä½¿ç”¨ã™ã‚‹patchç¾¤
    up1.diff           /
\end{verbatim}
\end{adjustvboxheight}

\newpage
\section{ç´°ã‹ã„æ©Ÿèƒ½è¿½åŠ&nbsp;}
\subsection{\TeXXeT ã®å®Ÿè£…}
è§’è—¤ã•ã‚“ã«ã‚ˆã‚‹\peTeX ã«è§¦ç™ºã•ã‚Œã¦\footnote{å¯¾æŠ—ã—ã¦ï¼Œ
ã¨è¨€ã£ãŸæ–¹ãŒå®ŸçŠ¶ã«ã‚ã£ã¦ã„ã‚‹ãŒï¼Ž}ï¼Œ\epTeX ã§ã‚‚\TeXXeT æ©Ÿèƒ½ã®å®Ÿè£…ã‚’è©¦ã¿ã‚‹
ã“ã¨ã«ã—ãŸï¼Žæµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã®éƒ¨åˆ†ã¯\eTeX æ‹¡å¼µã¨ã¯å®Œå…¨ã«åˆ‡ã‚Šé›¢ã›ã‚‹ã®ã§ï¼Œ
{\tt fp.diff}ã‚’çµ„ã¿è¾¼ã¾ãªã„çŠ¶æ…‹ã§ã‚‚ä½œæ¥­ã‚’è¡Œãˆã‚‹ï¼Ž

ä½œæ¥­æ–¹æ³•ã¯ã€Œ\eTeX ã®ãƒžãƒ¼ã‚¸ã€ã§è¡Œã£ãŸã‚‚ã®ã¨ã»ã¨ã‚“ã©åŒã˜ã§ã‚ã‚‹ï¼Žã‚ªãƒªã‚¸ãƒŠãƒ«
ã®{\tt etex.ch}ã¨å‰ã«ä½œã£ãŸå¯¾\pTeX ç”¨ã®{\tt etex.ch}ã‚’è¦‹æ¯”ã¹ï¼Œ\TeXXeT æ©Ÿ
èƒ½ã§å¾Œè€…ã«æŠœã‘ã¦ã„ã‚‹ã‚‚ã®ãŒã‚ã‚Œã°åŠ&nbsp;ãˆãŸã‚Šã—ãŸï¼Žã“ã‚Œã«ã‚ˆã‚Šï¼Œæ–°ãŸãª{\tt
etex.diff}ã¯\TeX ã‹ã‚‰\pTeX ã¸ã®å¤‰æ›´ã«ä¼´ã†éƒ¨åˆ†ã&nbsp;ã‘ã¨ãªã‚Šï¼Œåˆ†é‡ãŒæ¸›ã£ãŸï¼Ž

\eteiri \verb+\beginR+ã¨\verb+\endR+ã§ã¯ã•ã¾ã‚ŒãŸåŒºé–“ã¯å³ã‹ã‚‰å·¦ã«æ–‡å­—ãŒçµ„
ã¾ã‚Œã‚‹åŒºé–“ã§ã‚ã‚‹ãŒï¼Œãã®ã¾ã¾{\tt etex.ch}ã®æ–¹æ³•ã‚’ä½¿ã†ã¨æ—¥æœ¬èªžãŒé€šã‚‰ãšã«ï¼Œ
å¼·åˆ¶çµ‚äº†ã—ãŸã‚ŠdviãŒèª­ã‚ãªããªã£ãŸã‚Šã™ã‚‹ï¼Žã“ã‚Œã®åŽŸå›&nbsp;ã‚’æ¬¡ã®ã‚ˆã†ã«è€ƒãˆãŸï¼š

\begin{indented}{2zw}
right-to-leftã‚’å®Ÿç¾ã•ã›ã‚‹éƒ¨åˆ†ã«ï¼Œã€Œå…¨ã¦ã®ã€æ§‹æˆè¦ç´&nbsp;ã‚’é€†é&nbsp;†ã«ã™ã‚‹ã¨ã„ã†
\textit{reverse}\ functionãŒã‚ã‚‹ï¼Žä¾‹ãˆã°LtoRã®çŠ¶æ³ã§ã€Œ{\tt
...abcdefABghCDEFij...}ã€ï¼šå°æ–‡å­—ã¯æ¬§æ–‡æ–‡å­—ï¼Œå¤§æ–‡å­—ã¯2ã¤ã§å’Œæ–‡æ–‡å­—ã‚’è¡¨ã™
ã¨ãªã£ã¦ã„ãŸã‚‚ã®ãŒï¼Œã“ã®procedureã«ã‚ˆã‚Š{\tt ...jiFEDChgBAfedcba...}ã¨åè»¢ã•ã‚Œ
ã¦ã—ã¾ã„ï¼Œãã‚Œã«ã‚ˆã£ã¦ã‚¨ãƒ©ãƒ¼ãŒç™ºç”Ÿã™ã‚‹ï¼Žå¾“ã£ã¦ï¼Œå’Œæ–‡æ–‡å­—ã®ã¨ã“ã‚ã¯åè»¢ã›ãš
ã«{\tt ...jiEFCDhgABfedcba...}ã¨ã„ã†çµæžœã‚’å¾—ã‚‹ã‚ˆã†ã«ã™ã‚Œã°ï¼Œã‚¨ãƒ©ãƒ¼ã¯èµ·ã
ãªã„ã®ã§ã¯ãªã„ã‹ï¼Ÿ
\end{indented}

\eteiri
\pTeX ã®ã‚½ãƒ¼ã‚¹ã§\verb+if font_dir[f]&lt;&gt;dir_default then+ã¨ã‹ã„ã†
ãƒ•ãƒ¬ãƒ¼ã‚ºãŒä½•å›žã‹ã‚ã£ãŸã®ã§ï¼Œã“ã‚Œã‚’2\,byteæ–‡å­—ã¨1\,byteæ–‡å­—ã®åˆ¤å®šã¨è€ƒãˆã‚‹ã“ã¨
ã§ä¸Šã®å‡¦ç†ã‚’å®Ÿè£…ã—ãŸã¨ã“ã‚ï¼Œä¸€å¿œã¯ã†ã¾ãã„ãã‚ˆã†ã«ãªã£ãŸï¼Ž
ã—ã‹ã—ï¼Œçµ„ç‰ˆè¦å‰‡ã¯ã©ã†ã‹ï¼Œã¨ã„ã†ã¨å½“ç„¶
ã®ã“ã¨ãªãŒã‚‰ã€Œæ€ªã—ã„ã€ï¼ŽãŸã&nbsp;å˜ã«å…¨éƒ¨å·¦å³ãŒå…¥ã‚Œæ›¿ãˆã‚‰ã‚Œã‚‹ã&nbsp;ã‘ã§ã‚ã‚‹ã‹ã‚‰ã&nbsp;ï¼Ž


\subsection{å‰¯ç”£ç‰©}
\TeXXeT é–¢é€£ã®debugã‚’è¡Œã£ã¦ã„ãŸã¨ãã«ï¼Œå’Œæ¬§æ–‡æ··åœ¨ã®æ–‡ç«&nbsp;ã‚’right-to-leftã«
ã—ãŸã‚‰ä¸Šä¸‹ä½ç½®ãŒãŠã‹ã—ããªã‚‹ã“ã¨ã«æ°—ã¥ã„ãŸï¼Žã€Œå…¨ã¦ã‚’é€†é&nbsp;†ã«ã€ãŒã“ã“ã§ã‚‚æ‚ª
ã•ã‚’ã—ã¦ãŠã‚Šï¼Œ\pTeX ã«ã‚ˆã‚Šå’Œæ¬§æ–‡é–“ã«æŒ¿å…¥ã•ã‚Œã‚‹baselineè£œæ­£ã®æŒ‡
æ¨™\textit{disp\_node}ã¾ã§ã‚‚é€†é&nbsp;†ã«ã•ã‚Œã¦ã—ã¾ã†ã‹ã‚‰ã&nbsp;ã£ãŸï¼Ž

\pTeX ã§ã¯ï¼Œå’Œæ–‡ã¨æ¬§æ–‡ã®å¢ƒç›®ã«\textit{disp\_node}ãŒæŒ¿å…¥ã•ã‚Œï¼Œã“ã®nodeä»¥é™
ã®æ–‡å­—ã®baselineè£œæ­£ãŒãã“ã§ç¤ºã•ã‚Œã‚‹ã‚ˆã†ã«ãªã£ã¦ã„ã‚‹ï¼Žã—ãŸãŒã£ã¦ï¼Œå’Œæ–‡â†’
æ¬§æ–‡ã¨åˆ‡ã‚Šæ›¿ã‚ã‚‹ã¨ãã®nodeã§ã¯\verb+\ybaselineshift+ã¨ã‹ãŒï¼Œé€†ã«åˆ‡ã‚Šæ›¿ã‚
ã‚‹ã¨ãã®nodeã§ã¯0ãŒå¯¾å¿œã—ã¦ã„ã‚‹ï¼Žã‚ˆã£ã¦ï¼Œä¸€æ™‚å¤‰æ•°ã‚’ä½¿ã£ã¦ï¼Œ
\textit{reverse} functionã§åè»¢ã•ã›ã‚‹ã¨ãã«ï¼Œ\textit{disp\_node}ã®å€¤ã‚‚å…¥
ã‚Œæ›¿ãˆã¦ã—ã¾ãˆã°ã„ã„ã®ã§ã¯ãªã„ã‹ï¼Œã¨æŽ¨æ¸¬ã•ã‚Œã‚‹ï¼Žãã‚Œã§å®Ÿéš›å¤§æŠµã®å&nbsp;´åˆã«ã¯
ã†ã¾ãã„ã£ãŸã‚ˆã†ã«æ€ãˆãŸ\footnote{1/30è¿½è¨˜ï¼šå®Ÿéš›ã«ã¯ï¼Œã“ã‚“ãªç°¡å˜ãªå‡¦ç†
ã§ã¯ãƒ€ãƒ¡ã&nbsp;ã£ãŸï¼Žæ®µè½å…¨ä½“ãŒRtoLã®çŠ¶æ…‹ã®ã¨ãï¼Œã©ã†ã‚„ã‚‰ï¼Œå„è¡Œã¯displacement
nodeã§å§‹ã¾ã£ã¦ãŠã‚Šï¼Œãã®å¾Œã«\TeXXeT é–¢é€£ã®nodeã¨ã‹ãŒãã‚‹ã‚ˆã†ã§ï¼Œã“ã†ã„ã†
å&nbsp;´åˆãŒæ›²è€…ã&nbsp;ã£ãŸã‚Šã™ã‚‹ï¼Žglobalå¤‰æ•°\textit{revdisp}ã‚’ä½œã‚Šï¼Œãã®å¤‰æ•°ã«ã€Œç¾
åœ¨ã®displacementã®å€¤ã€ã‚’ä»£å…¥ã™ã‚‹ã‚ˆã†ã«ã—ã¦ãŠãã“ã¨ã§ï¼Œä½•ã¨ã‹å¯¾å‡¦ç™‚æ³•çš„ã«
ç‰‡ä»˜ã‘ã¦ï¼Œ\emph{ã€Œå¤§æŠµã®å&nbsp;´åˆã«ã¯ã†ã¾ãå‹•ãã®ã§ã¯ãªã„ã‹ã€ã¨ã„ã†æ®µéšŽã«ã¯ãªã£ãŸã‘
ã‚Œã©ã‚‚ï¼Œ\pTeX ã®å†…éƒ¨å‹•ä½œã‚’è‰¯ãç†è§£ã—ã¦ã„ã‚‹ã‚ã‘ã§ã¯ãªã„ã®ã§ï¼Œéžå¸¸ã«æ€ªã—
ã„}ï¼Žä½¿ã†ã¨ãã«ã¯æ³¨æ„ã—ã¦ãã&nbsp;ã•ã„ï¼Ž}ï¼Ž

\eteiri
ã“ã†ã—ã¦ãªã‚“ã¨ã‹è§£æ±ºã—ãŸç›´å¾Œã«ï¼Œ
ãŸã¾ãŸã¾\TeX ãƒ•ã‚©ãƒ¼ãƒ©ãƒ&nbsp;%
\footnote{\verb+http://oku.edu.mie-u.ac.jp/tex/+}ã‚’è¦—ã„ãŸã‚‰ï¼Œå¥¥æ‘ã•ã‚“ã«
ã‚ˆã‚‹ã€Œ\pTeX ã¸ã®
ææ¡ˆã‚‚ã©ãã€ã¨ç§°ã—ãŸæ¬¡ã®æŠ•ç¨¿\cite{okupt}ãŒã‚ã£ãŸï¼ˆä»¥ä¸‹å¼•ç”¨ï¼‰ï¼š
\newpage
\begin{adjustvboxheight}
\small\narrowbaselines\begin{indented}{2zw}
\begin{verbatim}
ãã®1: \ybaselineshiftã®ä»•æ§˜å¤‰æ›´

å’Œæ–‡ã¨æ¬§æ–‡ã®ãƒ™ãƒ¼ã‚¹ãƒ©ã‚¤ãƒ³ã‚’èª¿ç¯€ã™ã‚‹ãŸã‚ã®\ybaselineshiftã‚’ä½¿ã£ã¦ã‚‚æ•°å¼éƒ¨
åˆ†ã®ãƒ™ãƒ¼ã‚¹ãƒ©ã‚¤ãƒ³ãŒå¤‰ã‚ã‚‰ãªã„ã€‚æ•°å¼ã‚‚æ¬§æ–‡ãªã¿ã¨è¦‹ã¦ç§»å‹•ã—ãŸã„ã€‚

ä¾‹ï¼š

\ybaselineshift=0.12zw
ç¬¬5ç«&nbsp;ç¬¬$n=5$ç¯€

ãã®2: æ®µè½ã®é&nbsp;­ã§ã®å¼•ç”¨ç¬¦ã®æŒ™å‹•ã®æ”¹å–„

ãƒ‡ãƒ•ã‚©ãƒ«ãƒˆã®pTeXã§ã¯å¼•ç”¨ç¬¦ã§å§‹ã¾ã‚‹æ®µè½ã®é&nbsp;­ãŒ\parindent+0.5zwä¸‹ãŒã‚Šã«ãªã‚‹ã€‚
jsarticleï¼Œjsbookã§ã¯\everyparã‚’ä½¿ã£ãŸãƒãƒƒã‚¯ã§è£œæ­£ã—ã¦ã„ã‚‹ãŒï¼ŒpTeXæœ¬ä½“ã«
æ®µè½é&nbsp;­ã®JFMã‚°ãƒ«ãƒ¼ã‚’ãªãã™ã‚¹ã‚¤ãƒƒãƒã‚’ä»˜ã‘ã‚‰ã‚Œãªã„ã‹ã€‚

ï¼ˆå¾Œç•¥ï¼‰
\end{verbatim}
\end{indented}
\end{adjustvboxheight}

ã“ã®ã€Œãã®1ã€ã¨ã„ã†ã®ã¯ï¼Œåƒ•ã‚‚æ•£ã€…æ‚©ã¾ã•ã‚Œã¦ããŸå•é¡Œã§ã‚ã£ãŸï¼Žå¤ãã¯é«˜æ&nbsp;¡ã®
éƒ¨æ´»ã®éƒ¨èªŒï¼ˆç¸¦æ›¸ãï¼‰ã®çµ„ç‰ˆã§ï¼Œæœ€è¿‘ã§ã¯æ•°å­¦ç§‘ã‚ªãƒªãƒ‘ãƒ³ãƒ•\nobreak\cite{ori}
ã®çµ„ç‰ˆã§ã‚‚é­é‡ã—ï¼Œéžå¸¸ã«è…¹ãŒç«‹ã£ãŸï¼Žã€Œãã®2ã€ã¯ç¾çŠ¶ã®jsclassesã§ã®ãƒãƒƒã‚¯
ã§ååˆ†ã&nbsp;ã¨æ€ã„ï¼Œã¾ãŸã“ã¡ã‚‰ã¯é›£ã—ãã†ã&nbsp;ã£ãŸï¼Ž

ã€Œãã®1ã€ã®ãƒ‘ãƒƒãƒã‚’ä½œã‚‹ã®ã¯ï¼Œ\textit{disp\_node}ãŒæŒ¿å…¥ã•ã‚Œã‚‹ä½ç½®ã‚’èª¿ã¹ï¼Œã
ã“ã§ã„ã‹ã»ã©ã®å€¤ãŒã‚»ãƒƒãƒˆã•ã‚Œã‚‹ã‹ã‚’èª¿ã¹ã‚Œã°ã„ã„ã®ã§ï¼Œã•ã»ã©
å›°é›£ãªä½œæ¥­ã§ã¯ãªã‹ã£ãŸï¼Žäº’æ›æ€§ã®ãŸã‚ã«å¾“æ¥ã®\pTeX ã®å‹•ä½œã‚‚æ®‹ã—ï¼Œã‚¹ã‚¤ãƒƒãƒ
ã§åˆ‡ã‚Šæ›¿ãˆã‚‹ã‚ˆã†ã«ã—ãŸãŒï¼Œã‚¹ã‚¤ãƒƒãƒã®å®šç¾©ã¯\verb+\TeXXeTstate+ï¼ˆ\TeXXeT
ãŒonãªã‚‰ã°1ï¼Œoffãªã‚‰ã°0ï¼‰ã®ãã‚ŒãŒéžå¸¸ã«å‚è€ƒã«ãªã£ãŸï¼Ž
\eteiri
æœ€åˆã¯\epTeX å†…éƒ¨ã«æœ¬ãƒ‘ãƒƒãƒã‚’å–ã‚Šè¾¼ã‚“ã§ã„ãŸãŒï¼Œï¼ˆå¾Œã«è¿°ã¹ã‚‹ã‚ˆã†ã«ï¼‰è§’è—¤
ã•ã‚“ãŒ\epTeX ã‚’W32\TeX ã«å°Žå…¥ã™ã‚‹ã¨ãã«å¤–ã•ã‚ŒãŸã¨èžã„ãŸã®ã§ï¼Œã“ã¡ã‚‰ã§ã‚‚
å¤–ã—ã¦ãŠãã“ã¨ã«ã—ãŸï¼Ž
\subsection{ã•ã‚‰ãªã‚‹è™«å–ã‚Š}
æœ¬ç¨¿ã§ã¯ï¼Œ\etrip\ testã‚’ã—ãŸã¨ãã®\eTeX ã¨ã®å·®ç•°ã‚’ã‚‚ã£ã¨å°‘ãªãã™ã‚‹ã“ã¨ã‚’
è¡Œã†ï¼Žã¾ãšï¼Œé€šå¸¸ã®\trip\ testã‚’è¡Œã£ãŸã¨ãã«ï¼Œãã®ã¾ã¾ã§ã¯
\verb+http://oku.edu.mie-u.ac.jp/%7Eokumura/texfaq/qa/50546.html+
ã¨åŒæ§˜ã®ç—‡çŠ¶ï¼Œã™ãªã‚ã¡\verb+, direction+ãŒã„ãã¤ã‹ä½™è¨ˆã«æ®‹ã£ã¦ã—ã¾ã†ã“ã¨
ã‹ã‚‰å¯¾å‡¦ã‚’å§‹ã‚ãŸï¼Žã“ã‚Œã®åŽŸå›&nbsp;ã¯\pTeX ã§boxã®ä¸­èº«ã‚’dumpã—ãŸã¨ãã«
\verb+, yoko direction+ã®è¡¨ç¤ºéƒ¨ã§ã‚ã‚‹ï¼Ž
boxãŒ{\tt yoko}ã§ã‚‚{\tt tate}ã§ã‚‚{\tt
DtoU}æ–¹å‘\footnote{{\tt DtoU}æ–¹å‘ã£ã¦ãªã‚“ã&nbsp;ã‚ã†ã­ï¼Ž}ã§ã‚‚ãªã„ã¨ãã¯
\verb+yoko+ãªã©ãŒè¡¨ç¤ºã•ã‚Œãšï¼ŒãŸã&nbsp;\verb+, direction+ã¨è¡¨ç¤ºã•ã‚Œã¦ã—ã¾ã†ã®
ã&nbsp;ã£ãŸï¼Ž
{\tt ,}ãŒå‡ºã¦ãã‚‹å&nbsp;´æ‰€ã¯1ç®‡
æ‰€ã&nbsp;ã£ãŸã®ã§ï¼Œã“ã“ã&nbsp;ã‘directionè¡¨ç¤ºã®ã‚³ãƒ¼ãƒ‰ã‚’åˆ¥ã«ã™ã‚‹ã“ã¨ã§è§£æ±ºï¼Ž

\eteiri
æ¬¡ã«ï¼Œ\verb+\lastnodetype+ã¨\verb+\currentiflevel+ã®èª¿æ•´ã«å…¥ã£ãŸï¼Ž
\eTeX ã§ã‚³ãƒžãƒ³ãƒ‰ãŒã©ã†å‡¦ç†ã•ã‚Œã¦ã„ã‚‹ã‹ã‚’èª¿ã¹ã‚‹ã¨ï¼Œå„nodeã«ã¯ã‚½ãƒ¼ã‚¹ä¸­ã§åž‹
ã‚’è¡¨ã™è‡ªç„¶æ•°ãŒå‰²ã‚ŠæŒ¯ã‚‰ã‚Œã¦ãŠã‚Šï¼Œãã®å€¤ã«1ã‚’è¶³ã™ã¨ã‹ã®è‹¥å¹²ã®è£œæ­£ã‚’ã—ã¦å‡º
åŠ›ã™ã‚‹ã&nbsp;ã‘ã&nbsp;ã£ãŸï¼Žãã†ã™ã‚‹ã¨è©±ã¯é€Ÿãï¼Œ\TeX${}\to{}$\pTeX ã®æ‹¡å¼µã§å†…éƒ¨ãƒ‘
ãƒ©ãƒ¡ãƒ¼ã‚¿ãŒã©ã‚Œã&nbsp;ã‘å¤‰æ›´ã•ã‚Œã¦ã„ã‚‹ã‹ã‚’èª¿ã¹ï¼Œãã‚Œã«åˆã†ã‚ˆã†ã«ä¸¡ã‚³ãƒžãƒ³ãƒ‰ã‚’
hackã™ã‚‹ã&nbsp;ã‘ã§ã‚ã£ãŸï¼Ž

ã“ã‚Œã‚‰ã®ã‚³ãƒžãƒ³ãƒ‰ã®æ­£ã—ã„å‹•ä½œã¯ï¼Œ\eTeX ã®ãƒžãƒ‹ãƒ¥ã‚¢ãƒ«\nobreak%
\cite{etexman}ã«ä¸Žãˆã‚‰ã‚Œã¦ã„ã‚‹ï¼Ž\pTeX ã§è¿½
åŠ&nbsp;ã•ã‚ŒãŸnodeã‚„æ¡ä»¶åˆ¤æ–­æ–‡ã«ã¯ï¼Œæ—¢å­˜ã®ç•ªå·ã‚ˆã‚Šå¤§ãã„å€¤ã‚’ä¸Žãˆã‚‹ã‚ˆã†ã«ã—ãŸï¼Ž
å…·ä½“çš„ã«ã¯ï¼Œä¸‹ã®è¡¨ã®ã‚ˆã†ã«ãªã£ãŸï¼Žä¸ŠãŒ\verb+\currentiflevel+ï¼Œä¸‹ãŒ
\verb+\lastnodetype+ã®å‹•ä½œã§ï¼Œç•ªå·ãŒå¤ªå­—ãªã®ã¯\pTeX ç‰¹æœ‰ã®ã‚‚ã®ã§ã‚ã‚‹
\footnote{å½“ç„¶ãªãŒã‚‰ï¼Œ\verb+\iffp+ã¯æœ¬ãƒ—ãƒ­ã‚¸ã‚§ã‚¯ãƒˆã®æµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã®å®Ÿè£…
ã«ç‰¹æœ‰ã§ã‚ã‚‹ï¼Ž}ï¼Ž
ãªãŠï¼Œã“ã‚Œã«åˆã‚ã›ã‚‹ã‚ˆã†ã«{\tt etexdefs.lib}ã‚’æ›´æ–°ã—ãŸ{\tt
eptexdefs.lib}ã‚‚ä½œã£ã¦ã‚ã‚‹ï¼š

{\def\cs#1{{\tt\char`\\#1}}\makeatletter
\newenvironment{multilist}[2]%
 {$$\setbox\z@=\hbox\bgroup  % catch some funny things -&gt; \mathord
  \let\a=\empty
  \let\b=\empty
  \count@=\z@
  \toks@={#2}%
  \def\item##1\cr
   {\ifnum \count@=\z@
      \count@=#1%
      \expandafter\def\expandafter\b\expandafter{\b\y{}}%
    \fi
    \advance\count@ by\m@ne
    \expandafter\def\expandafter\a\expandafter{\a\x{##1}}}%
  \ignorespaces}%
 {\loop
  \ifnum \count@&gt;\z@
    \expandafter\def\expandafter\a\expandafter{\a\expandafter\z\b\relax}%
    \advance\count@ by\m@ne
  \repeat
  \def\x##1{\expandafter\y\b\relax{##1}}%
  \def\y\y##1##2\relax##3%
   {\ifx @##1@%
      \def\b{##2\y{##3}}%
    \else
      \def\b{##2\y{##1&amp;##3}}%
    \fi}%
  \def\z\y##1##2\relax{\def\b{##2\y{##1}}}%
  \a
  \def\x
   {\expandafter\egroup\expandafter\halign\expandafter\bgroup
    \expandafter&amp;\the\toks@\cr}%
  \def\y##1{\expandafter\def\expandafter\x\expandafter{\x##1\cr}}%
  \b
  \x\egroup $$}
\begin{adjustvboxheight}\small
\begin{multilist}{4}{\hfil\qquad#:&amp;\quad#\qquad\hfil}
\item 1&amp;\cs{if}\cr
\item 2&amp;\cs{ifcat}\cr
\item 3&amp;\cs{ifnum}\cr
\item 4&amp;\cs{ifdim}\cr
\item 5&amp;\cs{ifodd}\cr
\item 6&amp;\cs{ifvmode}\cr
\item 7&amp;\cs{ifhmode}\cr
\item 8&amp;\cs{ifmmode}\cr
\item 9&amp;\cs{ifinner}\cr
\item 10&amp;\cs{ifvoid}\cr
\item 11&amp;\cs{ifhbox}\cr
\item 12&amp;\cs{ifvbox}\cr
\item 13&amp;\cs{ifx}\cr
\item 14&amp;\cs{ifeof}\cr
\item 15&amp;\cs{iftrue}\cr
\item 16&amp;\cs{iffalse}\cr
\item 17&amp;\cs{ifcase}\cr
\item 18&amp;\cs{ifdefined}\cr
\item 19&amp;\cs{ifcsname}\cr
\item 20&amp;\cs{iffontchar}\cr
\item \bf 21&amp;\cs{iftdir}\cr
\item \bf 22&amp;\cs{ifydir}\cr
\item \bf 23&amp;\cs{ifmdir}\cr
\item \bf 24&amp;\cs{iftbox}\cr
\item \bf 25&amp;\cs{ifybox}\cr
\item \bf 26&amp;\cs{iffp}\cr
\end{multilist}
\end{adjustvboxheight}
\begin{adjustvboxheight}\small
\begin{multilist}{3}{\hfil\qquad#:&amp;\quad#\qquad\hfil}
\item -1&amp;none (empty list)\cr
\item 0&amp;char node\cr
\item 1&amp;hlist node\cr
\item 2&amp;vlist node\cr
\item 3&amp;rule node\cr
\item 4&amp;ins node\cr
\item 5&amp;mark node\cr
\item 6&amp;adjust node\cr
\item 7&amp;ligature node\cr
\item 8&amp;disc node\cr
\item 9&amp;whatsit node\cr
\item 10&amp;math node\cr
\item 11&amp;glue node\cr
\item 12&amp;kern node\cr
\item 13&amp;penalty node\cr
\item 14&amp;unset node\cr
\item 15&amp;math mode nodes\cr
\item \bf 16&amp;direction node\cr
\item \bf 17&amp;displacement node\cr
\end{multilist}
\end{adjustvboxheight}}

\eteiri
ã“ã‚Œã§ã&nbsp;ã„ã¶\trip, \etrip\ testã®å‹•ä½œã¯ã†ã¾ãã„ãã‚ˆã†ã«ãªã£ãŸï¼ŽçŠ¶æ³ã‚’è¿°
ã¹ã‚‹ã¨ï¼Œä»¥ä¸‹ã®ã‚ˆã†ã«ãªã‚‹ï¼Ž
\begin{itemize}
\item \emph{Compatibility modeã§ã®\trip\ testã®ï¼Œ\pTeX ã¨ã®å·®ç•°}\\æœ€å¾Œã®
      æ–¹ã®{\tt 1440 strings of total length 25223}ç­‰ãŒç•°ãªã‚‹ã&nbsp;ã‘ï¼Ž
      ã‚½ãƒ¼ã‚¹ä¸­ã®æ–‡å­—åˆ—ãŒå¤šããªã£ã¦ã„ãŸã‚Šã™ã‚‹ã“ã¨ãªã©ã«ã‚ˆã‚‹ã‚‚ã®ã&nbsp;ã‚ã†ï¼Ž
\item \emph{\trip\ testã®ï¼Œ\eTeX ã¨ã®å·®ç•°ï¼ˆä¸¡æ–¹ã¨ã‚‚Compatibility modeï¼‰}\\
â†‘ã‚’é™¤ã‘ã°ï¼Œ\pTeX ã§ã®\trip\ testã§ã‚‚å‡ºã¦ã„ã‚‹å·®ç•°ãªã®ã§ï¼Œå•é¡Œã¯ãª
      ã„ã¨è€ƒãˆã‚‰ã‚Œã‚‹ï¼Ž
\item \emph{\trip\ testã®ï¼Œ\eTeX ã¨ã®å·®ç•°ï¼ˆä¸¡æ–¹ã¨ã‚‚Extended modeï¼‰}\\
ã€Œä¸¡æ–¹ã¨ã‚‚Compatibility modeã€ã®ã¨ãã®å·®ç•°ã¨åŒã˜ã‚ˆã†ãªé›°å›²æ°—ï¼Ž
\item \emph{\etrip\ testã®ï¼Œ\eTeX ã¨ã®å·®ç•°}
\begin{itemize}
\item \verb+\lastnodetype+ã®ãƒã‚§ãƒƒã‚¯ã§3ç®‡æ‰€å¤±æ•—ã™ã‚‹ï¼Ž\pTeX ã®ä»•æ§˜ã«é–¢ã‚
      ã‚‹ã®ã§ã¯ãªã„ã‹ï¼Ÿ
\item Memory usageãŒå¤šã‹ã£ãŸã‚Šï¼ŒdirectionãŒè¡¨ç¤ºã•ã‚ŒãŸã‚Šã¨ã‹ï¼Œæ˜Žã‚‰ã‹ã«
      \pTeX æ‹¡å¼µã«ã‚ˆã‚‹ã¨è€ƒãˆã‚‰ã‚Œã‚‹ã‚‚ã®.
\end{itemize}
\end{itemize}


\section{ä»–ç’°å¢ƒã§ã®ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«}
ä»Šã¾ã§\TeX\ Live 2007ä¸Šã§é–‹ç™ºã‚’è¡Œã£ã¦ããŸãŒï¼Œ\TeX\ Liveã¯éžå¸¸ã«å·¨å¤§ã§ã‚ã‚Šï¼Œ
ã“ã‚Œã‚’æ°—æ¥½ã«ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ï¼Œã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã¨ã„ã†ã“ã¨ã¯ã‚„ã¯ã‚Šã—è¾›ã„ã‚‚ã®ã§ã‚ã‚‹ï¼Ž
ä¸€æ–¹ï¼Œã“ã‚Œä»¥å¤–ã«ä¸»ã«ä½¿ã‚ã‚Œã¦ã„ã‚‹ï¼ˆã¨ä¿¡ã˜ã‚‹ï¼‰\TeX\ distributionã¨ã—ã¦ã¯ï¼Œ
ä»¥ä¸‹ãŒã‚ã‚‹ï¼Ž
\begin{itemize}
\item {\bf te\TeX\ 3.0}ï¼šThomas Esserã•ã‚“ãŒä½œã£ã¦ã„ãŸUnixç³»OSç”¨ã®ã‚‚ã®ï¼Žé©
      åº¦ãªå¤§ãã•ã§ä¾¿åˆ©ã&nbsp;ã£ãŸã®ã&nbsp;ãŒï¼Œæ®‹å¿µãªãŒã‚‰3.0ã‚’ã‚‚ã£ã¦é–‹ç™ºä¸­æ­¢ã«ï¼Ž
ã‚½ãƒ¼ã‚¹ã¯{\tt CTAN/systems/unix/teTeX/3.0/distrib/}ã‹ã‚‰ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã§ãã‚‹ï¼Ž
      ãŠãã‚‰ãå¤§åŠã®linux distributionãŒã“ã‚Œã‚’ãƒ™ãƒ¼ã‚¹ã«ã—ãŸ\TeX ç’°å¢ƒã‚’å°Ž
      å…¥ã—ã¦ã„ã‚‹ï¼Ž
\item {\bf ptetex3}ï¼šåœŸæ‘ã•ã‚“ã«ã‚ˆã‚‹te\TeX 3.0$\,+{}$æ—¥æœ¬èªžç’°å¢ƒã‚’ç°¡å˜ã«
      æ•´ãˆã‚‹ãŸã‚ã®patché›†ï¼Žå…¬å¼ãƒšãƒ¼ã‚¸ã¯\\
      \verb+http://www.nn.iij4u.or.jp/~tutimura/tex/ptetex.html+ï¼Ž
\item {\bf up\TeX}ï¼šttkã•ã‚“ã«ã‚ˆã‚‹ï¼Œp\TeX ã®å†…éƒ¨ã‚³ãƒ¼ãƒ‰ã‚’Unicodeã«ã™ã‚‹å®Ÿé¨“ï¼Ž
      ptetex3å†…ã®Unicodeã‚µãƒãƒ¼ãƒˆæ´»å‹• ({\tt ptexenc}) ã¨å°‘ãªã‹ã‚‰ãšé–¢ä¿‚ï¼Ž
      ä¸‹ã®W32\TeX ã§ã‚‚ä½¿ãˆã‚‹ãŒï¼Œæœ¬æ¥ã¯ptetex3ã¸ã®ãƒ‘ãƒƒãƒï¼Ž
      å…¬å¼ãƒšãƒ¼ã‚¸ã¯
      \verb+http://homepage3.nifty.com/ttk/comp/tex/uptex.html+ï¼Ž
\item {\bf W32\TeX}ï¼šè§’è—¤ã•ã‚“ã®ä½œã‚‰ã‚Œã¦ã„ã‚‹Windowsç”¨\TeX\
  distributionã®é€šç§°ï¼ŽãŠãã‚‰ãWindowsä¸Šã§\TeX ã‚’åˆ©ç”¨ã—ã¦ã„ã‚‹äººãªã‚‰ã»ã¨ã‚“
  ã©ãŒå…¥ã‚Œã¦ã‚‹ã¯ãš\footnote{cygwinã§ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã—ãŸã‚‚ã®ã‚’ä½¿ã£ã¦ï¼ŒW32\TeX
      ã‚’ä½¿ã£ã¦ãªã„äººã¨ã„ã†äººãŒè‹¥å¹²ã„ã‚‹æ¨¡æ§˜ï¼Ž}ï¼Ž\\
å…¬å¼ãƒšãƒ¼ã‚¸ã¯
\verb+http://www.fsci.fuk.kindai.ac.jp/kakuto/win32-ptex/web2c75.html+ï¼Ž

ã“ã“ã‹ã‚‰ä¸€ç•ªè¿‘ã„ãƒŸãƒ©ãƒ¼ã¯æ•°ç†ã®å¤§å³¶ç&nbsp;”ï¼Žã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã«ã¯TA
  ã®é˜¿éƒ¨ã•ã‚“ã®ã€Œ\TeX ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ©ã€ãŒéžå¸¸ã«ä¾¿åˆ©ã§ã‚ã‚‹ï¼Ž
\end{itemize}
\eteiri

ã¨ã‚Šã‚ãˆãšä¸Š2ã¤ã¯ãªã‚“ã¨ã‹ã‚µãƒãƒ¼ãƒˆã™ã‚‹ã‚ˆã†ã«ã™ã‚‹ã¹ãã&nbsp;ã‚ã†ï¼ŽW32\TeX ã«ã¤
ã„ã¦ã¯ï¼ŒTAã®é˜¿éƒ¨ã•ã‚“ã‹ã‚‰ã®è¦æœ›ã§ã‚ã‚‹ï¼Ž

\subsection{W32\TeX}
W32\TeX ã®ã‚½ãƒ¼ã‚¹ã¯å‰ç¯€ã®å¤§å³¶ç&nbsp;”ã®FTPãªã©ã‹ã‚‰ãƒ€ã‚¦ãƒ³ãƒ­ãƒ¼ãƒ‰ã™ã‚‹ã“ã¨ãŒã§ãã‚‹ï¼Ž
ã€Œã©ã†ã‚„ã‚‰Visual C++ãŒã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã«å¿…è¦ã‚‰ã—ã„ã€ã¨ã„ã†ã“ã¨ã¯ã‚ã‹ã£ã¦ã„ãŸã®
ã§ï¼ŒMicrosoftã®ã‚µã‚¤ãƒˆã‹ã‚‰Microsoft Visual C++ 2005 Express Editionã¨
Platform SDKã‚’ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã—ï¼Œã¾ãŸæœ€æ–°ã®Cygwinã‚‚ã‚¤ãƒ³ã‚¹ãƒˆãƒ¼ãƒ«ã‚’ã—ã¦ï¼Œç’°å¢ƒ
ã‚’æ•´ãˆãŸ\footnote{Platform SDKãŒå¿…è¦ã§ã‚ã‚‹ã“ã¨ã‚’çŸ¥ã‚‹ã¾ã§ã«æ•°æ™‚é–“ã‚’ç„¡é§„ã«
ã—ãŸï¼Ž}ï¼Ž

ã—ã‹ã—ï¼Œã“ã“ã‹ã‚‰å…ˆãŒå¤§å¤‰ã&nbsp;ã£ãŸï¼Žp\TeX ã®ã‚½ãƒ¼ã‚¹ã¯{\tt
756/texk/web2c/ptexdir/}ã«ã‚ã‚‹ï¼Žã©ã†ã‚„ã‚‰åœŸæ‘ã•ã‚“ã«ã‚ˆã‚‹ptexencæ‹¡å¼µã‚’å–ã‚Š
å…¥ã‚Œã¦ã„ã‚‹æ§˜å­ã§ã‚ã£ãŸï¼Žã—ã‹ã—ï¼Œãªãœã‹ãã®ç›´ä¸Šã®ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªã®makeãŒã†ã¾
ãã„ã‹ãšï¼Œ{\tt tangle}ã¨ã‹{\tt web2c}ã¨ã‹ã¯å…ƒã€…ã®ãƒã‚¤ãƒŠãƒªã®ã‚‚ã®ã‚’ä½¿ã‚ãª
ã‘ã‚Œã°ãªã‚‰ãªã‹ã£ãŸï¼Žã“ã‚Œã‚‰ã§ã„ã‚ã„ã‚æ‚ªæˆ¦è‹¦é—˜ã—ãŸã‚ã’ãï¼Œçµå±€{\tt
ptexdir}ã®ã‚½ãƒ¼ã‚¹ã‚’ãƒ™ãƒ¼ã‚¹ã«ã™ã‚‹ã“ã¨ã¯è«¦ã‚ã‚‹ã“ã¨ã«ã—ãŸï¼Ž

ãã®å¾Œï¼Œã„ã‚ã„ã‚ã¨æ…£ã‚Œãªã„Windowsç’°å¢ƒã®ã“ã¨ã‚’èª¿ã¹ï¼Œãªã‚“ã¨ã‹ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã§
ãã‚‹ã¨ã“ã‚ã¾ã§ã“ãŽã¤ã‘ãŸï¼Žã—ã‹ã—ï¼Œé˜¿éƒ¨ã•ã‚“ã‹ã‚‰ä½œã£ãŸbinaryãŒå‹•ä½œä¸è‰¯ã¨ã„
ã†å&nbsp;±å‘Šã‚’å—ã‘ï¼Œçµæ§‹æ‚©ã‚€ã“ã¨ã«ãªã£ãŸï¼ŽãŠãã‚‰ãDLLã¾ã‚ã‚Šã®äº‹æƒ…ã&nbsp;ã£ãŸã¨æ€ã†
ã®ã&nbsp;ãŒï¼Œã€ŒW32\TeX ã«å–ã‚Šè¾¼ã‚€ã€ã¨ã„ã†è§’è—¤ã•ã‚“ã‹ã‚‰ã®å&nbsp;±å‘ŠãŒæ¥ãŸã®ã§ï¼Œã“ã¡ã‚‰
ã§ã®Windowsãƒã‚¤ãƒŠãƒªã®é–‹ç™ºã¯ã‚„ã‚‰ãªãã¦ã‚‚è‰¯ã„ã‚ˆã†ãªçŠ¶æ³ã«ãªã£ã¦ã—ã¾ã£ãŸï¼Ž

\subsection{te\TeX\ 3, ptetex3 (ptexenc), up\TeX}
ã“ã‚Œã‚‰ã¯ã¿ãªWeb2C-7.5.4ç’°å¢ƒãŒã‚ªãƒªã‚¸ãƒŠãƒ«ã§ã‚ã‚‹ï¼Žå¾“ã£ã¦ï¼Œ
{\tt ptex756.diff}ã‚’ä½¿ã‚ãªã„ã“ã¨ãŒå¿…è¦ã«ãªã‚‹ãŒï¼Œå‰è€…2ã¤ã«ã¤ã„ã¦ã¯ï¼Œãã‚Œ
ãã‚‰ã„ã&nbsp;ã‘ã§ã‚ã¾ã‚Šæ³¨æ„ã¯å¿…è¦ãªã‹ã£ãŸï¼Žptetex3ç‹¬è‡ªæ‹¡å¼µã®{\tt ptexenc}ã«ã¤ã„ã¦
ã‚‚ï¼Œã‚³ãƒ³ãƒ‘ã‚¤ãƒ«æ™‚ã«ãƒ©ã‚¤ãƒ–ãƒ©ãƒªã‚’è¿½åŠ&nbsp;ã™ã‚‹ãã‚‰ã„ã§ã‚ã£ãŸï¼Žup\TeX ã«ã¤
ã„ã¦ã‚‚ï¼Œ\WEB ã‚½ãƒ¼ã‚¹ã«ã¤ã„ã¦ã¯åŒã˜ã§ã‚ã£ãŸãŒï¼Œã§ãã‚‹ãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;åã‚’{\tt
euptex}ãªã©ã¨ã—ã¦ã¿ãŸãŸã‚ï¼ŒC headerãªã©ã®ä¿®æ­£ãŒå°‘ã—é¢å€’ã«ãªã£ãŸï¼Ž

å¾Œè€…ã®{\tt ptexenc}, up\TeX ã§å¿ƒé…ã§ã‚ã‚‹ã“ã¨ã¯ï¼Œæ—¥æœ¬èªžãŒ\TeXXeT ã§é€šã‚‹ã‹ï¼Œã¨ã„
ã†ã“ã¨ã§ã‚ã£ãŸï¼Žåƒ•ãŒå…ˆã«è¡Œã£ãŸ\TeXXeT ã¸ã®å’Œæ–‡å¯¾å¿œã§ã¯ï¼Œæ¼¢å­—ãªã©ã®
2\,byteæ–‡å­—ãŒï¼Œå†…éƒ¨ã§ã¯2ã¤ã®nodeã§è¡¨ç¾ã•ã‚Œã¦ã„ã‚‹ã“ã¨ã‚’å‰æã¨ã—ãŸã‚‚ã®ã§
ã‚ã£ãŸï¼Žãã®ãŸã‚ã€ŒUnicodeæ‹¡å¼µã«ã‚ˆã£ã¦1æ–‡å­—3\,nodeã¨ã‹ã«ãªã£ã¦ã„ãªã„ã&nbsp;ã‚
ã†ã‹ã€ã¨å¿ƒé…ã—ãŸï¼Ž\WEB\ change fileã‚’ã–ã£ã¨ã–ã£ã¨è¦‹ã¦ã¿ãŸæ‰€ï¼Œã©ã†ã‚„ã‚‰ãã®
ã‚ˆã†ãªäº‹æ…‹ã¯èµ·ã“ã£ã¦ã„ãªã„ã‚ˆã†ã«æ€ãˆãŸï¼Žã©ã†ã‚„ã‚‰å‹•ã„ã¦ã¯ã„ã‚‹ã‚ˆã†ã§ã‚ã‚‹ï¼Ž

\eteiri
ã“ã®ã¨ãã¤ã„ã§ã«ï¼Œ{\tt fp.diff}ã‚’change fileã®å½¢å¼ã«æ›¸ãç›´ã—ãŸã‚Šã‚‚ã—ãŸï¼Ž
ãã“ã§\textit{fp\_sub\_absolute\_value} procedureå†…ã§
$\infty-\infty\neq{\rm NaN}$ã¨ã„ã†bugã‚’ç™ºè¦‹ã—ã¦ï¼Œä¿®æ­£ã™ã‚‹ã“ã¨ãŒã§ããŸï¼Ž



\newpage
\section{ä»Šå¾Œã®èª²é¡Œã¨ï¼Œãã‚Œã«ã¾ã¤ã‚ã‚‹é›‘æ„Ÿ}
ä»Šã¾ã§æ›¸ã„ãŸã‚ˆã†ãªä½œæ¥­ã‚’ã—ã¦ãã¦ï¼Œæœ€åˆã«æ°—ã¥ã„ãŸã“ã¨ã¯ï¼Œ\emph{è‡ªåˆ†ã®è‹±èªž
åŠ›ã®ç„¡ã•}ã§ã‚ã‚‹ï¼Žè‹±èªžã®æ•°å­¦æ›¸ã¨ã‹ã¯ï¼ˆè‹±æ–‡ã«ã¤ã„ã¦ã¯ï¼‰ãŸã„ã—ãŸè‹¦ã‚‚ãªãèª­
ã‚ã‚‹ã®ã&nbsp;ãŒï¼Œä¸€æ–¹ã§ã„ã–è‡ªåˆ†ã§æ›¸ã“ã†ã¨ã™ã‚‹ã¨è¡¨ç¾ãŒå…¨ãæ€ã„æµ®ã‹ã°ãªã„ï¼Ž\WEB
ã‚½ãƒ¼ã‚¹ã‚’æ›¸ãæ›ãˆã‚‹ã«ã‚ãŸã£ã¦ã¯ï¼Œã¨ã‚Šã‚ãˆãšã®è‹±èªžã§é–“ã«åˆã‚ã›ãŸã‘ã‚Œã©ã‚‚ï¼Œ
æ„å‘³ã®ä½™ã‚Šå–ã‚Œãªã„ã‚ˆã†ãªæ–‡ç«&nbsp;ã«ãªã£ã¦ã„ã‚‹ã§ã‚ã‚ã†ã“ã¨ã¯ç¢ºå®Ÿã§ã‚ã‚‹ï¼Žé™¢è©¦ã¾
ã§ã«ãªã‚“ã¨ã‹ã—ãŸã„ã‚‚ã®ã&nbsp;\verb+^^;+

\eteiri å†…å®¹é¢ã«ã¤ã„ã¦ï¼Žæµ®å‹•å°æ•°ç‚¹ã®å®Ÿè£…ã‚’ã—ãŸã¯ã„ã„ãŒï¼ŒPascalã®ï¼Œãã‚Œã‚‚
ã”ãåŸºæœ¬çš„ãªä»•æ§˜ã«æ²¿ã£ãŸã&nbsp;ã‘ã®å®Ÿè£…ã§ã‚ã‚Šï¼Œé€Ÿåº¦çš„ã«ã‚‚ä¸åˆ©ã§ã‚ã‚‹ã¨æ€ã‚ã‚Œã‚‹ï¼Ž
Beebe~\cite{beebe}ã«ã‚ã‚‹ã‚ˆã†ã«ï¼ŒCè£½ã®ä½•ã‹ä¿¡é&nbsp;¼æ€§ã®ãŠã‘ã‚‹é«˜é€Ÿå¤šå€é•·æ•°å€¤è¨ˆç®—ãƒ©ã‚¤ãƒ–
ãƒ©ãƒªã‚’åˆ©ç”¨ã™ã‚‹ã¨ã„ã†ã®ãŒæ‰‹ã£å–ã‚Šæ—©ãã¾ãŸå®‰å…¨ãªæ–¹ç­–ã§ã‚ã‚ã†ï¼Žã—ã‹ã—ï¼Œåƒ•ã¯
è‡ªåˆ†ã§æµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã‚’å®Ÿè£…ã—ãŸã“ã¨ãŒãªã‹ã£ãŸã®ã§ï¼Œä¸€å›žã¯è‡ªåˆ†ã§ã‚³ãƒ¼ãƒ‰ã‚’æ›¸
ã„ã¦ã¿ãŸã‹ã£ãŸï¼Ž

ã¾ãŸï¼Œ\eTeX ã§é•·ã•é‡ã¨ã‹ã«ã¯\verb+\dimexpr+ãªã©ãŒã‚
ã‚Šå¼ã®è¡¨ç¾ãŒä½¿ãˆã‚‹ã®ã«ï¼Œæµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã§ã¯ã¾ã&nbsp;ãã®æ©Ÿèƒ½ãŒãªã„ã¨ã‹ï¼Œã‚„ã£ã±
ã‚Šå‡ºåŠ›æ›¸å¼æŒ‡å®šã®æ©Ÿèƒ½ãŒãªã„ã¨ã„ã†ã®ã‚‚æ°—
ã«ãªã‚‹è©±ã§ã‚ã‚‹ï¼Žå¾Œè€…ã¯ãƒžã‚¯ãƒ­ã‚’é&nbsp;‘å¼µã£ã¦ã„ã˜ã‚Œã°ãªã‚“ã¨ã‹ã§ããã†ãªæ°—ã‚‚ã™ã‚‹ï¼Ž

\eteiri
æœ€å¾Œã«ï¼Œé¿ã‘ã¦é€šã‚Œãªã„å•é¡Œã§ã‚ã‚‹ãŒï¼Œbugã®å•é¡ŒãŒã‚ã‚‹ï¼Žç‰¹ã«æµ®å‹•å°æ•°ç‚¹æ¼”ç®—
ã®æ–¹ã¯è‡ªåˆ†ã§æ›¸ãèµ·ã“ã—ãŸã‚‚ã®ã§ã‚ã‚‹ã‹ã‚‰ï¼Œã©ã‚“ãªbugãŒæ½œã‚“ã§ã„ã‚‹ã‹ã¯åˆ†ã‹ã‚‰
ãªã„ï¼Žã&nbsp;ã„ã¶bugã¯å–ã‚ŒãŸã‚ˆã†ãªæ°—ã‚‚ã™ã‚‹ãŒï¼Œãã‚Œã¯ç¾æ™‚ç‚¹ã§ã®æ€ã„è¾¼ã¿ã§ã‚ã£
ã¦ï¼Œã‚„ã¯ã‚Šå¿ƒé…ã§ã‚ã‚‹ï¼Ž

\eteiri 
ã²ã‚‡ã£ã¨ã™ã‚‹ã¨ï¼Œ\pTeX ã®å¯¿å‘½ã¯ã‚‚ã¯ã‚„ã‚ã¾ã‚Šé•·ããªã„ã®ã§ã¯ãªã„ã‹ã¨
å¿ƒé…ã—ã¦ã„ã‚‹ï¼Žæœ€åˆã«ç´¹ä»‹ã—ãŸ\TeX ã®æ‹¡å¼µãŸã¡ã‚„ï¼Œ\pdfTeX ã‚’æ‹¡å¼µã—ã¦ã‚¹ã‚¯ãƒªãƒ—
ãƒˆè¨€èªžLuaã‚’çµ„ã¿è¾¼ã‚“ã&nbsp;Lua\TeXï¼Œã¾ãŸ\XeTeX ãªã‚“ã‹ã®å­˜åœ¨ã‚’èžã„ã¦ã‚‹ã¨ï¼Œç´”ç²‹ãª
\TeX ã«æ—¥æœ¬èªžã‚’å¯¾å¿œã•ã›ãŸã&nbsp;ã‘ã®p\TeX ã®å­˜åœ¨æ„ç¾©ã¯éŽåŽ»ã®éºç”£ã®ç¶™æ‰¿ãã‚‰ã„ã—
ã‹ãªããªã‚Šï¼Œä¸»æµã¯ä¸–ç•Œçš„ã«ã‚‚ã“ã‚Œã‚‰ã®æ‹¡å¼µã®ã©ã‚Œã‹ or ãã®ç™ºå±•å½¢
{---}{---}Lua\XeTeX ã¨ã§ã‚‚å‘¼ã¹ã°ã„ã„ã®ã&nbsp;ã‚ã†ã‹ï¼Ÿ\inhibitglue {---}{---}ã«
ãªã£ã¦ã„ããã†ãªäºˆæ„ŸãŒã™ã‚‹ï¼Žã¡ã‚‡ã†ã©ï¼Œæ—¥æœ¬é›»æ°—ã®PC-9800ã‚·ãƒªãƒ¼ã‚ºã¨æ‰€è¬‚
ã€ŒDOS/Vãƒ‘ã‚½ã‚³ãƒ³ã€ã®é–¢ä¿‚ã®ã‚ˆã†ã«ï¼Ž

\eteiri ã—ã‹ã—ï¼Œã›ã£ã‹ãã“ã®è¨ˆç®—æ•°å­¦IIã§ã€Œ\pTeX ã«å¯¾ã—ã¦ï¼Œ\eTeX ã®æ©Ÿ
èƒ½ã®ãƒžãƒ¼ã‚¸ã¨æµ®å‹•å°æ•°ç‚¹æ¼”ç®—ã®å®Ÿè£…ã‚’è¡Œã†ã€ã¨ã„ã†ã“ã¨ãŒå¤§ã£ã´ã‚‰ã«ã§ããŸã®ã&nbsp;
ã‹ã‚‰ï¼Œã“ã®ã¾ã¾çµ‚ã‚ã‚‹ã®ã¯éžå¸¸ã«è™šã—ã„ã¨æ€ã£ã¦ã„ã‚‹ï¼Žã“ã‚“ãªã“ã¨ã‚’è¨€ã†ã¨ã€Œä½•
ã‚’è¨€ã£ã¦ã„ã‚‹ã‚“ã&nbsp;ã€ã¨è¨€ã‚ã‚Œãã†ã&nbsp;ãŒï¼Œup\TeX ãªã©ã¨å…±ã«ï¼Œ\pTeX ã®åœ°ä½
å‘ä¸Šã«å¯„ä¸Žã§ããŸã‚‰ã„ã„ãªï¼Œã¨æ€ã£ã¦ã„ã‚‹ï¼Ž

\eteiri
ä»¥ä¸Šï¼Œã„ã‚ã„ã‚æ›¸ã„ã¦ããŸãŒï¼Œå†¬ä¼‘ã¿ä¸­ã‚„ãã‚Œä»¥é™ã«ï¼Œã“ã®\epTeX ã¾ã‚ã‚ŠãŒã¨
ã‚“ã§ã‚‚ãªã„ãŠãŠã”ã¨ã«ãªã£ã¦ã—ã¾ã£ãŸã“ã¨ã«ã¯é©šãã§ã‚ã‚‹ï¼Žå–ã‚Šä¸Šã’ã¦ã‚‚ã‚‰ãˆã‚‹
ã®ã¯ã†ã‚Œã—ã„ã“ã¨ã§ã¯ã‚ã‚‹ãŒï¼Œ\epTeX ãŒã©ã‚“ã©ã‚“è‡ªåˆ†ã®ä¸­ã«æŠ±ãˆãã‚Œãªã„ã‚‚ã®
ã«ãªã£ã¦ã„ã‚‹ã‚ˆã†ãªæ°—ã‚‚ã—ã¦ã„ã‚‹ï¼Ž

\newpage
\section{ä»˜éŒ²}
\subsection{$\bm\varepsilon$-\pTeX ã®ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«æ–¹æ³•ã®ã‚¤ãƒ¡ãƒ¼ã‚¸}
{\tt eptex-xxxxx.xx.tar.bz2}å†…ã®{\tt HOWTOINST.txt}ã¨ã‹ã‚’è¦‹ã‚Œã°åˆ†ã‹ã‚‹è©±ã§ã¯
ã‚ã‚‹ãŒï¼Œå›³ã«ã—ã¦ãŠãã¨ãªã«ã‹ã¨ä¾¿åˆ©ã§ã‚ã‚‹ï¼Ž

\begin{adjustvboxheight}
\small\narrowbaselines
\begin{center}
\xymatrix{\
\texttt{../tex.web}\ar[r]&amp;\fbox{\tt
tie}\ar[r]&amp;\texttt{ptex.web}\ar[r]&amp;\fbox{\tt tie}\ar[r]&amp;(*)\\
&amp;\xymtt{../tex.ch}\ar[u]&amp;\texttt{ptex.ch}\ar[ur]&amp;\texttt{etex.ch}\ar[u]&amp;%
{\begin{array}{c}\texttt{etex-sysdep.ch}\\\texttt{fp.ch}\end{array}}\ar[ul]\\
&amp;\xymtt{ptex-base.ch}\ar[ur]^-{\xymtt{tie -c ...}}&amp;
\texttt{etex.diff}\ar[r]^-{\rm patch}&amp;\\
&amp;&amp;\texttt{../etexdir/etex.ch}\ar[r]^-{\rm cp}
&amp;\texttt{etex.ch}\ar[uu]}
\ \\[0.5\baselineskip]\ 
\xymatrix{
(*)=\texttt{eptex.web}\ar[r]&amp;\fbox{\tt tangle}\ar[r]&amp;
\texttt{eptex.p}\ar[rr]^-{\rm Web2C}&amp;&amp;\text{{\tt tex1.c}\ etc.}%
\ar[rr]^-{\text{C compiler}}&amp;&amp;\texttt{eptex}\\
&amp;&amp;&amp;\texttt{pconvert.diff}\ar[u]_-{\text{patch to {\tt pconvert}}}&amp;
\texttt{ep1.diff}\ar[r]^-{\rm patch}&amp;\\
&amp;&amp;&amp;&amp;&amp;\hbox to 0zw{\hss\texttt{ptexextra.c} etc.\hss}\ar[uu]
}\ 
\end{center}
\end{adjustvboxheight}

\subsection{\WEB ã®å®Ÿä¾‹ï¼š\texttt{ks1.web}}
ã“ã®ãƒ•ã‚¡ã‚¤ãƒ«ãŒã‚ã‚‹ãƒ‡ã‚£ãƒ¬ã‚¯ãƒˆãƒªï¼Œã‚‚ã—ãã¯å…¬é–‹å&nbsp;´æ‰€ã«ã‚ã‚‹{\tt ks1.web}ã¯ï¼Œåƒ•
ãŒè¨ˆç®—æ•°å­¦Iã®ãƒ¬ãƒãƒ¼ãƒˆã«æ›¸ã„ãŸCarmichaelæ•°ã‚’æŽ¢ç´¢ã™ã‚‹ãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;ï¼ˆ{\tt
ks1.f90}, Fortran 90ï¼‰ã‚’\WEB ã«ç¿»è¨³ã—ãŸã‚‚ã®ã§ã‚ã‚‹ï¼Ž

ã“ã“ã§ã¯ï¼Œï¼ˆæœ¬æ¥ã®\WEB ã§ã¯æ—¥æœ¬èªžãŒé€šã‚‰ãªã„ã®ã§ï¼‰æ¾å±±ã•ã‚“ã®æ—¥æœ¬èªžç‰ˆ
WEB~\cite{jpweb}ã‚’ä½¿ã‚ã›ã¦ã‚‚ã‚‰ã†ã“ã¨ã«ã—ãŸï¼Žã“ã®æ—¥æœ¬èªžç‰ˆ\WEB ã«ã‚ˆã‚‹
{\tt jtangle}, {\tt jweave}ã‚³ãƒžãƒ³ãƒ‰ãŒãã‚Œãžã‚Œ{\tt tangle}, {\tt weave}ã®
ä»£ã‚ã‚Šã¨ãªã‚‹ï¼Ž

åƒ•ã¯Pascalã®ã‚³ãƒ³ãƒ‘ã‚¤ãƒ©ã‚’æ‰€æŒã—ã¦ã„ãªã‹ã£ãŸã®ã§ï¼ŒWeb2Cã‚’åˆ©ç”¨ã—ã¦ã‚³ãƒ³ãƒ‘
ã‚¤ãƒ«ã‚’è¡Œã£ãŸï¼Ž
\begin{adjustvboxheight}
\narrowbaselines\small
\begin{verbatim}
  [h7k doc]$ web2cdir=/home/h7k/ks2/texk/web2c/web2c
  [h7k doc]$ cat $web2cdir/common.defines $web2cdir/texmf.defines ks1.p|$web2cdir/
  web2c -t -hks1-a.h -cks1 |$web2cdir/fixwrites &gt; ks1.c
  [h7k doc]$ gcc -o ks1 ks1.c
\end{verbatim}
\end{adjustvboxheight}
{\tt jtangle}, {\tt jweave}ã‚³ãƒžãƒ³ãƒ‰ã§ã§ããŸ{\tt ks1.p}, {\tt ks1.tex}ã‚„ï¼Œ
ä¸Šã®ã‚ˆã†ã«Cè¨€èªžã«å¤‰æ›ã—ã¦å¾—ã‚‰ã‚ŒãŸ{\tt ks1.c}, {\tt ks1.h}ã‚‚åŒã˜ãƒ‡ã‚£ãƒ¬ã‚¯
ãƒˆãƒªã«ç½®ã„ã¦ãŠã„ãŸï¼Ž
ãªãŠï¼Œ{\tt ks1-a.h}ã¨ã„ã†ã®ã¯Web2CãŒåãCã‚½ãƒ¼ã‚¹ã‚’
ãã¡ã‚“ã¨ã‚³ãƒ³ãƒ‘ã‚¤ãƒ«ã§ãã‚‹ã‚ˆã†ã«ã™ã‚‹ãŸã‚ã®æœ€å°é™ã®è¨­å®šã§ã‚ã‚‹ï¼Ž


\newpage
\begin{thebibliography}{99}
\bibitem{matsu3} æ¾å±± é“å¤«ï¼Œã€Œ\TeX èª­ã¿ç‰©ãã®3ã€€\TeX ã®æˆç«‹ã¡ã«é–¢ã™ã‚‹
	è«¸ã€…ã€ï¼Ž\\
\verb+http://www.matsuand.com/downloads/texread/texread3.pdf+
\bibitem{webman} Donald\ E.~Knuth. \textit{The \WEB\ System of
	Structured Documentation}. Stanford Computer Science Report
	CS980, 1983.\\
ä¾‹ãˆã°\verb+http://www.ctan.org/tex-archive/systems/knuth/WEB/WEBman.tex+
	ã¨ã‹ã«ã‚ã‚‹ï¼Ž
\bibitem{texwiki} å¥¥æ‘æ°ã®\TeX\ wikiã®ã€ŒMakeã€ã®é&nbsp;…ï¼Ž\\
\verb+http://oku.edu.mie-u.ac.jp/~okumura/texwiki/?Make+
\bibitem{etexman} The \NTS\ Team. \textit{The \eTeX\ manual}. \\
\verb+http://www.tug.org/texlive/Contents/live/texmf-dist/doc/etex/base/etex_man.pdf+
\bibitem{trip} Donald E. Knuth. \textit{A torture test for
	\TeX}. Stanford Computer Science Report CS1027, 1984.\\
\verb+http://ftp.yz.yamagata-u.ac.jp/pub/CTAN/systems/knuth/tex/tripman.tex+
\bibitem{etrip} The \NTS\ Team. \textit{A torture test for \eTeX}.\\ æ—§ç‰ˆ\
(Ver.~2) ãŒä»¥ä¸‹ã«ã‚ã‚‹ï¼Žç¾åœ¨ã¯Ver.~2.2ã§ï¼Œ\TeX\ Live 2007ã¨ã‹ã«ã¯å…¥ã£ã¦ã„
	ã‚‹ï¼Ž\\%
\verb+http://tug.ctan.org/cgi-bin/getFile.py?fn=/systems/e-tex/v2/etrip/etripman.tex+
\bibitem{TAOCP} Donald E.\ Knuth.
{\it The Art of Computer Programming}, Volume 2: Seminumerical
Algorithms. Addison-Wesley, third edition 1998.
\bibitem{arizawa} æœ‰æ¾¤ èª&nbsp; ç·¨ï¼Œã€Žã‚¯ãƒŒãƒ¼ã‚¹å…ˆç”Ÿã®ãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;è«–ã€ï¼Œå…±ç«‹å‡ºç‰ˆï¼Œ
1991
\bibitem{jpweb} æ¾å±± é“å¤«ï¼Œæ—¥æœ¬èªžç‰ˆ\WEBï¼ˆè©¦ä¾›ç‰ˆï¼‰ï¼Ž\\
\verb+http://www.matsuand.com/downloads/jWEB/jWEB-0.0.7.tar.gz+
\bibitem{pascal} K.\ ã‚¤ã‚§ãƒ³ã‚¼ãƒ³ï¼ŒN.\ ãƒ´ã‚£ãƒ«ãƒˆ è‘—ï¼ŒA.\ B.~ãƒŸã‚±ãƒ«ï¼ŒL.\ F.~%
	ãƒžã‚¤ãƒŠãƒ¼ æ”¹è¨‚ï¼ŒåŽŸç”° è³¢ä¸€ è¨³ï¼Œ\\
ã€Žæƒ…å&nbsp;±å‡¦ç†ã‚·ãƒªãƒ¼ã‚º2ã€€PASCALã€€åŽŸæ›¸ç¬¬4
	ç‰ˆã€ï¼ŒåŸ¹é¢¨é¤¨ï¼Œ1981
\bibitem{mppack} å¹³å±± å¼˜ï¼Œé«˜ç²¾åº¦è¨ˆç®—ãƒ—ãƒ­ã‚°ãƒ©ãƒ&nbsp;MPPACK 1.0ï¼Ž
\verb+http://phase.hpcc.jp/phase/mppack/+
\bibitem{okuc} å¥¥æ‘ æ™´å½¦ï¼Œã€ŽCè¨€èªžã«ã‚ˆã‚‹æœ€æ–°ã‚¢ãƒ«ã‚´ãƒªã‚ºãƒ&nbsp;è¾žå…¸ã€ï¼ŒæŠ€è¡“è©•è«–
	ç¤¾ï¼Œ1991
\bibitem{beebe} Nelson H. F. Beebe. Extending \TeX\ and \mf\
	with Floating-Point Arithmetic. \textit{TUGboat}, 28 (3),
	November 2007. 
\verb+http://www.math.utah.edu/~beebe/talks/2007/tug2007/tug2007.pdf+
\bibitem{ori} æ•°å­¦ç§‘3å¹´ã‚ªãƒªã‚¨ãƒ³ãƒ†ãƒ¼ã‚·ãƒ§ãƒ³ä¿‚ï¼Œã€Ž2007å¹´åº¦ æ•°å­¦ç§‘ã‚ªãƒªãƒ‘ãƒ³
	ãƒ•ã€ï¼Œ2007.9\\
ï¼ˆæ•°ç†266ï¼ˆå­¦éƒ¨ç”Ÿç”¨æŽ§ãˆå®¤ï¼‰ã«çµæ§‹æ®‹éƒ¨ãŒã‚ã‚‹æ¨¡æ§˜ï¼Žï¼‰
\bibitem{okupt} å¥¥æ‘ æ™´å½¦ï¼Œã€ŒpTeXã¸ã®ææ¡ˆã‚‚ã©ãã€ï¼Œ2008.1.4ï¼Ž\\
\verb+http://oku.edu.mie-u.ac.jp/tex/mod/forum/discuss.php?d=29+
\end{thebibliography}

\end{document}
</pre></body></html>