Something nasty that I just realized (oops, I was wrong)
Content left only so people can understand discussion below.There are quite a few interesting flaws in this design. Here are some of them. First of all why patches and .NET are going to be fscking huge.
- Suppose that you have a bug in a library. So you fix it.
- Every module that loads the library needs to be relinked, so you recompile.
- Everything that links to that also needs relinking.
- When you are done, how big is your patch?
There is a possible major portability gotcha when you have digitally signed code that needs to call out to native code, and on different platforms needs to call out differently. That means different versions, that anything which links to is going to only link to one of, which means that anything anywhere that calls out to native code is going to be platform specific...?
OK, we will assume they are not that obvious about it. But still we have a nasty portability trap like this:
- You write a module that calls out to native code.
- It gets used by a bunch of people.
- You want it to become cross-platform. So you make whatever modifications you need to be able to link to native code on multiple platforms.
- Now everyone who uses your code needs to recompile so that they link to the portable version of your code.
- Everyone who links to them has to do likewise.
- Does anyone believe that will happen routinely on a large number of platforms? (Particularly minority platforms like Linux or FreeBSD? Particularly when key components have been written by people who are enough sold on the Microsoft bandwagon to have lept into .NET early?)
You know, for a platform that barely runs in 512 MB of RAM, at a time when Microsoft has not really tackled how they are going to do the big 32 to 64 bit conversion, it
might not be a smart idea to shoot themselves in the foot like this. And if they intend to get into foot-shooting, it might not be a good idea to join in this endeavour...
And
this is what Miguel thinks is the greatest thing to hit programming since sliced bread???
Cheers,
Ben
Edited by
ben_tilly
Feb. 15, 2002, 08:15:35 AM EST
Something nasty that I just realized
There are quite a few interesting flaws in this design. Here are some of them. First of all why patches and .NET are going to be fscking huge.
- Suppose that you have a bug in a library. So you fix it.
- Every module that loads the library needs to be relinked, so you recompile.
- Everything that links to that also needs relinking.
- When you are done, how big is your patch?
There is a possible major portability gotcha when you have digitally signed code that needs to call out to native code, and on different platforms needs to call out differently. That means different versions, that anything which links to is going to only link to one of, which means that anything anywhere that calls out to native code is going to be platform specific...?
OK, we will assume they are not that obvious about it. But still we have a nasty portability trap like this:
- You write a module that calls out to native code.
- It gets used by a bunch of people.
- You want it to become cross-platform. So you make whatever modifications you need to be able to link to native code on multiple platforms.
- Now everyone who uses your code needs to recompile so that they link to the portable version of your code.
- Everyone who links to them has to do likewise.
- Does anyone believe that will happen routinely on a large number of platforms? (Particularly minority platforms like Linux or FreeBSD? Particularly when key components have been written by people who are enough sold on the Microsoft bandwagon to have lept into .NET early?)
You know, for a platform that barely runs in 512 MB of RAM, at a time when Microsoft has not really tackled how they are going to do the big 32 to 64 bit conversion, it
might not be a smart idea to shoot themselves in the foot like this. And if they intend to get into foot-shooting, it might not be a good idea to join in this endeavour...
And
this is what Miguel thinks is the greatest thing to hit programming since sliced bread???
Cheers,
Ben