il Mon, 10 May 2004 10:42:02 GMT, Ryan Paul <segphault / sbcglobal.net> ha scritto:: <snip> you better look at the *many times* debated stuff: http://www.ruby-doc.org/RubyEyeForThePythonGuy.html I believe with come patience you may get better and more complete answer to anything by looking at old threads. >I am looking for: > - examples of tangible features that ruby has, which python doesnt. I believe the strongest one (and totally incompatible with python's __call__ methods) is the usage of methods as syntax enhancer[1] Say, when you type: class Foo private def foo end end you're setting a state calling the private() method, not actually using a keyword. This, toghether with blocks, allows you to write stuff like this: irb(main):001:0> def with(obj,&block) irb(main):002:1> obj.instance_eval(&block) irb(main):003:1> end => nil irb(main):004:0> with 10 do irb(main):005:1* print id irb(main):006:1> end 21=> nil irb(main):007:0> 10.id => 21 but, in the end, ruby and python evolved toward common features via different approaches (i.e. python property() is similar in effects to ruby accessor methods, even if completely different) And one thing that I don't see spotted in the oldest thread is ruby's SAFE levels (controlling stuff like tainted input, FS access, and so on) >I sincerely hope nobody finds any of my comments offensive, I dont mean >them as criticisms of ruby. I intentionally withhold criticisms until I am >better versed in the benefits! you've been kind enough to still be far from flaming ;) [1] I can't say we define new syntax in ruby, but it looks like we do :)