[erlang-questions] Erlang 3000?

Richard O'Keefe ok@REDACTED
Tue Nov 18 22:48:14 CET 2008


On 18 Nov 2008, at 1:50 pm, Vance Shipley wrote:
> The namespace packages.  I recall seeing the libraries stuffed
> into packages to group things like maybe erlang.bif:link/1.

There are several reasons why I don't want anything like that to
happen.

First, we do not yet have a reasonable package system to
put things into.  We have a rather pointless and confusing
'flat namespace with dots in it' scheme, but it has problems
and limitations which have been gone over in the mailing list
several times.

Second, be careful what you wish for.  You might get it!
I'm reminded of Piet Hein's
THE OPPOSITE VIEW
For many system shoppers it's
   a good-for-nothing system
that classifies as opposites
   stupidity and wisdom

because by logic-choppers it's
   accepted with avidity:
stupidity's true opposite's
   the opposite stupidity.
"The opposite stupidity" to a completely packageless system
is something like the current Haskell libraries, with their
hierarchical name spaces.  A single conceptual unit in Haskell
is these days typically broken down into three or four modules
and you see stuff like this (taken from real Haskell code):
import qualified Data.ByteString as BS
import qualified Data.ByteString.Internal as BS
import qualified Data.ByteString.Unsafe as BS
These days I am seeing Haskell code with huge long lists
of imports that could have been shorter if the fashion
hadn't been for vast numbers of micro-packages.
Of course developing some feature as a cluster of modules
makes a great deal of sense, but clients should only have
to deal with a single façade module if at all possible.
In this case, breaking up the 'erlang' module appears to
offer clients no advantages.


More information about the erlang-questions mailing list