[Haskell-cafe] Erlang's module discussion
alex.kropivny at gmail.com
Sat May 28 11:12:42 CEST 2011
Regardless of how crazy it sounds, an idea from Joe Armstrong is worth
seriously thinking over.
This has bugged me before: think about how we design and write code as
project size, or programmer skill grows. You start with composing statements
inside a single function; later, you start to compose functions inside a
single file; later you move on to composing modules; subsystems; systems...
Different techniques, doing the same thing in different ways, depending on
the level of complexity. Surely there's some unified approach that can
replace them all?
Erlang has the advantage of functions being the basic, composeable building
block. Packages and modules are merely means to organize them, and mediocre
means at that, so a better system is definitely a possibility. Haskell has
the complication of having type definitions in addition to functions.
On Sat, May 28, 2011 at 1:09 AM, Dmitry Vyal <akamaus at gmail.com> wrote:
> On 28.05.2011 07:10, Tom Murphy wrote:
>> Hi All,
>> I sure love Hackage, but there's a very interesting discussion
>> going on, on the Erlang mailing list, about completely restructuring
>> the module-model.
>> Before you dismiss it as crazy, know that the topic was brought
>> up by Joe Armstrong, one of the creators of the language.
>> Here's the archive:
>> Food for thought...
> Hi Tom,
> sounds interesting! But seems to me this will raise current package
> dependencies problems on a new level. Now one sees modules and packages as
> some kind of aggregates, black boxes which supply useful functionality and
> hide non relevant complexity and tight dependencies.
> Moving to functions all the way down looks to me like a lowering level of
> abstraction. The meta information about the overall program structure would
> inevitably be lost.
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
-------------- next part --------------
An HTML attachment was scrubbed...
More information about the Haskell-Cafe