General

Jon Udell: Languages and environments

Languages and environments have always been fellow travelers. At some point they'll begin to part ways. Domain-specific languages will continue to flourish; they're the future of programming. But they'll target fewer environments.

It's easier to learn languages than to learn environments. So while these things have tended to proliferate in pairs -- each language carrying around its own environment, like a turtle with its shell -- my argument is that over time the environments will tend to consolidate.

Jon offers a couple of entertaining examples, but the fundamental point is worth thinking about.

Until quite recently the general view was the exact opposite of what Jon is arguing: languages, it was argued, are going to be consolidated. Remember Java as the cure all solution to software?

The proliferation of programming languages, domain specific and otherwise, isn't news for LtU readers. It is a good sign to see it mentioned on Infoworld.

Will Wright Presents Spore... and a New Way to Think About Games

So here's what he did: he recruited an elite strike team of coders (who, if you were to believe his slideshow, dressed like ninjas) and put them in a "hidden facility" to experiment with new ways of giving the user powerful tools and generating tons of dynamic content without armies of content creators.

From time to time it's good to remember that we live in The Age of Programmability.

To all employers out there: It is us, who know most about programmability and programming models. If you don't want to stay behind, hire programming language mavens...

Fortress focuses on the needs of scientists

(via Lemonodor)

Guy Steele leads a small team of researchers in Burlington, Massachusetts, who are taking on an enormous challenge -- create a programming language better than Java... Think of it as Java for scientists, Java for the programmers of a peta-scale supercomputer.

You just have to love this quote from Steele: I'm now not convinced that a single programming language can serve everyone's needs, because the needs are so diverse. Well, duh...

But obviously Steele knew this long ago. Anyway, Fortress seems to be concerned with notation ("with square root signs and exponents placed above the line"), in the hope that that's going to be enough to lure Fortran programmers. Time will tell.

Interview with Adam Dunkels

(via Keith)

This interview describes some hacks that may interest you guys. Among them a ultra-simple threading library for C and interesting stuff concerning sensor networks.

Language Luminaries Meet in Europe on April 6

via Wadler, via Josef Svenningsson

Language design luminaries Xavier Leroy, Simon Peyton Jones, Benjamin Pierce, and Philip Wadler plan a mini-conference to discuss a possible new language effort.

Attend their April 6, 2005 LINKS meeting at ETAPS in Edinburgh to participate. Schedule details say, "There is no requirement to register for ETAPS to attend Links."

I hope the confab attracts some Alice ML people.

ACM Queue: A Conversation with Alan Kay

A few choice quotes from this interview:

So I think the lack of a real computer science today, and the lack of real software engineering today, is partly due to this pop culture.

Yes, that was the big revelation to me when I was in graduate school—when I finally understood that the half page of code on the bottom of page 13 of the Lisp 1.5 manual was Lisp in itself. These were “Maxwell’s Equations of Software!”

I fear — as far as I can tell — that most undergraduate degrees in computer science these days are basically Java vocational training.

Even if you’re designing for professional programmers, in the end your programming language is basically a user-interface design. You will get much better results regardless of what you’re trying to do if you think of it as a user-interface design.

Perl6 vs Java vs Python, or, Java sucks! and the NIH Fallacy

I recently wrote a book that deals with doing things (using features and ideas) in Perl invented and popularized by other languages. People react to that statement in fascinating ways - "what? Why would you want to do something in Perl that another language does? Perl is better so using things from Java and Python is pointless" they say.

I'm going to show first why quoted (paragraphased, actually) statement is dumb and then secondarily why it's a fallacy.

Yes, arguments of this sort still go on.

Workshop on Scripting for the Semantic Web

"SFSW" - focussing on languages such as Python, PHP, Perl, Ruby, JavaScript, ASP, JSP, ActionScript and ColdFusion. May 30, 2005, Heraklion, Greece. Co-located with 2nd European Semantic Web Conference (ESWC2005). Call for Papers (PDF).

PS. A Developers Guide to Semantic Web Toolkits for different Programming Languages has now been posted, with feature matrices of toolkits for: C, Haskell, Java, JavaScript, Lisp, .Net/Mono, Perl, PHP, Prolog, Python, Ruby.

CTM wiki

Dominic's CTM wiki deserves more attention than it seems to be getting.

The wiki doesn't have much content at the moment, but you guys can help fix that!

More textbooks should have wikis. It's a great way to enhance the reading experience. Don't you think so?

OpenSpice

OpenSpice is an openly available specification of the Spice language - a modern programming language with some nice XML processing features. It is designed with the needs of part-time or occasional programmers in mind. The language features are properly separated and their corner cases have been eliminated. This design means that if you only use Spice occasionally, you're likely to find it easy to come back to despite the breaks.

The most similar well-known language is probably Common LISP together with CLOS. But Spice has a rich Algol-like external syntax, an XML transport form, and makes multiple values a key feature. The way Spice deals with multiple values is, we think, the feature that will strike most programmers as special.

I am not sure how interesting this really is, but the language seems to have some amusing features that you may want to explore.

XML feed