From: Michael Neumann Date: 2004-07-21T04:08:32+09:00 Subject: Re: VB(ish) replacement Larry Bates wrote: > Others have answered most of the other questions. > > >>11. Database support of Access and MySQL > > > Access databases can be accessed via ODBC, > DAO, or ADO interfaces on Windows. MySQL has > native interface from Python. Ruby has this all, too ;-) > Questions you didn't ask: > > 12) Can interface to existing COM+ objects, write new > COM+ objects and write Windows services. > > Python Not sure, but with Ruby you can access COM objects, script Excel for example... > 13) Can write scripts, applications (console and GUI), > and web services with single language. > > Python Ruby, too ;-) Ruby has a cool SOAP implementation and WSDL. > 14) Has extensive standard library to support email > (SMTP, IMAP), FTP, HTTP, logging, regular expressions, > arrays, and many more. Third party libraries for > imaging (Python Imaging Library), PDF generation > (ReportLab), Graphing (ReportLab Graphics) and > XML parsing (PyRXP by ReportLab). Just to name a > few. SMTP, IMAP, FTP, HTTP, logging, regexps, arrays all standard in Ruby. XML parser (REXML), YAML, SOAP and XMLRPC comes with Ruby by default. ... > Python Ruby ;-) > 15) Easy to write C language extensions for language > > Python Very easy in Ruby, too. > 16) Code that you can actually understand when you > come back to read it a year later. > > Python (priceless ;-) Ruby ;-) > You might want to take a look at the experience of > another company: > > http://python.oreilly.com/news/disney_0201.html http://www.rubygarden.org/ruby?RealWorldRuby >>What they seem to be looking for is: >>1. High level language, but not necessarly VB compatible. Ruby: very high level >>2. OOP Ruby: pure OO (designed from the beginning on) >>3. Reasonalble learning curve Ruby: it's easy to get started, but there are lots of tricky details (you only have to learn them if you're interested) >>4. Cross-platform Ruby. But Windows support in Ruby is not as good as in Python (AFAIK), but there is a Windows Installer version available, which comes bundled with lots of stuff. >>5. IDE and ability to graphically design windows. Arachno Ruby IDE. Commercial, but still alpha or beta release. Available for Python, Perl and PHP, too. Lot's of features. Made in Germany ;-) Design Windows: If Qt is an option (it costs a bit of money when used on Windows or commercially), there's a brand new Qt/Kde binding for Ruby based on Smoke. http://developer.kde.org/language-bindings/ruby/index.html With this, you can use all Qt and KDE widgets, and AFAIK even without compiling any C sources (once you've compiled the Ruby-Smoke bindings). Alternatively, there are FXRuby (www.fxruby.org), wxRuby (wxruby.rubyforge.org), Tk or fltk bindings. But no usable graphical designers for those. >>6. Distribute programs as .exe's, so some sort of compiler needed. available in Ruby: exerb http://exerb.sourceforge.jp/index.en.html >>7. Serial communications library (RS-232, 485, USB) RS-232 libraries are available in Ruby. don't know about USB, but should be easy to write a wrapper around libusb on linux. Don't know about Windows. >>8. SNMP library Several libraries in Ruby: http://raa.ruby-lang.org/search.rhtml?search=snmp Even one written in pure Ruby (brand new, only a few days old). >>9. Good performance (not expected to be as fast as C/C++) depends. Python is probably faster than Ruby, but not much (unless you use psyco etc.). >>10. Windows are native to each O.S. wxRuby (not as major as wxPython, my personal feeling was, that's quite slow). But I'd prefer FxRuby (Windows-like look on each platform). >>11. Database support of Access and MySQL Ruby/ODBC, two mysql libraries for Ruby. Ruby/DBI has ADO, ODBC and Mysql drivers. Of course Python is better known, and there are more commercial projects written in Python than in Ruby. For more libraries, Ruby's Application Archive is your friend: http://raa.ruby-lang.org Regards, Michael