On 12/31/2010 10:50 AM, Andrew Whitworth wrote:
On Fri, Dec 31, 2010 at 12:05 PM, chromatic<[email protected]>  wrote:
I agree with the rationale for replacing the existing threading system, but is
it really so unrecoverable that we can't use our traditional mechanism of
replacement?

1) design a better API
2) hide the current malfeasances behind said API
3) replace the backend in place

I do understand your point, and I thought about suggesting something
like that instead. However, considering the amount of (known-working)
code in src/thread.c compared to the interfaces and logic we would
need to update to make an API that we wanted for the future and the
amount of work it would take to transform the current system to fit
the new API, it really doesn't make a lot of sense.

If we have a use case where threads allow a user to do some kind of useful work, we should preserve that. Replacing an interface while maintaining the old one is harder than ripping it out and reimplementing it from the ground up. It's very much worthwhile if the old interface is in some way usable, but I don't think that's the case here. If someone can come up with a use case for the current threading code, we'll preserve the interface while we reimplement. Otherwise, we should consider ourselves free to rip out the old code and start afresh.

Christoph

_______________________________________________
http://lists.parrot.org/mailman/listinfo/parrot-dev

Reply via email to