[bitc-dev] Representation and memory model

Jonathan S. Shapiro shap at eros-os.org
Wed Aug 31 15:02:38 EDT 2005


On Wed, 2005-08-31 at 14:24 -0400, Mark Miller wrote:
> Jonathan S. Shapiro wrote:
> > On Thu, 2005-09-01 at 00:57 +0700, Constantine Plotnikov wrote:
> > [...] it is possible to write multithreaded programs 
> >>using [C]. [...]
> > 
> > It is true that people write these things in C. It is also true that
> > these codes rely on behavior that is NOT part of the language
> > specification. Each platform makes platform-specific extensions to
> > compiler and runtime to support this.
> 
> Yes. See Hans Boehm's "Threads Cannot be Implemented as a Library"
> <http://www.hpl.hp.com/techreports/2004/HPL-2004-209.html>.

Can you expand on this? Which direction is your point supporting?

> > We rejected direct support for concurrency in BitC for two reasons:
> > 
> > 1. We have never seen a language concurrency model that we think was
> > "done right."
> 
> Ahem, cough cough, ah, over here, [gesticulates wildly while pointing], ...

Respectfully, in my opinion, no. "E the system" has a concurrency model
that I think is done right for many purposes (though I am skeptical
about its relevance in something like a kernel).

This is so precisely because "E the language" explicitly excludes any
concurrency at all from the specification -- the goal being
deterministic execution.

What am I missing here?

shap



More information about the bitc-dev mailing list