From: Joao Pedrosa Date: 2005-04-03T01:03:30+09:00 Subject: Re: Getting Ruby approved Hi, On Apr 2, 2005 12:19 PM, Mark Roseman wrote: > Things like a rich event loop (much more than just after/timeouts, it's > a single easy model for all I/O and UI stuff), virtual file systems, > mature end user deployment solutions like Starkits, code protection, > excellent performance tuning, etc. are a few examples of things that > evolve over time, and are more likely to be in the more mature languages > - hence the appeal. As I said, I hope some of these types of things > migrate to Ruby over time; I'm sure you can get most of the way there > now by cobbling pieces together, but the edges are quite rough. If only people wanted to have what has been missing. :-) Desktop technologies have less appeal nowadays than they used to have in the past, for instance. > You mentioned OO being a drawback of Ruby in another message, but I > don't think that's a drawback at all. (Yes, coming from someone who > does a lot of Tcl for small and large programs, both with and without > using some of the established OO extensions for Tcl). Once one becomes proficient in OO (and Ruby helps one to become proficient in it, by lowering the barriers and the needs for more complex solutions), it's not a drawback anymore, because one knows that it doesn't need to be more complex than he needs. > > When general purpose languages evolve, it means that their easiness > > and reach may increase with the time, while the self-contained > > languages may have a harder time embracing other goals (like becoming > > cross-platform, supporting OO, etc). > > I'm probably just missing something, but what do you mean by the > distinction between "self-contained" languages vs. general purpose ones? > (If you have somewhere to point me to, that'd be fine too). For example, a language that supports its own GUI toolkit is much more "self-contained" than one that supports the native GUI and other GUI libraries. A language that uses Apache, Lighttpd, etc, as web-servers is much less "self-contained" than one that supports its own "web-server". A language that supports databases like SQLite, MySQL, etc is much less "self-contained" than one that supports its own database (OODBMS, RDBMS, etc). By using what's available in a given platform, a language becomes much less "self-contained". This is a theory of mine, by the way. :-) I began using the "self-contained" term two weeks ago. > Also, what would you see as Tcl's niche? (I've always felt it's use was > fairly broad-based, with small pockets here and there, but a lack of > concentration... not necessarily a good thing). The combination Tcl/Tk for desktop applications seems like the main use of Tcl. It's not a bad use of it, is it? :-) I understand that Tcl can be used for other tasks, too. One of the Tcl/Tk applications that I used to use was Scid: http://scid.sourceforge.net/ But then I created something similar in Ruby which was good enough for me: http://ruby.com.br/~pedrosa/chess.png > I think Ruby has a great foundation, and I'd love to see it evolve > quickly to smooth out some of the rough edges that are a natural part of > every newer language. Ruby is newer than a lot of languages, but after 13 years, it has become a very sweet tool. :-) Cheers, Joao