"The biggest downside is probably a long-term ABI problem. The scheme is inflexible. If your Pascal string-length header is too short, however do you expand it? It's wired into every string-using program out there! At least nul-terminated strings need no expansion."
Come on.
You'd naturally use 32 bits on 32 bit systems for string length. And by a strange coincidence, that's the maximum amount of contiguous RAM that you can address on 32-bit systems. On 64-bit systems, you'd naturally use 64-bit counter.
Posted Nov 18, 2010 16:40 UTC (Thu) by nix (subscriber, #2304)
[Link]
Yes, I talked about that as well. Nice to know that reading five paragraphs of text is too much for you.
Null-Terminated Strings
Posted Nov 18, 2010 17:04 UTC (Thu) by Cyberax (✭ supporter ✭, #52523)
[Link]
I read it completely. However, you point about: "The biggest downside is probably a long-term ABI problem. The scheme is inflexible. If your Pascal string-length header is too short, however do you expand it? It's wired into every string-using program out there! At least nul-terminated strings need no expansion" is not correct.
Null-Terminated Strings
Posted Nov 25, 2010 13:10 UTC (Thu) by renox (subscriber, #23785)
[Link]
I agree with him that Pascal's strings are inflexible: think about two computer communicating together one with a 32-bit CPU, one with a 64-bit CPU, if you use a word as a length, you have an issue with Pascal's strings,
but C-strings don't care..
Null-Terminated Strings
Posted Nov 25, 2010 16:22 UTC (Thu) by vonbrand (subscriber, #4458)
[Link]
No, you haven't... (Original) Pascal "strings" were just (packed) arrays of characters of a fixed length.