Thou shalt have no other gods before the ANSI C standard 1382
And sometimes that kind of decision is rational and makes economic sense. Let me give you an example. Suppose that it costs X to make your code portable to 36-bit ints, where X is some large value. Suppose that if you don't make your code portable to 36-bit ints, it costs 10X to later port it. Suppose that only 0.01% of the market uses 36-bit ints. In this case, the right decision may be to give up on portability to 36-bits ints. Let those rare few who care about 36-bit ints pay the cost of porting the code to their wacky platform.
Thou shalt have no other gods before the ANSI C standard 1383
In my own crypto-related source code, I often include this: #if CHARBIT != 8 #error This code requires...
What I'm saying is that there are cost-benefit tradeoffs, and programmers should take those into account. I find that pro-portability sloganeering all too often adopts an inflexible, absolutist view that just doesn't make sense.
Maybe. And it is an economic decision whether to pay that cost now, or pay it later. The kind of extremist view that says "if you don't want to pay that cost now, you're a bad programmer" is unjustified.
Documenting your buttumptions is often a good thing. But saying that no one is ever allowed to make any buttumptions because those buttumptions might (might) be violated someday, well, that goes too far.
I don't think we are in disagreement here.
Alt Folklore Computers Newsgroups