General

Technometria: AJAX Progress and Challenges

Phil Windley interviews Ben Galbraith, Bruce Grant, and Scott C. Lemon.

This is an audio show, around an hour in length, and since the topic isn't directly programming language related, I was not sure if I should post the link here. Still, we have been fairly quiet recently, and this show suggests some project ideas that may interest language hackers, so you might want to listen in.

Among the ideas I spotted are: JIT for Javascript, better debugging support for Javascript (possibly via an open standard for getting debug information from the javascript engine) and better ways to handle failure in web services orchestration.

This is related to previous discussions of what might be called the Web 2.0 programming model. See, for example, the discussion of the Google Web Toolkit, my suggestions about a google DSL here , Microsoft Atlas, and the various discussions about Ruby on Rails.

A brief survey of quantum programming languages

Peter Selinger. A brief survey of quantum programming languages.
In Proceedings of the 7th International Symposium on Functional and Logic Programming, Nara, Japan. Springer LNCS 2998, pp. 1-6, 2004.

A brief but useful survey of quantum programming languages (six pages), that I think wasn't mentioned here before.

Section 2.1 describes the common target hardware models (the quantum circuit model, QRAM, and quantum Turing Machines).

Section 2.2 is about imperative quantum languages (e.g., QCL), and section 2.3 discusses functional quantum languages.

CLPython - an implementation of Python in Common Lisp

CLPython is an implementation of the Python programming language in Common Lisp. It is developed by Willem Broekema with support from Franz Inc. CLPython is released under the LLGPL.

You might enjoy browsing the source code.

R6RS Status Report

New status report on the R6RS effort (also available as PDF).

Previous LtU discussion (March 2006).

PLT web server used in "real life"

This is, to our knowledge, the first large site to run the PLT Scheme web server continuously for any length of time. Over the next few days we'll provide a few more details about the more intricate parts of our setup so other intrepid pioneers can learn from our work.

It's always good to hear of success stories of non-mainstream languages (well, non-mainstream outside LtU that is), so this project is worth keeping an eye on. Maybe Noel will be able to provide more technical details at some point.

What is the Meaning of These Constant Interruptions?

Graham Hutton and Joel Wright discuss the semantics of interrupts.

Interrupts are important for writing robust, modular programs, but are traditionally viewed as being difficult from a semantic perspective. In this article we present a simple, formally justified, semantics for interrupts.
Although I didn't get into the details of the article (though it will probably interest the more astute LtU readers), what got me interested in the article was the correlation drawn between exceptions and interrupts:
An important concern in modern programming is exceptions, events that cause computations to terminate in non-standard ways. There are two basic kinds of exceptions: those that arise from inside a computation itself, such as a division by zero, and those that arise from outside a computation, such as a timeout. The former are termed synchronous exceptions, because they can only arise at specific points; for example, division by zero can only occur when performing a division. Dually, the latter are termed asynchronous exceptions, because they can potentially arise at any point; for example, a timeout can normally be received at any time. For simplicity, however, we follow the common practice of referring to synchronous exceptions as exceptions, and to asynchronous exceptions as interrupts.
I can't help but think this is related to resumable exceptions that was discussed in the LtU discussion of Common Lisp Exception Handling and Oleg's subsequent implementation in OCaml. That is, aren't interrupts basically a form of asynchronous exceptions that require a resumption mechanism?

Scheme2Js

Scheme2Js is a Scheme to Javascript compiler distributed under the GPL license. While some effort has been spent on being as close as possible to R5rs, we concentrated mainly on efficiency. Usually Scheme2Js produces Javascript code, that is comparable to hand-written code. In order to achieve this performance, Scheme2Js is not completely R5rs compliant. In particular it lacks support for continuations, exact numbers and it treats tail recursion only partially.

I think Scheme2Js was mentioned in the forum, but I think it might be of more general interest.

A nice touch is that Scheme code can use JavaScript variables and functions, and JavaScript code can use Scheme variables and functions (perhaps not as cool as the Javadot notation of JScheme, but mighty useful anyway).

Scheme2Js is used in HOP.

The Semicolon Wars

The Semicolon Wars
Brian Hayes

A laypeople's introduction to the world of programming languages from American Scientist. Includes some history, a high-level overview of different programming paradigms, some guesses at which differences make a difference, some Dijkstra, and some cheap shots at zealots.

Regular LtU readers won't find anything new here, but it's a good article, and it's always nice to see something like this for the general reading public.

IFIP WG 2.2 Anniversary Meeting

It looks like this is going to be an interesting meeting.

The list of speakers is impressive, of course. Alas, not too many presentation titles are available at the moment.

Technical Work on Ada 2005 Standard Completed

From the press release:

The first of the three steps of the ISO standardization process has been successfully completed. The Working Group in charge of the technical details of the standard, named WG 9 and headed by the convener Mr. James Moore, unanimously approved the Ada 2005 standard on May 1st, 2006.

The press release includes a brief summary of the new features in the new version of the Ada language. Some of these features were mentioned here before.

XML feed