样式文件中声明的变量

样式文件中声明的变量

我正在尝试阅读.bst来自驯服野兽第 39 页有一个乘法函数的示例:

INTEGERS { a b }

FUNCTION {mult}
{
  ’a := %% we store the first value
  ’b := %% we store the second value

  b #0 < %% We remember the sign of b, and
    {#-1 #0 b - ’b :=} %% then consider its absolute value.
    {#1} %%
  if$
  ...

为什么b有些 前面没有'? 难道所有的 都不应该b指代同一个b,即b在内部声明的INTEGERS,并且前面应该有一个'吗?

答案1

BibTeX 的语法如下

#1 'a :=

是一个赋值,将变量命名为 ,a并将其值设置为1,而

a #1 =

是一个比较,将变量的值a插入并与 进行比较1

BibTeX 是一种堆栈语言,因此更一般地'a通常姓名变量在堆栈上,而仅a将值留在堆栈上。

答案2

该行{#-1 #0 b - ’b :=}含义为:将名称为 的变量的值设置'b为通过对其中一个操作数的值进行运算而得到的值b(变量当前存储的值)'b

相关内容