[MLton-user] Re: MLton OS.Path under Windows [MLton-user Digest,
Vol 27, Issue 6]
John Reppy
jhr at cs.uchicago.edu
Fri Nov 14 05:08:15 PST 2008
On Nov 14, 2008, at 12:54 PM, Andreas Rossberg wrote:
> On Nov 14, 2008, at 10.01h, John Reppy wrote:
>
>> Looking at the OS.Path specification, there is clearly an
>> inconsistency in the definition of
>> absolute paths on Windows. The confusion arises because Windows
>> has the notion of a path
>> that is absolute relative to the current volume (but not strictly
>> absolute, since changing
>> the volume changes its meaning). I'm not sure what the correct fix
>> is. The path of least
>> resistance might be to change the specification of toString to read
>>
>> The exception Path is raised if vol <> "" and validVolume{isAbs,
>> vol} is false.
>
> That would still allow fromString to deliver results that are not
> considered "valid". For paths that are perfectly sensible.
I'm not sure what you are driving at? Can you give some examples?
> I think the simpler and more coherent fix is to simply change
> validVolume to allow empty volumes unconditionally on Windows.
>
>> Alternatively, we could redefine the notion of absolute path on
>> Windows to require a
>> valid volume.
>
> I fear that this would require quite a few (incompatible) changes
> with the potential to break existing code in subtle ways.
>
> Since we are at it, as I mentioned earlier (on the MLton list) I
> have a number of other issues with inconsistencies in OS.Path. If
> you are interested, I'd be happy to post them.
Please do so.
- John
More information about the MLton-user
mailing list