[Mono-list] What application/library should be coding in C#

Jonathan Pryor jonpryor@vt.edu
Mon, 22 Mar 2004 18:17:35 -0500


On Mon, 2004-03-22 at 09:10, Harobed wrote:
> Le lun 22/03/2004 à 13:06, Jonathan Pryor a écrit :
> the time to open applications, open window ... read glade xml file and
> make the interface...

Gtk# is fast.  How fast?  I can't say.  I *can* say that my Gtk# app
(Type Reflector) starts up and displays it's Glade-based GUI in about as
much time as it takes gedit to start.

Not that this is a terribly useful benchmark, but it works for me. :-)

On a more general performance issue, Mono uses a garbage collector,
which *tends* to require more process memory, and if enough memory is
used will lead to increased OS swapping and general application
slow-down.

Though that's true of any app, in general.

There's also JIT overhead.  But the JIT has the potential to be smarter
about code generation (global method inlining), so some operations could
be faster than the C equivalent.

You'd have to write a benchmark to get actual timing measurements, which
no one has done AFAIK.

> Personally, I would like contribute to gtksourceview, but I don't
> understand why it isn't coded in C#. If it is coded in C#, this library
> will be more simply to port to win32 or Mac OSX.

It isn't coded in C# because it was started before C# was a viable
option.  It's used by gedit 2.4, which was released last fall. 
Furthermore, Gnome does not currently have a dependency on C#, so it is
highly unlikely that the current maintainers would accept a C# rewrite.

That shouldn't stop you from doing a C# rewrite, though.  It could be
used for a performance comparison.

 - Jon