Paul Graham's invited talk at ILC 2003

Some Work on Arc

Hope this hasn't been posted yet.

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

It's funny...

Reading his design rationale in this talk, one might guess that he'd really like Haskell... Everything's built on a clean, minimal core, the restrictions on the programmer are only those that are "logically necessitated" by the axioms of the language, and so on. Obviously there are things he wants that are missing from Haskell, and it doesn't really seem to match his overall language aesthetic, but still...

Language aesthetic

The other thing it made me think of was Mozart/Oz - again, the focus on a minimal core.

Two things I'm curious about are how the macros will be implemented (especially if they are "first class"), and what kinds of constructs the tagging/typing will support (will it be possible to build more sophisticated type regimes out of these primitives?). I suspect that both of these will prove controversial; I know that Graham's enthusiasm for macros as a general-purpose metaprogramming/language extension mechanism is not universally shared.

I'm looking forward to seeing more of Arc - as a set of language design choices, it will perhaps stand in the same relation to Graham's wider range of opinions as the personal canon of worthwhile poems Ezra Pound insisted every critic should provide as a prerequisite for meaningful discussion. Cards on the table time...

Yeah, regarding "I can’t im

Yeah, regarding "I can’t imagine why users would want to have type labels other than symbols", I suppose that one might possibly want to tag a representation with its type itself instead of its label (to be precise: not with the type, but with a more elaborate type representation than just a label, for instance something akin to a metaclass).

types that aren't symbols

One reason to have type labels that aren't symbols is to ensure that a type label is unique. (If you call cons you're guaranteed to get a fresh cell.) Another is to attach some kind of descriptive information. As I said, I'm not sure you'd ever want to do either, but my possibilities detector detects something there...


One thing I like about the Lisp world is that people use Ezra Pound in examples. I sometimes think it would be a shame to make Lisp more popular...

Alfred Jarry

of course the brainfuck programming language is a wonderful application of the aesthetic ideals of Alfred Jarry.


Are you quite sure that all those bells and whistles, all those wonderful facilities of your so called powerful programming languages, belong to the solution set rather than the problem set?


Lisa Simpson, the answer to a question nobody asked.

(Larry Wall Ned Flanders)

beauty is so rare a thing...

Beauty is so rare a thing.
So few drink of my fountain.