Reinventing the tried and true building blocks of game programming is hardly a trivial matter. Not that its necessarily 'hard', but its certainly a lot of work.
If you only knew how much code actually gets re-invented on a daily basis, I think you'd be amazed. For instance, takea simple thing like Inventory management in games. You have slots, weight, and possibly bags. Developers have been recreating this system in just about every game that I've seen developed.
Recreating an existing system is hardly the same thing as inventing a new system. As you already pointed out, multithreaded programming involves more than just recreating the same algorithms for a new environment.
Just had the discussion about pathfinding in this thread: http://www.bay12games.com/forum/index.php?topic=28716.0
Yeah but probably nothing else will bring performance of the game up to acceptable levels. So.. It may not be easy but without it the game will only get slower as more and more is added. So... if toady is serious that he will never multithread the cores, either expect a massive amount of content dropped.. *in my experience this never happens as a developer would sooner take the scissors to their own eyes than to their beloved game* ORRRRR It lags worse with less dwarves and probably will get to the point embarking will be a 9 fps slideshow with degredation of 1 FPS per 3 dwarfs.
* addendium edit:
I am serious, ALMOST NO DEVELOPER WILL EVER CUT OUT THE FAT:
For example
Windows XP has 40,000,000 Lines of code
Microsoft windows vista has 50,000,000+ lines of code.
Name 3 features it dropped from windows XP in order to make it run faster. Hell.. name one.