Post by Joe Armstrong of Erlang fame. Leader:

Why do we need modules at all? This is a brain-dump-stream-of-consciousness-thing. I've been thinking about this for a while. I'm proposing a slightly different way of programming here. The basic idea is:

do away with modules

all functions have unique distinct names

all functions have (lots of) meta data

all functions go into a global (searchable) Key-value database

we need letrec

contribution to open source can be as simple as contributing a single function

there are no "open source projects" - only "the open source Key-Value database of all functions"

Content is peer reviewed

Why does Erlang have modules? There's a good an bad side to modules. Good: Provides a unit of compilation, a unit of code distribution. unit of code replacement. Bad: It's very difficult to decide which module to put an individual function in. Break encapsulation (see later).