[Mono-devel-list] Re: Re: Dynamically changing classes?
Piers Haken
piersh at friskit.com
Sat Sep 27 15:09:52 EDT 2003
Aren't continuations just delegates invoked as a tail-call?
Piers.
> -----Original Message-----
> From: Paolo Molaro [mailto:lupus at ximian.com]
> Sent: Saturday, September 27, 2003 6:25 AM
> To: mono-devel-list at lists.ximian.com
> Subject: Re: [Mono-devel-list] Re: Re: Dynamically changing classes?
>
>
> On 09/26/03 Rodrigo B. de Oliveira wrote:
> > I can understand all the motivations behind a static and
> simpler type
> > system. But don't you think there are features best
> implemented by the
> > runtime? Coroutines and
> > continuations, for instance?
>
> The runtime already supports coroutines out of the box. You
> can try them out in C# code by using mcs with the -v2 option
> (google for iterators and you'll find examples and more
> information). Continuations are more tricky:-), but it's not
> enough to ask: let's add continuations to the ECMA spec. A
> lot of research is needed even before considering how to
> support continuations in the CLR. You need to take scheme,
> smalltalk, ruby and whatnot people in a room and have them
> come up with a possible implementation strategy that works
> for all of them. There are several ways to implement
> continuations, each with their own tradeoffs. Some of those
> langauges fovour call speed over continuation speed, for
> example and it's hard to have a workable continuation
> implementation that achieves both. Then, once the people
> agree on a common solution, we can discuss how to implement
> it in the CLR/mono. From my point of view, there is basically
> one constraint: the features of a language should not screwup
> other languages that don't use it. This means that
> continuations, for example, won't work across code that is
> not continuation-aware, because that would mean a slowdown of
> common code, but I don't think this is a big limitation,
> afterall, it's not something that was possible before anyway.
>
> Executive summary: efficient continuations support may need
> changes in the runtime: nobody presented a proposal for
> discussion, though. We can help people implement a proposal
> in the mono runtime and help design it in a way that fits the
> CLR view of the world, but people interested in the feature
> should do something more that say "we want continuations
> support directly in the CLR". What new opcodes/prefixes would
> be necessary? What custom attributes or icalls? What new
> constructs? Are the needs of all/most of the languages that
> use continuations covered? The CLR is open to innovation (see
> generics) and more so is mono (fast free software runtime):
> what is missing is a proposal for the changes that works as a
> common runtime feature and is implementable.
>
> lupus
>
> --
> -----------------------------------------------------------------
> lupus at debian.org debian/rules
> lupus at ximian.com Monkeys do it better
> _______________________________________________
> Mono-devel-list mailing list
> Mono-devel-list at lists.ximian.com
> http://lists.ximian.com/mailman/listinfo/mono-devel-> list
>
More information about the Mono-devel-list
mailing list