> From: [email protected] [mailto:mono-list-
> [email protected]] On Behalf Of David Curylo
> 
> It's not like Java where you can blindly expect your code to run across
> platforms.  More like Python or Erlang or numerous other languages and
> runtimes where most of the code will work across platforms, but some
> libraries are platform-specific.

Even in java, python, or any other language, you can't just build and test on 
one platform and blindly expect (without testing) that it will work on another 
platform - because there exist platform specific variations.

For example: If you wrote an https server application, and it ran on windows as 
a service, it *won't* simply run on linux. Because binding low numbered ports 
requires root escalation. So you need to be careful to launch your application 
as root and then make a POSIX call to drop privilege after the port is bound.

And if you use a path like "C:\foo\bar" your app will break on a non-windows 
platform. And even if you do the smart thing using special folder 
enumeration... "Personal" evaluates to "My Documents" on windows, but evaluates 
to your home directory on linux/unix. So you have to use *different* special 
folder enumerations on different platforms, in order to have the same effect.

Not to mention differences of supported filesystem characters... Path separator 
char '/' vs '\' ... 

Case sensitive filesystems, vs case insensitive... Unicode vs Ascii ...  
Disallowed characters in windows...  Maximum path length in windows that 
doesn't exist in linux/unix...

What else? There are simply TONS of differences that are different on different 
platforms, regardless of the language you use. It is not realistic, in *any* 
language, to write and test on one platform and expect it to be functional on 
another platform without testing. Unless your app is a trivial calculator or 
similar.
_______________________________________________
Mono-list maillist  -  [email protected]
http://lists.ximian.com/mailman/listinfo/mono-list

Reply via email to