From: Sean Russell Date: 2001-10-24T07:27:24+09:00 Subject: [ruby-talk:23107] Re: Bruce Eckel's opinion of Ruby Eric Lee Green wrote: > Disclaimer: I have written approximately 100,000 lines of Python in the > past 2 years, and approximately 10,000 lines of Ruby in the past 2 months. > Thus I am approximately 10 times more expert in Python than in Ruby. I > don't, however, have any particular axe to grind regarding languages, > heck, I even write my web pages in PHP (one of the most bletcherous > excuses for a programming language to come down the pike -- but excellent > for quicky one-off weblets). That was a good run-down. > 9. Reference counting (Python) is more memory-efficient than garbage > collection (Ruby), since it frees up memory as references are destroyed I've never found Ruby to suffer from poor memory management. > 10. Reference counting works hand-in-hand with Python's destructors to > handle resource cleanups in a real-time manner that's difficult with Ruby This (and 9) would be easily solved by a mechanism to force the garbage collector to run; if Ruby doesn't have one, it should. > 15. Python has a much better Emacs mode than Ruby. I especially like the > class browser. You can tell an emacs freak by the fact that they choose their programming languages by how well supported they are by emacs ;-) > Final conclusions: I must agree with Bruce Eckel that I could not > recommend that a Python programmer move to Ruby except in very special > circumstances, because the two languages are so similar that there's no > real advantage to doing so. In my case I'm using Ruby because I needed to Yeah, that's a tough call. *I'd* recommend them switching, because I hate Python with something approaching passion, and the less of it I have to encounter, the happier I am. For a beginner, though, I'd recommend Ruby. I've been programming in one thing or another since 1983, and the syntax in Python's "hello world" was enough to turn me off. > aspects (iterators, rinda, single inheritance only, etc.) are similar to > Java. I would not, however, relish attempting to manage 100K+ lines of > Ruby code for a project, while Python proved to be quite usable for 100K+ > lines of code. Apart from my dislike of Python syntax, I'd have no trouble accepting maintenance of 100K+ lines of Ruby code, assuming the code was written by someone sane; I'd prefer this to taking on, say, 100K+ lines of C code, or even Java code. Ruby is so orthogonally OO that I can't imagine that it wouldn't be noticeable on a large scale. I agree that Ruby has a certain harmonic with Java; since I've been coding almost exclusively in Java since 1995, I would imagine that the feeling of similarity is why I prefer Ruby. --- SER