> Why is this any better than Cygwin? A software layer is a > software layer is a software layer. Putting one between you Cygwin doesn't work. It's practically impossible to have to Cygwin dependent applications running at the same time. Furthermore Cygwin creates an artificial filesystem, which is good Unix applications, but not a requirement for more enlightened applicatoins - for example, the stdlib in C works fine on many platforms, it's just too limited to cover all OS aspects. Cygwin isn't really what we need either. We need a good common API not an API that try be that of another with limited success. For example - no reason to have fork. Fork simply doesn't make sense on Windows and there is no reason to create processes using fork on Unix except for backward compatibility. > and the OS is always a measure of last resort. If there was one > that truly worked, then you'd see a lot less projects > developing their own. The fact that every major project seems > to be developing it's own runtime layer leads me to conclude > that they all suck in various ways. No single library has been big enough to provide a stable platform. I was figuring perhaps Apache might change this. Also because, as mentioned, more and more development is towards the Web rather than towards a specific OS. > Personally, I think the sane way is to focus on Posix and > implement workarounds when they are needed. But, I am > admittedly windows-phobic. I'd agree if it wasn't for the practical perspective. It don't understand why MS deliberately avoids being Posix compatible (even after having been Posix certified...). All they have gained is that all innovation has moved to Unix / Linux. However, fact is that MS is non-posix and that I haven't seen a good Posix layer for Windows. Anyway, as long as MS consistently avoids to achieve compatibility developers have to struggle. Look at QNX to see how a definitely non-Unix OS works quite well with the Posix interface. Mikkel