> also, supporting windows is a lot of additional work
Yeah, GNU tools are generally written to assume a Unix-like environment. As a result it's relatively easy to port them to anything Unix-like (the BSDs, OS X, etc.). On Windows, Cygwin provides a Unix-like environment, so it's relatively easy to port things to there as well. But to making things work on "native" Windows requires a bunch of Windows-specific porting. That isn't impossible (e.g. GNU Octave has a Windows port), but it requires there being Windows developers interested in volunteering to do it.