Version 19 of Ruby

Updated 2004-04-26 13:56:17

From the FAQ[L1 ]:

``Ruby is a simple and powerful object-oriented programming language, created by Yukihiro Matsumoto (who goes by the handle "matz" in this document and on the mailing lists).

``Like Perl, Ruby is good at text processing. Like Smalltalk, everything in Ruby is an object, and Ruby has blocks, iterators, meta-classes and other good stuff.

``You can use Ruby to write servers, experiment with prototypes, and for everyday programming tasks. As a fully-integrated object-oriented language, Ruby scales well.''

The home page for Ruby is http://www.ruby-lang.org .

Its most articulate advocates write such descriptions as, "... it has a couple of real killer features; in particular the way blocks and the pervasive use of the visitor pattern come together change the way one writes programs for the better."

There is a Ruby/Tk if you want to bring your Tk skills into a new world:

  require 'tk'
  root = TkRoot.new() { title "Hello, world!" }
  Tk.mainloop()

(from http://httpd.chello.nl/k.vangelder/ruby/learntk/ )

 What: Ruby
 Where: http://www.ruby-lang.org/ 
        http://www.rubycentral.com/book/ext_tk.html 
 Description: Programming language for quick and easy programming.
        A clean, consistent language design where everything is an object,
        CLU style iterators, singleton classes/methods, and
        lexical closures.  Makes use of Tk (with bindings similar in
        concept to Perl/Tk) for its GUI support.
        Currently at version 1.8.0 .
 Updated: 08/2003
 Contact: mailto:[email protected] 

See http://www.rubycentral.com/book/ext_tk.html for more information.


RS: Like Scheme, Ruby has arbitrary-size integers as default - another hint that Tcl should have it too... Octet-packed integers come to mind..

AK: I consider the Octet-packed integers more something of a file-format, and less of an in-memory format. Note aside: In Slim Binaries I refer to the paper about Universal Symbol Files. This paper advances the notion of octet-packed integers to, albeit slightly differently than metakit if I read the code right. - RS: Well, a very simple alternative would be to just keep the string rep and let expr work on that if it runs into a "integer value too large to represent".


See http://www.approximity.com/ruby/Comparison_rb_st_m_java.html for one comparison of Ruby to C++, CLOS, Dylan, Java, Objective C, Perl, PHP, Python, Smalltalk,


Category Language