Re: what ML language do you recommend?
- From: Zoltan Somogyi <zs@xxxxxxxxxxxxxxxxxxxx>
- Date: Fri, 19 Aug 2005 10:31:18 GMT
Paul Rubin <http://phr.cx@xxxxxxxxxxxxxx> writes:
>Why does concurrency or run-time code change need dynamic types? I
>don't see why concurrency needs it at all.
You want to be able to send and receive large data structures to other
processes without specifying serialization, both for simplicity and because
you want the transmission to be just a pointer copy operation if the two
processes are on the same machine and both have access to the memory.
Doing this when you don't know whether the other process has the same
idea of the type of the data being sent (since it may be using an earlier
or later version of the protocol) requires dynamic types.
With the Erlang approach, communication is still possible between processes
that have different ideas of the type of the data being sent. Of course,
the data may actually contains parts that the receiver doesn't understand.
I expect that in many domains, this should not happen often: data type
extensions tend to be for new features, and features are probably not used
frequently when they are new. If it does happen, an Erlang program is
expected to recover from it the same way it recovers from a hardware fault.
There are probably ways to get similar convenience in a statically typed
language, but I don't know of any fully worked out proposal. Most people
who started looking into this found it to be quite a hard problem. And I
speak as an advocate of static type systems.
Ulf: thanks for the reference to Dialyzer, I will read the papers on it
tonight. When did you guys start using it?
Zoltan Somogyi <zs@xxxxxxxxxxx> http://www.cs.mu.oz.au/~zs/
Department of Computer Science and Software Engineering, Univ. of Melbourne
.
- Follow-Ups:
- Re: what ML language do you recommend?
- From: Andreas Rossberg
- Re: what ML language do you recommend?
- From: Marcin 'Qrczak' Kowalczyk
- Re: what ML language do you recommend?
- From: Paul Rubin
- Re: what ML language do you recommend?
- References:
- what ML language do you recommend?
- From: stijn
- Re: what ML language do you recommend?
- From: Torben Ægidius Mogensen
- Re: what ML language do you recommend?
- From: Jon Harrop
- Re: what ML language do you recommend?
- From: Paul Rubin
- Re: what ML language do you recommend?
- From: stijn
- Re: what ML language do you recommend?
- From: Ulf Wiger
- Re: what ML language do you recommend?
- From: Paul Rubin
- Re: what ML language do you recommend?
- From: Matthias Kretschmer
- Re: what ML language do you recommend?
- From: Jon Harrop
- Re: what ML language do you recommend?
- From: Ulf Wiger
- Re: what ML language do you recommend?
- From: Paul Rubin
- what ML language do you recommend?
- Prev by Date: Re: what ML language do you recommend?
- Next by Date: Re: what ML language do you recommend?
- Previous by thread: Re: what ML language do you recommend?
- Next by thread: Re: what ML language do you recommend?
- Index(es):
Relevant Pages
|