A future for gs?

Michael Turner <>
Tue Jun 15 08:19:43 CEST 2010

I started writing a little diagram editor in gs, but have just run aground
on a limitation: there doesn't seem to be any way to track where you are in
a canvas when you're scrolling around in one.  The scrollbars work, the
canvas objects updates canvas object positions appropriately, but it seems I
can't find out what part of the canvas I've scrolled *to*.  Without that, I
can't convert window coordinates to canvas coordinates and back again.

I can't even get scrollbar interaction events.  I started looking at the gs
source and found that there's an API-exposed but undocumented "scrollbar".
 And you can ask to have a scrollbar created, returning successfully.  But
you can't do anything with it.  You can't even see it.

I've also found some code for some dialog boxes, useful (if ugly) for
alerts, file selection, etc.  The comments describe this module as
"internal", but nothing in the gs source directory actually refers to them.
 They are clearly not ready for prime-time (and so "widgety" that Steve Jobs
would vomit).  But they do work (sort of.)

This package looks like it was dropped mid-stride, even though it seems to
have started off in a reasonable direction: wrapping Tcl/Tk.

Regretfully, I'm starting to look at wx again, but I find it only reminds me
far too much of what I disliked about GUI programming in C++.  If you
already know the wxWidgets API from some other language, the very similar
Erlang bindings might seem like a Godsend.  But if you just want to get a
GUI up and out of the way (my goal), and you don't have that wdWidgets
background, it all just seems verbose, over-parameterized, encyclopedically
overwhelming.  (IMAO, anyway -- I've done Mac programming, Windows
programming, and hated every minute of GUI programming on both.)

Is there a future for gs?  I've gotten the impression that the sun is
setting on Tcl/Tk.  Maybe gs will follow it?

-michael turner

More information about the erlang-questions mailing list