HODGE'S PARROT

はてなダイアリーから移行しました。まだ未整理中。

2005年度チューリング賞にピーター・ナウア氏

いまさらであるが、ウィキペディアアラン・チューリングの項がとても充実している。


で、そこから「チューリング賞」(A. M. Turing Award)へ。

チューリング賞は、情報工学・計算機科学分野で優れた功績を残した人にACMが贈る賞。
情報工学・計算機科学分野では最高の賞とされていて、文学や物理学でいうところのノーベル賞に匹敵する権威ある賞とみなされている。


[Association for Computing Machinery]

そして何気なく2005年度のチューリング賞受賞者ピーター・ナウアー氏(Peter Naur)のプロファイルを読んでいたら……。

For fundamental contributions to programming language design and the definition of Algol 60, to compiler design, and to the art and practice of computer programming.

ALGOL(アルゴル、ALGOrithmic Language)の開発者の人だった。実は僕、バローズ社(Burroughs、今は Unisys)のコンピューターをいじくっていたことがあって、Algol で「symbol を compile」して遊んだ。懐かしい。

Software Pioneer Peter Naur Wins ACM's Turing Award [SYS-CON]

Dr. Naur was editor in 1960 of the hugely influential "Report on the Algorithmic Language Algol 60." He is recognized for the report's elegance, uniformity and coherence, and credited as an important contributor to the language's power and simplicity. The report made pioneering use of what later became known as Backus-Naur Form (BNF) to define the syntax of programs. BNF is now the standard way to define a computer language. Naur is also cited for his contribution to compiler design and to the art and practice of computer programming.


"Dr. Naur's ALGOL 60 embodied the notion of elegant simplicity for algorithmic expression," said Justin Rattner, Intel senior fellow and Chief Technology Officer. "Over the years, programming languages have become bloated with features and functions that have made them more difficult to learn and less effective. This award should encourage future language designers who are addressing today's biggest programming challenges, such as general-purpose, multi-threaded computation, to achieve that same level of elegance and simplicity that was the hallmark of ALGOL 60."

そう、昔から、「エレガントな」コンピューター言語って言われていたな。


[ALGOL 関連]

ALGOL 60 は、手続き型言語として初めて再帰呼び出しが可能なプログラミング言語である。また、PL/IPascalC言語等、後の言語開発に大きな影響があったとされるが、現在では、ほとんど利用されていない。パラメータ引渡しで特徴的な「名前渡し」もその後の言語では見られない。

procedure Absmax(a) Size:(n, m) Result:(y) Subscripts:(i, k);
    value n, m; array a; integer n, m, i, k; real y;
comment The absolute greatest element of the matrix a, of size n by m 
is transferred to y, and the subscripts of this element to i and k;
begin integer p, q;
    y := 0; i := k := 1;
    for p:=1 step 1 until n do
    for q:=1 step 1 until m do
        if abs(a[p, q]) > y then
            begin y := abs(a[p, q]);
            i := p; k := q
            end
end Absmax

[Revised Report on the Algorithmic Language Algol 60 (Edited by Peter Naur)]


チューリング賞」に関して、1966年から1985年までの20年間の受賞記念講演22編を収録した『ACMチューリング賞講演集』(赤摂也 訳、共立出版)という本が出ているが、現在品切れのようだ。古本屋か図書館で探そう。

ACMチューリング賞講演集

ACMチューリング賞講演集

Acm Turning Award Lectures: The First Twenty Years : 1966 to 1985 (Acm Press Anthology Series)

Acm Turning Award Lectures: The First Twenty Years : 1966 to 1985 (Acm Press Anthology Series)