[erlang-questions] Erlang 3000?

damien morton <>
Sun Nov 16 13:57:56 CET 2008


On Sun, Nov 16, 2008 at 11:33 PM, Zvi <> wrote:

>
> This is the fastest way to start prototyping new stdlib, for the begining I
> propose to use new module names (i.e. for example  gc_set instead set,
> gc_dict, instead dict , etc., where "gc_" perfix mean gen_collection), i.e.
> to not interfere with legacy code.
>
> I have 2 ideas here:
>
> 1. Maybe there is a reason from the beginning to have 2 collection
> behaviours, like in Python:
>  a. gen_mapping (for dict, ets, dets, i.e. any key=>[value] mapping, maybe
> even funs)
>  b. gen_sequence (for list, tuple, array, set, ordset, etc.). In some
> languages you may use index as a key - so maybe everything can be
> gen_mapping?


I think that what defines sequence is an iterator protocol rather than
indexing.

sequence module could then be a behavior AND a set of functions for
operating on iterators (map, fold, ets)



>
>
> 2. Use parametrized types, to specify ADT implementation details /
> policies.
> For example in case of distributed/SMP map/fold , using something as plists
> "malt" (i.e. how to split tasks between cores/nodes or just use sequential
> code - this is just example).


Are parametrized types ready for prime-time? Like records,
they aren't exactly first-class members of the language, and reading
Richards paper on them, he has some concerns about performance.


>
>
> Zvi
>
>
> Damien Morton-2 wrote:
> >
> > Can a module have multiple behaviours applied to it? What happens with
> > conflicts, can one function satisfy two or more behaviour requirements?
> >
>
> I don't know
> --
> View this message in context:
> http://www.nabble.com/Erlang-3000--tp20518620p20524858.html
> Sent from the Erlang Questions mailing list archive at Nabble.com.
>
> _______________________________________________
> erlang-questions mailing list
> 
> http://www.erlang.org/mailman/listinfo/erlang-questions
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://erlang.org/pipermail/erlang-questions/attachments/20081116/d1d0dfb9/attachment.html>


More information about the erlang-questions mailing list