"Dave Thomas" <Dave / PragmaticProgrammer.com> wrote in message news:m2n13bxrcv.fsf / zip.local.thomases.com... > > Folks: > > We currently have a problem with Ruby under Windows. The Cygwin > version shipped with the Installshield system is the most fully > featured, but at the same time seems to be flaky in some situations > (mostly due to Cygwin issues and the normal DLL hell). MinGW seems > fairly solid, but there are rumors that it doesn't support all the First of all - I see the major problem of switching from Cygwin to MinGW or other non-Posix enviroment to be the support of all the RAA modules. There may be a price to pay in terms of RAA modules that is supported on Windows and those that not. This may of course also go the other way: RAA modules that only works on Windows. But I am willing to pay that price. In my opinion Ruby on Windows should avoid using Cygwin: a) because it is very difficult to install Cygwin properly if you need to compile source. b) because once installed it conflicts with other apps depending on Cygwin. c) it is not sufficiently stable. d) it complicates creating standalone apps written in Ruby. e) it complicates integration with thirdparty Windows specific software libraries to be used in Ruby extension (the counterargument being that it makes Unix specific software more difficult to support). If Ruby is to get any success in commercial enviroments (which I consider important for the overall success of the language), it must be possible to easily deploy applications that are partially written in Ruby. I don't care if MinGW is slightly slower or that it might not support everything (Ruby is already slow so that is not the deciding factor). For the Ruby core itself this may come down to writing some support code for Windows - but surely that can be accomplished without too much fuzz? I'll quote Guy whom I fully agree with on this: <Guy>This is of course my opinion, but look at how successful PHP is. It is perhaps the most cross-platform web scriptin g language, yet it does not achieve that via a single binary. It has windows-specific approaches. I think this can be successful for Ruby, also.<Guy/> I have not studied MinGW - but I guess it would be possible (as in not difficult) to get core Ruby to compile directly under Windows without any kind of third party support. I know there may be some socket issues and a few other issues - and I my be a good idea to grab some software from somewhere to solve such issues. So the task is to identify exactly what Ruby need of support from the operating system. There is file I/O, memory management, threads and network I/O. But since you can already now embed Ruby, I guess this is almost a non-issue except perhaps for the networking issue. So I don't see any major reason for Ruby to depend on any third party distributions (well I still like software like FxRuby etc. as add-ons to core Ruby but not as a foundation). I am surprised to hear the Ruby might be faster on Cygwin than MinGW. My immediate guess is that it is related to memory management. malloc may simply be more efficient in Cygwin. I understand that memory management is being improved in Ruby, so that shouldn't cloud the issue. BTW: nice meeting those of you who visited Aarhus a few weeks back. MikkelFJ