Programming languages for writing system programs

Programming languages for writing system programs
复制标题

用于编写系统程序的编程语言

DOI:
10.1002/spe.4380040102
复制
发表时间:
1974
期刊:
Software: Practice and Experience
影响因子:
--
通讯作者:
C. A. Lang
C. A. Lang
中科院分区:
--
文献类型:
--
作者:
C. A. Lang

文献摘要

被引文献

相似文献

我的实验室最近迈出了倒退的一步,买了一台新电脑。这是一种流行的、快速的现代机器,配有浮点硬件、磁盘和磁带,被不公平地称为“迷你”,因为似乎没有新的名字来描述这种从昨天的迷你进化而来的强大机器。我们对硬件很满意。然而,带着我们新交付的骄傲和喜悦开始软件开发,却产生了一种d6jb vu的感觉,因为一个常见的问题再次出现。重新出现了,因为这是一个我们花了很大力气在以前的机器上解决的问题,并享受了五年的劳动成果。我们要用什么语言为这台新机器编写系统程序?汇编代码和FORTRAN是制造商仅有的产品:两者都不适合。我们应该自己设计和实现一个书写语言的系统吗?这是我们在上一台机器上采取的策略,但这种语言依赖于机器。我们应该为这种类型的机器寻找一种在其他地方实现的合适语言吗?我们应该寻找一种具有机器可移植编译器的语言,而这种语言还没有必要在这台机器上实现吗?可悲的是,在1974年,仍然没有一种被广泛接受的、广泛实现的高级系统编写语言,人们可以合理地预期它是由计算机制造商提供的,而不是FORTRAN。用高级语言编写系统,无论是操作系统、编辑程序、编译器、交互设计系统、文本处理系统或任何其他语言,都被广泛接受(除了一大批神童汇编码程序员外),并得到广泛实践。Burroughs在过去的十年里一直在这样做;Multics从项目开始就使用了一种PL/L方言;bcpl编译器是用bcpl编写的。尽管以这些例子为代表的使用系统编写语言的做法很常见,但没有一种语言获得真正广泛的使用。
My laboratory recently took the backward step of buying a new computer. It is a popular, fast, modern machine with floating point hardware, disks and magnetic tapes, unfairly called a ‘mini’as no new name seems to have been coined for this class of powerful machine evolved from the minis of yesterday. We are delighted with the hardware. Starting software development with our newly delivered pride and joy, however, created a feeling of d6jB vu, for a common problem reappeared. Reappeared, for it is one that, with the expenditure of much effort, we had solved on a previous machine and enjoyed the fruits of our labours for five years. What language are we to use to write system programs for the new machine? Assembly code and FORTRAN are the manufacturer’s only offerings: neither is suitable. Should we design and implement a system writing language ourselves? This was the tack we took on our previous machine, but that language was machine dependent. Should we look for a suitable language implemented elsewhere for this type of machine? Should we look for a language with a machine transferable compiler, not yet necessarily implemented on this machine?It is sad to reflect that in 1974 there is still no widely acceptable, widely implemented high level system writing language that one might reasonably expect to be supplied by a computer manufacturer in addition to FORTRAN. The writing of systems in a high level language, be they operating systems, editors, compilers, interactive design systems, text manipulation systems or whatever, is widely accepted (universally apart from a largish minority of whiz-kid assembly code programmers) and widely practised. Burroughs have been at it for the past ten years; MULTICS has used a dialect of PL/l since the inception of the project; the BCPL compiler is written in BCPL. Although the practice of using a system writing language, typified by these examples, is common, no one language has achieved really widespread use.