Threads vs POE

gnat on 2003-06-26T03:19:14

I just wrote threaded and POEd server recipes for the second edition of the Perl Cookbook. Threads result in nice and simple code, but having to rebuild Perl is major rectal pain and it is the nature of threads to result in fantastically confusing errors and, periodically, core dumps. POE is infinitely more complex to write in, but thanks to the miracle of PoCo (POE Components) ... it Just Worked.

I have to say that Messr Bergman is brave. Very brave. I made the mistake of asking him at YAPC what he was hacking on, and it turns out he's messing with memory allocation. I think I may have found a followon to the hypothesis that given enough time, every piece of software will grow to include an XML parser, SMTP client, and web browser. That's upward growth--towards higher complexity and userland functionality. There's also a trend toward downward growth: given enough time, every piece of software will grow to include its own memory management (heap), I/O library (stdio), and database storage system (filesystem)--every program is destined to have its own operating system underneath it.

--Nat


Funny you should mention that...

jjohn on 2003-06-27T00:42:28

There's also a trend toward downward growth: given enough time, every piece of software will grow to include its own memory management (heap), I/O library (stdio), and database storage system (filesystem)--every program is destined to have its own operating system underneath it.

I think that more applications are likely to have their own operating system due to Microsoft's Server 2003 (which includes Connectix VM tech) being released later this yet. When you can have your own virtual machine dedicated to running one app, there are many very interesting possiblies that suggest themselves. Microsoft hopes to get a migration path for NT4 users to upgrade to XP. Virtual servers do that. However, I can now run any damn OS under a windows host. How many VMs I can run at once depends on the processor and RAM (mostly), but today's machines can run serveral at once.

So yes, Gnat, I believe that many apps really will become concerned with low-level optimizations. I think embedded apps are about to exploded onto the desktop (perhaps by 2007).