New Win32 VM [m17n testers needed]

"Martin v. Löwis" martin at v.loewis.de
Tue Jun 5 04:55:55 UTC 2007


> The conditional is incorrect and unnecessary. filename encoding depends on 
> filesystem, not the VM platform.

On a bad operating system, it does. On a good operating system, the
system provides abstraction from file system details as much as
feasible.

Win32 in particular provides a homogeneous encoding of file names;
using the "ansi code page" in the byte-oriented APIs, and using
Unicode UCS-2 in the wide-string APIs. The Smalltalk VM then
can provide UTF-8 file names across file systems on Windows.

It would actually be good if the VM would guarantee UTF-8 file
names on all systems.

> For instance, I could have a UTF-8 file on a 
> USB flash and use it across different VMs.

I don't understand: you mean a file whose contents is UTF-8
encoded, or whose file name is? On an USB stick, you need some
file system; whether the file name will be UTF-8 encoded
on disk depends on the file system.

> AFAIK, FAT fs does not support UTF-8. NTFS, HPFS (Mac) and all current Linux 
> filesystems support UTF-8 in filenames.

Wrong both ways. NTFS does not store file names in UTF-8, but in UTF-16;
whether Linux stores file names in UTF-8 depends on the locale. FAT (in
it's vFAT version which is now universally being used) also stores file
names in UTF-16.

Regards,
Martin



More information about the Squeak-dev mailing list