[MLton] Windows ports and paths

Wesley W. Terpstra wesley@terpstra.ca
Wed, 4 May 2005 00:18:37 +0200


On Tue, May 03, 2005 at 06:36:50PM +0200, Andreas Rossberg wrote:
> Oh, it seems I missed out on some of the initial fun in the discussion 
> by skipping over it too fast. :)

An archive is here:
<http://www.terpstra.ca/lurker/thread/20050430.204131.7035d7fa.en.html>

> >I don't think it really does contradict it.
> >fromString "\" = { isAbs=true, arcs=[""], vol="" } as described.
> >It's just that toString will raise Path. :-P
> 
> And that implies a contradiction, because it is also specified that 
> toString o fromString is the identity.

Yeah, well, we already mess that up b/c: "foo/bar" -> "foo\bar".

OTOH, you are right that the exception exemption applies only to 
(fromString o toString).

> In my opinion, the preferable way to resolve this is by ignoring the 
> nonsensical restriction in validVolume.

That's what I did before too... *sigh* Ok.

> >If it's absolute, you should not have to worry about doing a chdir()!
> 
> Indeed, but it's even less so a relative path, because you cannot simply 
> concatenate it to a given dir.

That's a good point.
There should be a third category then: mkStable, isStable, etc.

> The whole ugliness stems from DOS rather than the Basis, which just 
> tries to live up to it with minimal fuss. ;-)

DOS pre-dates SML 97. :-P

-- 
Wesley W. Terpstra