D2 GUI Libs

dsimcha dsimcha at yahoo.com
Fri Dec 11 21:10:24 PST 2009


I'm thinking of giving another try to writing a plotting library for D.  I'm
trying to decide what GUI library to use.  Here's what's important to me, in
order of importance.  Someone who's more familiar with the GUI library
situation than I am please make a recommendation.

1.  Good D2 support.  I don't want something that's going to take forever to
be usable in D2 even after the spec is stable.

2.  Performance.  If a scatter plot with 50,000 points takes a few seconds to
redraw when the window is resized, it's too slow.  I'm frankly sick of using
slow plotting libraries in other languages.

3.  Licensing.  I prefer something permissive like BSD or Boost.  LGPL is
acceptable, though annoying and sometimes ambiguous.  If it's GPL I just plain
won't use it because I want the license to the plotting library to be
reasonably permissive.

4.  Simplicity of API.  I don't want a library that requires tons of
boilerplate to do simple things.

5.  Platform support.  Windows XP, Vista and 7 and x86 Linux are a must.  I
don't care so much about macs or some of the more esoteric platforms, or about
ancient versions of Windows.

What isn't very important:

1.  Lots of features/flexibility.  I'm thinking the plotting lib will be a
minimalist library, focused on "just working", simplicity of API and
performance rather than on lots of bells and whistles and extensibility.
Therefore, I don't need lots of bells and whistles in my GUI library.

2.  Native look and feel.  IMHO this is very overrated.  I've never found that
a Java-ish or GTK-ish or whatever look and feel instead of a native Win32 look
and feel got in the way of me using a program effectively.

3.  Stable ABI.  The plotting library will never have a stable ABI, only a
stable source-level API.  Most of the API will probably be templates anyhow.
Therefore, I don't care if the GUI library has no stable ABI, only a stable
source-level API.



More information about the Digitalmars-d mailing list