从微软程序到Apple II上的解释器

Applesoft是供Apple II使用的浮点BASIC,早期手册把业务、科学和教育中需要较多小数运算的工作列为应用方向。使用者通过键盘输入指令,解释器在机器上处理表达式或执行所存程序。这与只在纸上规定语言不同:它须同具体计算机的输入、存储和显示方式配合。

苹果与Computer Edge的诉讼留下了一组双方同意事实:苹果1977年从微软取得BASIC程序,雇员兰迪·威金顿于当年8月至约12月改动或重写部分代码,修改后的程序称为Applesoft。程序来自微软与苹果的协作过程,不能简单归给后来某一台带ROM的Apple II机型。

参考:[1] [2]

手册纪年与磁带销售

现存参考手册扉页标明1977年11月,并注明苹果与微软1977年版权。页上“磁带—RAM版本”的手写标记也提示读者所面对的版本载体。手册说明,机器若尚未装入浮点BASIC,须先按附录步骤装入,出现提示符后才能输入命令。

1983年判决所引第23A项同意事实另记,能够在计算机中恢复该目标程序的磁带,1978年首次由苹果向美国公众出售。它明确的是该程序磁带在美国的公开销售,不能扩张为此前不存在测试、免费或其他形式的分发。因此,1977年改写和手册纪年、1978年公开销售在这里分别叙述。

参考:[1] [2]

先算一式,再保存多行程序

手册首先让读者输入一条PRINT命令计算十减四,按回车后立即显示六。这类直接命令输入即执行;另一种用法是在指令前加上行号,使解释器把它存进内存。输入两行分别计算二加三和二减三,再发出RUN,便会依行号顺序得到五与负一。

行号同时承担编辑和执行排序的作用。即使先输入较大的行号,程序也按从小到大的顺序排列;LIST可列出内存中的程序。只输入某行行号可以删除该行,重新输入同一行号及新指令则替换旧内容。使用者不必为了更正一行而重输整个程序。

参考:[2]

浮点数怎样呈现给使用者

“浮点”把有效数字与表示量级的指数结合,使同一语言能够处理小数及不同数量级的值。1977年手册将内部精度与屏幕显示区分,说明通常显示九位有效数字,并按数值大小采用普通或科学记数法。它也提醒简单除法输出可能带有计算误差,显示结果不是任意精度的数学值。

交互操作还有显示格式的约定:在PRINT后用逗号分隔多个值,会按显示栏位排版;程序、数值表示与终端的四十字符行宽同时影响用户看到的输出。早期手册用小算例逐步说明这些关系,而非只给出语言名称与指令清单。

参考:[2]

Applesoft II修订的边界

1978年4月17日修订单自称在初次发行后纠正并扩充Applesoft,并以1977年11月手册为修改对象。它列出数学运算精度改善、随机数发生器错误修正,以及运算优先次序和图形命令格式的变更。修订单还将若干图形命令改成同Apple Integer BASIC相近的写法。

这些文件显示,Applesoft的发展包含移植、使用说明、销售载体和后续修订几种工作。1978年修订单的落款不是原版首次发售的具体日子;后来的ROM配置也不能倒用于描述最初磁带版。早期Applesoft的可见变化,是把浮点计算与可反复编辑的BASIC程序带到Apple II的日常操作中。

参考:[3] [1]