有史以来最流行的计算机编程语言之一将在5月1日迎来50岁生日,但几乎没有人再使用它了。
BASIC是初学者通用符号指令代码(初学者通用符号指令代码)的缩写,可能起源于1964年达特茅斯学院的一个数学项目。但它最终为整整一代人定义了家用电脑的所有权。
80年代初,作为一个在布鲁克林长大的孩子,我拥有了第一台真正的电脑——雅达利800,这是一个巨大的转折点。Radio Shack TRS-80、Apple II、IBM PC和Commodore 64的用户都经历了相同的变化。作为一个不折不扣的雅达利迷,我订阅了当时的新产品滑稽可笑的杂志;所有问题的内容可以在www.atarimagazines.com(在一个新窗口中打开).每个月刊都有大量的BASIC程序可供输入。在小学的时候,我花了很多晚上和周日的时间来做这些事。
以今天的标准来看,结果是可笑的。我清楚地记得,我和爸爸花了一个星期天的下午,用BASIC语言输入这个国旗程序;这是我们第一次得到电脑时,做的第一批作品之一。当时它看起来真的很长(尽管后来我输入的程序是它的10倍大,花了好几天时间)。当我们完成时,它一开始自然不能工作;我们至少在某个地方犯了一个错误,所以我们花了更多的时间来解决这个问题。
在所有这些之后,当我们最终把它弄对时,我们输入RUN,然后,嗒嗒!-屏幕上显示了一面像素化的块状美国国旗,白色的圆点代表星星。就是这样。“这就是我们所得到的吗?”你一定是在开玩笑,”父亲说。在那之后,我就是那个输入所有程序的人。我不介意。
编程是为了乐趣,而不是为了利润
从那时起,它就开始赛跑了。我输入了更多的图形演示、解谜游戏、文本冒险、磁盘工具、打印项目的代码——你能想到的,可能有一堆几近无用但仍然有趣的程序我可以自己输入或编写。最终,我开始在Atari 800上运行BBS,我已经这么做了在另一个专栏里泄露了.住在布鲁克林是其中的关键,因为我结交了一些亲密的朋友,他们恰好都住在纽约市地区。
当时,学校开始增设电脑室;我们小学的实验室里全是Commodore PET机器,学校发给我们这些黄色的大活页夹,里面全是练习和编程示例,让我们整个学期都在里面打字。我们学习了如何避免面条式代码(太多的GOTO语句),如何设计简单清晰的用户界面,以及如何在当时被认为过时的计算机上编写基本的图形和声音程序。
公平地说,BASIC在当时真正的高级用户中名声不太好。因为它是一种解释语言,所以要使它工作需要大量的内存和CPU开销。在你能运行程序之前,你必须先运行BASIC,然后然后在上面运行你的代码。与汇编程序编写的游戏相比,BASIC程序编写的游戏往往反应迟钝,后者更难学习,但让你更直接地访问“金属”或硬件。
C不一样
时间杂志的Harry McCracken写了一篇文章恒星的概述(在一个新窗口中打开)BASIC语言对70年代末80年代初的计算机用户产生了怎样的影响。我站在他这边;我相信今天肯定丢失了一些东西,因为越来越多的人不知道如何编程。
当然,现在情况不同了;在20世纪80年代早期,计算机还是一种全新的东西,学习编程并观察它做事是一件很棒的事情。如果你需要一个抵押计算器,或者(嗯哼)一个龙与地下城角色生成器在美国,你可以在手边的任何一本书中查找必要的BASIC命令,然后自己编写。游戏程序员可以自己制作所有的美术和音效,因为分辨率很低,你甚至可以这么做。
现在,只要轻轻一点,你就可以下载手机上超过100万个应用程序中的任何一个,所有这些应用程序的功能都比开箱即用多得多,相比之下,它们的外观和声音都非常棒,拥有专业的美术和声音设计。考虑到每个操作系统的复杂性,如果你想自己写一些东西,现在要困难得多,而且不太能立即让人满意。我后来获得了计算机科学学位,但我从来没有像以前那样喜欢过C语言编程,也没有把它作为职业。我很高兴有这么多人这么做,我对他们的技能感到敬畏。
但事情是这样的:即使我不是像约翰·卡马克那样天生的程序员,BASIC语言意味着我仍然可以学习编程,学习有关计算机如何工作的一切。
在一个充斥着四核手机和高清游戏机的世界里,BASIC编程如今看起来相当平淡。但我无法想象我的童年没有它,而且对我来说有点悲哀的是,现代没有一种等同于每个人都易于学习的编程语言。