Early history of Fortran

A very rich site devoted to tracking down the source code for the original Fortran compiler:

My name is Paul McJones. I hope to use this weblog to discuss software history among other topics. For several months I’ve been studying the early history of Fortran, and trying to track down the source code for the original Fortran compiler. Although I just set up this weblog recently (June-July 2004), I’ve created back-dated entries to document my quest in chronological order

It seems most items recently are about programming language history... This site describes an interesting quest, which makes me wonder if the evolution of more recent languages will be easier to document, given the Internet and so forth. It would be rather amusing if LtU will once be used as an historical resource ;-)

The idea of preserving classic software is a good one. I think programming languages (and programming technology in general) are very good indecators of the state of the art and the major issues of the day (e.g., Java and the Net), so building a timelime by considering PLs sounds like a good idea.

We should also keep in mind that John Backus of FP fame was famous even before that for his work on compilers, and was involved with the Fortran team at IBM.

Functional Objects

Functional Objects. Matthias Felleisen. ECOOP 2004. slides (pdf).

In my talk, I will compare and contrast the two ideas of programming and programming language design. I will present and defend the thesis that good object-oriented programming heavily "borrows" from functional programming and that the future of object-oriented programming is to study functional programming and language design even more.

Not all that much that is new for LtU readers, but a nice overview none the less. Includes some details about the PLT Scheme approach to modules and objects.

Retrospective: The Essence of Compiling with Continuations


From 20 years of the ACM SIGPLAN Conference on Programming Language Design and Implementation: 1979 - 1999. A Selection.

A one page retrospective of this highly important paper. Useful as a guide to the literature and related research.

ILC2002 Proceedings and Videos

The proceedings of the International Lisp Conference 2002 are now freely available for download here. A selection of video-recorded talks are also downloadable (currently the Robocup ones). ILC2002 was previously covered on LtU in a great report from Oleg.

An interactive historical roster of computer languages

A very interesting site dedicated to the history of programming languages.

The navigation is a bit clunky, and I am still not sure I understand all the features of the site, but the database is impressive (use the "search" button on the right hand side of the window to open the search frame).

The site includes amusing statistics (e.g., which decade produced the most programming languages?)

It would be interesting to see what LtU readers think about the taxonomy used here. It's quite fine-grained.

Open-sourcing Java

Should Sun open-source Java? "The Big Question" keynote debate at JavaOne in San Francisco was devoted to this question.

Now, I don't really know what open-sourcing a language means, but this is obviously an important question...

The Java language specification and the JVM spec are both public. The Sun JVM isn't open source, but there are many other Java VMs out there.

The community process is controlled by Sun, but then again some process must exist if you want the language to remain cohesive, and someone or some group will have to control this process.

So it seems that this is ultimately about community dynamics. Languages create communities. Communities shape the way languages evolve.


LtU friends are readers who have us on their blogrolls are encouraged to change the URL to point to our new location.


We are not the only ones doing it...

The Secure Coding mailing list is having field day arguing about Marcus Ranum's ACM Queue article, Security: The root of the problem.

Normally, I wouldn't link to this thread since it isn't specifically about programming languages.

However, programming languages are being mentioned, and static analysis tools discussed (esp. SPARK). Moreover, I think the dynamics of the debate are quite similar to the dynamics of the ongoing (and eternal) debate in the discussion group regarding static typing. Perhaps, seeing this sort of quicksand action hapenning in a different context can help us learn how to focus PL-related debates and make them more productive.

Note: I am not trying to rain on anyone's parade. In fact, I think LtU is better than most other forums when it comes to this kind of debate. But non-productive debates on these issues are a common problem in PL discussions.

XsRQL (and other RQLs)

The RDF Data Access Working Group is busy doing a survey of query languages and access techniques that have been used with RDF. Many resemble SQL in syntax, despite operating on a graph. Amongst the WG's Design Evaluations Links there's a recent submission of a different style from Howard Katz : XQuery-style RDF Query Language (XsRQL), which actually looks very procedural (like XQuery).

Types in CMUCL

CMU Common Lisp's compiler, known as Python, has a sophisticated implementation of Common Lisp's powerful type system. The system primarily enforces type safety at runtime, but it also performs static type inference. The static type information is used to detect type errors, eliminate unnecessary runtime type checks, and select efficient primitive code (e.g. avoid excessively generic arithmetic).

CMUCL's history stretches back around twenty years, though I believe the compiler was rewritten "just" 15 odd years ago. The system is still widely used, notably by ITA software as publicised by Paul Graham.