\@nil、\@cdr 和 \@car 是什么意思

\@nil、\@cdr 和 \@car 是什么意思

今天我遇到了这三个命令:

\@nil
\@cdr
\@car

有些提到了这里这里,但我没明白其中的意思。这似乎与宏字符有关。

我在 google 和 TeX.SX 上没有看到关于它的任何描述。

答案1

这些名字来自 lisp。

在 lisp 中,car 返回列表的头,cdr 返回列表的尾部,nil 是空列表。


在乳胶中

\def\@car#1#2\@nil{#1}
\def\@cdr#1#2\@nil{#2}

\@nil根本没有定义)

所以

\@car abc\@nil

扩展为a

\@cdr abc\@nil

扩展为bc

相关内容