Peter Naur Wins 2005 Turing Award
An anonymous reader writes "The Association for Computing Machinery (ACM) has named Peter Naur the winner of the 2005 A.M. Turing Award. The award is for Dr. Naur's fundamental contributions to programming language design and the definition of Algol 60, to compiler design, and to the art and practice of computer programming. The Turing Award is considered to be the Nobel Prize of computing, and a well-deserved recognition of Dr. Naur's pioneering contributions to the field."
The designer of Algol-60 is only getting this recognition in 2006? What?
-jcr
The only title of honor that a tyrant can grant is "Enemy of the State."
I didn't think humans could win this award.
Religion for nerds. Stuff that really matters
Peter Naur is an interesting character. For example, he dislikes the term "Computer Science", and prefers "Datalogy". He also gives Backus the whole credit for inventing BNF, which he calls the Backus Normal Form. I'm sure he has a better name for Algol-60...
BNF originally stood for "Backus Normal Form", and the name Backus Naur Form was introduced by Donald Knuth:
@article{365140,
author = {Donald E. Knuth},
title = {Backus Normal Form vs. Backus Naur form},
journal = {Commun. ACM},
volume = {7},
number = {12},
year = {1964},
issn = {0001-0782},
pages = {735--736},
doi = {http://doi.acm.org/10.1145/355588.365140},
publisher = {ACM Press},
address = {New York, NY, USA},
}
Georg
1. The Report on the language used a formal syntax specification, one of the first, if not the first, to do so. Semantics were specfied with prose, however.
2. There was a distinction between the publication language and the implementation language (those probably aren't the right terms). Among other things, it got around differences such as whether to use decimal points or commas in numeric constants.
3. Designed by a committee, rather than a private company or government agency.
4. Archetype of the so-called "Algol-like languages," examples of which are (were?) Pascal, PL./I, Algol68, Ada, C, and Java. (The term Algol-like languages is hardly used any more, since we have few examples of contemporary non-Algol-like languages.)
However, as someone who actually programmed in it (on a Univac 1108 in 1972 or 1973), I can say that Algol60 was extremely difficult to use for anything real, since it lacked string processing, data structures, adequate control flow constructs, and separate compilation. (Or so I recall... it's been a while since I've read the Report.)
According to the Hitchhikers Guide to the Galaxy this will be hard, if you are a Computer Scientist:
(copied from http://www.h2g2.com/ )
Dave? Are you there Dave?
A test for artificial intelligence suggested by the mathematician and computer scientist Alan Turing. The gist of it is that a computer can be considered intelligent when it can hold a sustained conversation with a computer scientist without him being able to distinguish that he is talking with a computer rather than a human being.
Some critics suggest this is unreasonably difficult since most human beings are incapable of holding a sustained conversation with a computer scientist.
After a moments thought they usually add that most computer scientists aren't capable of distinguishing humans from computers anyway.
Georg
Amazing how many programming languages were actually invented by Danish computer scientists. Peter Naur (ALGOL), Bjarne Stroustrup (C++), Anders Hejlsberg (C#), and Mads Tofte contributed a good deal to SML.
Georg
It isn't the idea of a language thats the problem, the idea that language matters is the problem. Any problem can be solved in any Turing complete language. There's little to no difference between them. You're not going to write code an order of magnitude faaster because you change language. Short of having an API class you can leverage in one language and not the other, you'll be hard put to program faster by a factor of 10%, if you know the syntax of both languages equally well.
The real problem is code reuse. 95% of what we do on a daily basis is to reinvent features available elsewhere. What we need are well designed, easy to use libraries that we can leverage and have most of the work done for us. Closed source programs are killing us, as we can't leverage off each other. Its like going back to the days of Newton and Liebnitz and requiring all mathematicians to prove the same ideas without reference to one another's work before moving on. Its ridiculous, and its the reason for our problems.
I still have more fans than freaks. WTF is wrong with you people?
Build a macro or some kind of simple code to check FOR you!
I did one in LISP; I'm still trying to find an unmatched (.
The surprise isn't how often we make bad choices; the surprise is how seldom they defeat us.
I disagree- arrays and structs are made by quick macros, even in assembly. Think of it like an accessor function. It takes a small time up front to write- not a significant effort. I'm about 90% of the speed writing in asm than I am in C++.
Garbage collection is a whole other rant- thats a complete strawman. Memory management takes a minor amount of time (almost 0), and making sure you properly null out dangling references in Java takes about as much. I find the problem to be totally different- there's a subset of programmers who just don't understand memory management. These people suck as programmers- everything you do in programming is resource management. Memory- alloc, use, free. Files- open, use, close. Networking- connect,use,close. Having people who don't understand that pattern on your team causes work to slow down by large amounts because of their incompetnece, not because of the language.
I still have more fans than freaks. WTF is wrong with you people?
The original Apple logo: http://203.151.217.14/databases/d0002/images/logo1 .jpg
"It's time to take life by the cans." ~ Bender ("Bendin' in the Wind", ep. 3-13)
Naur himself denies having invented BNF together with Backus. According to himself, it is the Backus Normal Form. Other people put his name in it.