install | tutorial | forum

This site is about Arc, a new dialect of Lisp.

Arc is designed for exploratory programming: the kind where you decide what to write by writing it. A good medium for exploratory programming is one that makes programs brief and malleable, so that's what we've aimed for. This is a medium for sketching software.

Arc is unfinished. It's missing things you'd need to solve some types of problems. But it works well for basic web apps.

The first priority right now is the core language. We're trying to continue McCarthy's axiomatic approach all the way up to a complete language for day to day programming.

To the extent we can influence whatever customs are associated with Arc, we'd like to propose three principles.

Number one, expect change. Arc is still fluid and future releases are guaranteed to break all your code. It was mainly to aid the evolution of the language that we even released it.

Second, we'd like to encourage a sense of community among Arc users. If you have a question or a suggestion, share it with everyone in the forum. And if you know the answer to a question you see in the forum, help out whoever posted it by replying.

And finally: It's not a coincidence that we wrote a language for exploratory programming rather than the sort where an army of programmers builds a big, bureaucratic piece of software for a big, bureaucratic organization. Exploratory programming is the fun end of programming, and we hope that will be the guiding principle of the Arc community.

Paul Graham
Robert Morris