\hsize=\dimexpr 21cm-2in \relax \vsize=\dimexpr 29.7cm-2in \relax \parindent 0pt \font\xviibf=cmbx17 \font\xivbf=cmbx14 \font\xivtt=cmtt14 \def\cmd#1{{\tentt \string#1}} \def\Cmd#1{{\xivtt \string#1}} \def\Par{\par\medskip} \newcount\cntsection \def\section#1{% \par\bigskip \advance \cntsection by 1 {\xivbf \the\cntsection.\ #1} \par\medskip } \input randomlist %%% begin document %%% \centerline{\xviibf Torture test for pdftex and etex} \par\vskip10mm \section{Test for \Cmd{\NewList} (and \Cmd{\ShowList})} \NewList{MyList} \ShowList{MyList} \section{Tests for \Cmd{\Insert...}} With \cmd{\InsertFirstItem} \InsertFirstItem{MyList}{first} \InsertFirstItem{MyList}{second} \InsertFirstItem{MyList}{third} \InsertFirstItem{MyList}{fourth} \ShowList{MyList} \Par We test \cmd{\ClearList} since we'll use it many times: \ClearList{MyList} \ShowList{MyList} \Par With \cmd{\InsertLastItem} \InsertLastItem{MyList}{first} \InsertLastItem{MyList}{second} \InsertLastItem{MyList}{third} \InsertLastItem{MyList}{fourth} \ShowList{MyList} \ClearList{MyList} \Par With \cmd{\InsertItem} with indexes 0, 0, 2, 1 \InsertItem{MyList}{0}{first} \InsertItem{MyList}{0}{second} \InsertItem{MyList}{2}{third} \InsertItem{MyList}{1}{fourth} \ShowList{MyList} \ClearList{MyList} \Par \RLsetrandomseed{3} With \cmd{\InsertRandomItem} (seed = 3) \InsertRandomItem{MyList}{first} \InsertRandomItem{MyList}{second} \InsertRandomItem{MyList}{third} \InsertRandomItem{MyList}{fourth} \ShowList{MyList} \ClearList{MyList} \Par \vfill\break With \cmd{\InsertList} \NewList{OtherList} \InsertLastItem{MyList}{first of Mylist} \InsertLastItem{MyList}{second of Mylist} \InsertLastItem{MyList}{third of Mylist} \InsertLastItem{MyList}{fourth of Mylist} \InsertLastItem{OtherList}{first of Otherlist} \InsertLastItem{OtherList}{second of Otherlist} \InsertLastItem{OtherList}{third of Otherlist} \InsertLastItem{OtherList}{fourth of Otherlist} \ShowList{MyList} \ShowList{OtherList} Insertion at index 2 \InsertList{MyList}{2}{OtherList} \ShowList{MyList} \ShowList{OtherList} \ClearList{MyList} \ClearList{OtherList} \Par \bye