this may be a daft question, but is it possible to create a widget
toolkit using a scripting language? I know that most are written in
C /
C++ (QT, fox, wx), also ncurses for terminal interfaces. Therefore, is
it impossible to do such a thing with ruby? Or is it just to much hard
work?
Please can someone put my mind at rest and possibly give an
understandable explanation as to why it can't be done.
It certainly can be done. The thing is it is a huge never-ending
task... something really hard for an open source project (not
technically, but socially). Of course, that's a gross
characterisation that the wx/wxPython effort contradicts -- let's
just say that I *really* applaud and appreciate their effort.
My personal criteria include cross platform: OS/X, Linux, and
Windows. That, unfortunately, changes things.
There are a few UI toolkits that almost work for me: GTk, QT, Fox.
They've all got multiple scripting language interfaces.
I'm going to ignore the low-level interfaces to GL and other graphics
engines.
Tk is too slow for my purposes but it does work across platforms. And
it works with pretty much every scripting language you can imagine.
Wx is a contender. There is a wxPython out there that is quite
active. The Ruby version is behind. The Common Lisp version is under
development and appears to be problematic.
Smalltalk... Don't know, I'll have to look more closely. Squeak
doesn't look too good on OS/X (might be my problem though). Cincom is
in some weird state on OS/X -- I *think* it is only targeted at X11
but that's hard to believe (as I said I should look).
Common Lisp... Lispworks has CAPI which is very very nice but I can't
do what I need cross platform (current requirements include some kind
of styled text editing and this isn't going to happen under linux
with CAPI). There is a wx effort underway, but not there yet. There
is an interesting GL based thing called Cells but that isn't ready
yet. There are some other toolkits under development but they also
are not ready.
RealBasic... pretty good actually.
Runtime Revolution... the most interesting of the bunch I think. I
can't use it yet but I wish I could.
You want a second killer app for Ruby? Write a Rails/ActionPack
native front end to a web-based (i.e. Rails) back end. There is a
project called Dabo <
http://dabodev.com/wiki/FrontPage> underway in
the python world. It is using wx to front a web engine.
Cheers,
Bob
----
Bob Hutchison -- blogs at <
http://www.recursive.ca/
hutch/>
Recursive Design Inc. -- <
http://www.recursive.ca/>
Raconteur -- <
http://www.raconteur.info/>
xampl for Ruby -- <
http://rubyforge.org/projects/xampl/>