<div dir="ltr">On Thu, May 23, 2013 at 3:43 PM, Stanislav Frolov <span dir="ltr"><<a href="mailto:frolosofsky@gmail.com" target="_blank">frolosofsky@gmail.com</a>></span> wrote:<br><div class="gmail_extra"><div class="gmail_quote">

<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5">On Thursday 23 May 2013 08:01:51 Matthew Mondor wrote:<br>
> POSIX filenames may contain bytes which are often used to hold UTF-8<br>
> characters on filesystems which allow this, but that too is only one of<br>
> the available encoding options</div></div>
I understand OS and locale specifics, but this solution seems an ugly low-level<br>
hack for cross-platform high-level language. Am I wrong? Information about OS<br>
is available in compilation phase, about locale - in runtime.<br></blockquote><div><br></div><div style>ECL does not do locales: it only does Unicode or Latin-1, depending on how you build it. You may use other codepages for data and external representations for streams, but you have to tell ECL which representation to use explicitly (except for the terminal on Windows)</div>

<div style><br></div><div style>However, filenames are not just about locales. The problem with filenames is that there is not a unique representation for filenames with extended characters, given that all filesystems define names based on bytes. If you read the link Matthew pass you, there I commented a very precise problem: on Windows, OS X and on Linux, programs encode filenames using utf-8, but there is not a unique representation for this, because such encodings include (or not) reordering of characters (normalization). Thus you may create a file with a Unicode name and retrieve that name from the operating system and it would be a non-equalp string (equal under Unicode's normalized string comparisons, though)</div>

<div style><br></div><div style>I have not yet solved this problem and you may complain, but it will not help much :-)</div><div style><br></div><div style>Juanjo</div></div><div><br></div>-- <br>Instituto de Física Fundamental, CSIC<br>

c/ Serrano, 113b, Madrid 28006 (Spain) <br><a href="http://juanjose.garciaripoll.googlepages.com" target="_blank">http://juanjose.garciaripoll.googlepages.com</a>
</div></div>