Concurrency support?

Lars T Hansen lth at opera.com
Mon Jun 26 07:22:04 PDT 2006


Nicolas Cannasse writes:
 > > It's not obvious that this has huge implications for the standard
 > > libraries in ECMAScript as they stand, but this type of problem will
 > > tend to make libraries more brittle in general.
 > > 
 > > The point I want to make is that we probably do not want to provide
 > > full continuations as an abstraction on which to build threads,
 > > coroutines, generators, exceptions, and so on, but instead to provide
 > > these other more controllable forms directly instead.
 > 
 > I agree that call/cc is not for the average user, and should be used
 > with the appropriate care. However, while it's important to provide the
 > different call/cc traditional usages (which you listed), it's also
 > important to provide the low-level call/cc access for users that want to
 > use it.
 >
 > There's been a lot of creativity in the past years about the way of
 > using continuations. I think we can except new paradigms in the future
 > as well. As a compiler writer, I prefer to be able to directly use
 > call/cc in the generated code and libraries instead of rewrapping and
 > sometimes abusing the standard ES4 library.

I don't think that being a compiler target is among the core use cases
for ECMAScript 4.  (Nor do I think it should be.)  I also don't think
that a pragmatic programming language like ECMAScript should follow
Scheme, say, in providing a minimalist and powerful core on which a
great variation of abstractions can be written by the initiated. 
Instead I think ECMAScript needs to be a rich language with features
that are immediately useful to its core audiences, and which play well
with each other in the sense that they have unsurprising consequences
when composed.

--lars




More information about the Es4-discuss mailing list