Thomas David Rivers wrote: > > Personally, I vote for u_int16_t... Unicode 16 bit, vs. ISO-10646 > > code page zero (other code pages aren't defined at all anyway, and > > it matches Windows, in case you want to use an ELF library from a > > Windows box, if you can figure out how). > > I noticed before that you mentioned you didn't want the > wchar_t to be int-sized (i.e. 32 bits.) I was just wondering > why. > > If we "shrink" the size at this point, would that have some > impact on existing programs. (Currently, the typedef > for `wchar_t' works down to an `int', if I'm not mistaken.)
My ulterior motives are: o Sloppily written code, ported from other platforms o Compatability with Windows (e.g. NTFS, VFAT32FS) o Complete disdain for ISO-10646 being 32 bits, when 16 of them are never anything but 0, and were put there just so that people could grep -v other people's languages out of documents o I'll believe Hieroglyphics and Linear B when I see the fonts and the programs that use them. Dead languages pretty much justify purpose-built linguistics software anyway. o A desire for raw storage of Unicode, rather than UTF-8 or UTF-7 encoding. This last one is: o UTF encoding is mostly so people using US-ASCII don't have to change their data (and to hell with the rest of the world). ASCII centrism is why we're having to invent a new type today. o UTF encoding breaks fixed field storage, which has always bean a measure of the number of characters you can put in a field. o UTF encoding breaks the historical (and really nice) "size_of_file/sizeof(struct) := number_of_records" o Not knowing if a character will take 1 byte or 5 bytes means that your fixed length input fields in browsers have to be fixed at 1/5th the number of characters as bytes available to store the input result o People might accept doubling data size for the benefit of internationalization. They aren't going to accept a random multiplier between 1 and 5. o Storage encoding and processing encoding should be the same thing, and not require conversion (yeah, I know, I was there for the comp.std.internat arguments with Ohta-san about hating Unicode because it didn't use EUC encoding, used Chinese dictionary ordering, and wan't "JIS-208 + extensions"; frankly, I think most Japanese don't care, as long as it works, which is why Windows hasn't suffered sales losses). I really, really hate doing field length conversions in code; I rather suspect it will lead to as many bugs as NUL terminated strings and "strcpy()" and "sprintf()" have led to buffer overflows. More justification than I intended, but I think the GCC default on most platforms was chosen to *intentionally* be incompatible with Windows. The decision should be made on technical merits, rather than blind hatred. -- Terry To Unsubscribe: send mail to [EMAIL PROTECTED] with "unsubscribe freebsd-current" in the body of the message