Concurrency, was Re: Doh! Stupid Programming Mistakes <humor>
shane at hathawaymix.org
Fri Oct 27 08:55:18 MDT 2006
Bryan Sant wrote:
> Your argument for a protocol is retarded. The protocol is only going
> to manage the marshaling of bytes back and forth between two or more
> processes. At both ends of this pipe (which is managed by your
> fantabulous protocol) you still have to deal with shared data issues.
> You have most of the same problems that you would have with threads,
> except that your performance sucks in comparison and your debugging is
> scattered to many processes.
Your argument for threads is retarded. You're still assuming that you
actually have control over the scope of all variables, but future
maintainers will simply add the "static" keyword to one of your
variables, breaking your model. This is no fantasy; I've seen bright
programmers do just that. Or someone like me will come along and try
very hard to understand your model, but then extend your model in a way
that introduces subtle but nasty bugs. And it will cost a whole lot to
fix the mess.
Look at the rise of web services. Web services are little more than IPC
across multiple machines. Apparently people find value in the concept.
I'm sorry you don't.
Now, don't forget this is a humor thread. This argument is for fun; in
reality, you're exactly right WRT some kinds of problems.
More information about the PLUG