Can programming be liberated from the von Neumann style?

冯·诺依曼建筑 函数式程序设计 计算机科学 编程风格 程序设计语言 域代数上的 风格(视觉艺术) 语义学(计算机科学) 代数表达式 程序设计范式 理论计算机科学 代数数 数学 纯数学 数学分析 历史 考古
作者
J. W. Backus
出处
期刊:Communications of The ACM [Association for Computing Machinery]
卷期号:21 (8): 613-641 被引量:2194
标识
DOI:10.1145/359576.359579
摘要

Conventional programming languages are growing ever more enormous, but not stronger. Inherent defects at the most basic level cause them to be both fat and weak: their primitive word-at-a-time style of programming inherited from their common ancestor—the von Neumann computer, their close coupling of semantics to state transitions, their division of programming into a world of expressions and a world of statements, their inability to effectively use powerful combining forms for building new programs from existing ones, and their lack of useful mathematical properties for reasoning about programs. An alternative functional style of programming is founded on the use of combining forms for creating programs. Functional programs deal with structured data, are often nonrepetitive and nonrecursive, are hierarchically constructed, do not name their arguments, and do not require the complex machinery of procedure declarations to become generally applicable. Combining forms can use high level programs to build still higher level ones in a style not possible in conventional languages. Associated with the functional style of programming is an algebra of programs whose variables range over programs and whose operations are combining forms. This algebra can be used to transform programs and to solve equations whose “unknowns” are programs in much the same way one transforms equations in high school algebra. These transformations are given by algebraic laws and are carried out in the same language in which programs are written. Combining forms are chosen not only for their programming power but also for the power of their associated algebraic laws. General theorems of the algebra give the detailed behavior and termination conditions for large classes of programs. A new class of computing systems uses the functional programming style both in its programming language and in its state transition rules. Unlike von Neumann languages, these systems have semantics loosely coupled to states—only one state transition occurs per major computation.

科研通智能强力驱动
Strongly Powered by AbleSci AI
科研通是完全免费的文献互助平台,具备全网最快的应助速度,最高的求助完成率。 对每一个文献求助,科研通都将尽心尽力,给求助人一个满意的交代。
实时播报
dy完成签到,获得积分10
1秒前
猪猪完成签到 ,获得积分10
1秒前
小蘑菇的应助被蜂鸟5156采纳,获得10
3秒前
黄橙子完成签到 ,获得积分10
4秒前
Liugz完成签到,获得积分10
4秒前
合适惜筠完成签到,获得积分10
4秒前
Penny__HH完成签到,获得积分10
5秒前
sci高手完成签到,获得积分10
5秒前
qi完成签到,获得积分10
5秒前
lemon完成签到 ,获得积分10
6秒前
zyx完成签到,获得积分10
7秒前
Lz完成签到,获得积分10
8秒前
今天放假了吗完成签到,获得积分10
9秒前
小池由希完成签到 ,获得积分10
10秒前
XXY完成签到,获得积分10
11秒前
卷卷完成签到 ,获得积分10
12秒前
Cynthia完成签到,获得积分10
12秒前
薛变霞完成签到 ,获得积分10
12秒前
还单身的薯片完成签到,获得积分10
13秒前
13秒前
Andy完成签到 ,获得积分0
14秒前
专注笑珊完成签到,获得积分10
14秒前
molihuakai的应助被Penny__HH采纳,获得10
14秒前
20250702完成签到 ,获得积分10
15秒前
gudujian870928完成签到,获得积分10
15秒前
15秒前
HuBayu完成签到,获得积分10
16秒前
苗条的访冬完成签到 ,获得积分10
16秒前
lyra1111完成签到,获得积分10
17秒前
尼斯湖中的小水怪完成签到 ,获得积分10
17秒前
重楼又上一支蒿完成签到,获得积分10
18秒前
机灵石头完成签到,获得积分10
18秒前
羊and羊完成签到,获得积分10
19秒前
科研废柴完成签到 ,获得积分10
19秒前
yhyhyhyh完成签到,获得积分10
19秒前
ReynaLi完成签到 ,获得积分10
20秒前
chemhub完成签到,获得积分10
20秒前
ppat5012发布了新的文献求助10
20秒前
仔仔完成签到,获得积分10
21秒前
李媛媛完成签到,获得积分10
22秒前
高分求助中
(应助此贴封号)【重要!!请各用户(尤其是新用户)详细阅读】【科研通的精品贴汇总】 10000
Особенности технологий и методов информационно-психологических войн СССР с Великобританией и США в период 1939-1953 гг 1000
Das Matthäusevangelium: Kapitel 1:1–17 1000
IRTSD: Open-Source Data and Toolset for Electromagnetic Transient Analysis of Disturbances and IBR Control Malfunctions in Transmission Systems 1000
Entre Praga y Madrid : los contactos checoslovaco-españoles (1948-1977) 600
A REVIEW OF THE V-22 DYNAMICS VALIDATION PROGRAM 600
Les Mots du discours 600
热门求助领域 (近24小时)
化学 材料科学 医学 生物 纳米技术 计算机科学 工程类 有机化学 化学工程 生物化学 物理 复合材料 内科学 催化作用 光电子学 人工智能 细胞生物学 无机化学 物理化学 数学
热门帖子
关注 科研通微信公众号,转发送积分 8123155
求助须知:如何正确求助?哪些是违规求助? 9527089
关于积分的说明 21564279
捐赠科研通 7702692
什么是DOI,文献DOI怎么找? 3415844
关于科研通互助平台的介绍 2541698
邀请新用户注册赠送积分活动 2456404