I've had fun with the Mandelbrot set in this blog before, using it as an example of an embarrassingly parallelisable problem and demonstrating Parallel LINQ with it. This morning, over breakfast, I described the problem to Christian Brunschen , a colleague of mine who has some parallelisation experience...
I've been thinking about ranges again, particularly after catching a book error just in time, and looking at Marc's generic complex type . It struck me that my previous attempts were all very well, and demonstrated parallelisation quite neatly, but weren't very LINQy. In particular, they...
This post is in lieu of writing a proper one, either on the generic maths operators which Marc Gravell has been hard at work on, or on C# 4 which I have a number of opinions about (no surprise there). I will write about both of those topics, but I really ought to do some more work on the manuscript for...
Last night's blog post provoked a flurry of emails between myself and Marc Gravell. Looking back, trying to base the pipeline on a pseudo-asynchronous version of IEnumerable<T> was a mistake. We've now got a much more attractive interface to write extensions against: public interface IDataProducer<T>...
Update: I've got a new and simpler design now. I'm leaving this in for historical interest, but please see the entry about the new design for more recent information. This post is going to be hard to write, simply because I can't remember ever writing quite such bizarre code before. When...
No, don't leave yet! This isn't another article about non-deterministic finalization, RAII etc. That's what we almost always think of when someone mentions the object life-cycle, but I'm actually interested in the other end of the cycle - the "near birth" end. We often take it as read that when an object...
(Disclaimer: I'm 99% sure I've heard someone smarter than me talking about this before, so it's definitely not original. I thought it worth pursuing though.) One of the things I love about Java and C# over C/C++ is the lack of .h files. Getting everything in the right place, only doing the right things...
(Warning: I've just looked up "mix-in" on Wikipedia and their definition isn't quite what I'm used to. Apologies if I'm using the wrong terminology. What I think of as a mix-in is a proxy object which is used to do a lot of the work the class doing the mixing says it does, but preferably with language...