[email protected] (Ludovic Courtès): > In C, argv is just an array of byte sequences, but in Guile, > (command-line) returns a list of strings, not a list of bytevectors. > > Guile decodes its arguments according to the encoding of the current > locale. So if you’re in a UTF-8 locale (say, zn_CH.utf8 or > en_US.utf8), Guile assumes its command-line arguments are > UTF-8-encoded and decodes them accordingly. > > In the example above, it seems that the file name encoding was > different from the locale encoding, leading to this error.
I'm afraid that choice (which Python made, as well) was a bad one because Linux doesn't guarantee UTF-8 purity. Marko
