Python vs Ruby

Hello Premshree,

Hello Lethalman,

> (sorry for my poor English)
> Hello,
> i'm a pythonist but i like very much some ruby features, however it
> doesn't seem to be very supported at all like Python.
> I never programmed in ruby, because i python is more used.

> I would like to know why ruby doesn't "take the fly" like Python did,
> because i really would like to try the ruby language!

At the moment i would say that the language is in some aspects better

Could you elaborate on those aspects?

Orthogonal OO design, blocks and open classes are in my opinion the only
serious differences in the language. A mark-sweep GC vs. reference
counting GC is also a huge difference but only visible in the C-API.

I think that the GC is the reason why many people find writing ruby
extensions is easier then writing python extensions - also the basic
ruby routines are easier to call from C then in python.

IMHO the different syntax shouldn't be an argument for a "serious"
programmer. But i prefer ruby's syntax when written and indented in a
good way. The situation where you get cascaded 'end's at the end of a
method or class is quite confusing in python, because with multiple
'ends' you have a better visual hint then one huge de-indentation.

···

On Mon, 10 Jan 2005 04:06:40 +0900, Lothar Scholz > <mailinglists@scriptolutions.com> wrote:

--
Best regards, emailto: scholz at scriptolutions dot com
Lothar Scholz http://www.ruby-ide.com
CTO Scriptolutions Ruby, PHP, Python IDE 's

Check this out:

http://onthethought.blogspot.com/2005/01/thinking-in-ruby-not.html

- ----------------------------
Eustáquio "TaQ" Rangel
eustaquiorangel@yahoo.com
http://beam.to/taq
Usuário GNU/Linux no. 224050

Hi,

The lack of English documentation was the biggest
(perhaps only) weakness in Ruby.

Exactly. I don't see any other reason why Ruby didn't take off as well
as Python.

I don't think so. You have more English documents than in Japanese
these days. So that the reason should be "the lack of documentation"
at most. You might know that many among open source developers are
not good document writers (including myself).

              matz.
p.s.
Well, my blog is the only exception, maybe.

···

In message "Re: Python vs Ruby" on Mon, 10 Jan 2005 17:05:16 +0900, Premshree Pillai <premshree.pillai@gmail.com> writes:

Lethalman wrote:

However i should say choosing ruby whould be like using a "deprecated language". It has a low support, development and many other reason that programmers (and not only pythonist) don't choose ruby.

Nope, that's not true. I see quite a lot of development and support. Especially from the community.

Please, phrases to let me start ruby programming? :slight_smile: I'm making a medium-big project with python (a powerful and very custmizable-modular ircd) and i know ruby can do more than python, but i really don't want to change (easy-to-use matters)...

Ruby *is* easy to use.

I think you are being too critical about Python.

You're probably right. My opinion on Python is just based on my personal
experience with it: using Python has the same effect on me then using
Windows, it makes me want to projectile vomit my breakfast (or lunch or
dinner depending on the time of day I am doing this). So yeah, my
comment might have a little bias :wink:

There are not many _major_
differences between the two languages from the POV of a language user.

Well, my opinion is that Ruby has been designed, while Python has been
tinkered, and this makes one hell of a difference from the POV of a
language user, because quite frankly, it shows. :>

···

Premshree Pillai <premshree.pillai@gmail.com> wrote:

--
Luc Heinrich - lucsky@mac.com

* Premshree Pillai (Jan 09, 2005 18:00):

> Another one: Bruce Eckel (for whom I had lots of respect) has said
> that Ruby is not worth learning compared to Python (which is why I
> lost all the respect I had for him, poof, instantly gone, bye bye),
> so Python wins again.

That was in a FAQ, right? That comment doesn't exist anymore, I think.
Maybe he changed his views or something. :slight_smile:

Or may he's just a smug coward?
  nikolai

···

--
::: name: Nikolai Weibull :: aliases: pcp / lone-star / aka :::
::: born: Chicago, IL USA :: loc atm: Gothenburg, Sweden :::
::: page: www.pcppopper.org :: fun atm: gf,lps,ruby,lisp,war3 :::
main(){printf(&linux["\021%six\012\0"],(linux)["have"]+"fun"-97);}

Premshree Pillai wrote:

Another one: Bruce Eckel (for whom I had lots of respect) has said that
Ruby is not worth learning compared to Python (which is why I lost all
the respect I had for him, poof, instantly gone, bye bye), so Python
wins again.
   
That was in a FAQ, right? That comment doesn't exist anymore, I think.
Maybe he changed his views or something. :slight_smile:

To all interested parties:

I've corresponded with Mr. Eckel directly about Ruby ( recently ... like November '04 )

His response was that he had looked at it a "years ago" and that it seemed "very perlish". So, he stated that he's "been following it peripherally".

He also stated "If I get a chance to take a tutorial, I will probably try to do so."

I'm only giving snippets because I want to protect Mr. Eckel's privacy as much as I can.

Since this email, I have sent further email including at least what *I* consider to be the top 3 tutorials for Ruby ( online )....

Pickaxe Online ...
Why's Poignant Guide ...
and, the Tutorial included in the standard documentation.

Anyways, there's the $0.02 I know about this topic. Hope it helps somebody.

j.

···

On Mon, 10 Jan 2005 01:36:22 +0900, Luc Heinrich <lucsky@mac.com> wrote:

Hello Premshree,

>> Hello Lethalman,
>>
>> > (sorry for my poor English)
>> > Hello,
>> > i'm a pythonist but i like very much some ruby features, however it
>> > doesn't seem to be very supported at all like Python.
>> > I never programmed in ruby, because i python is more used.
>>
>> > I would like to know why ruby doesn't "take the fly" like Python did,
>> > because i really would like to try the ruby language!
>>
>> At the moment i would say that the language is in some aspects better

> Could you elaborate on those aspects?

Orthogonal OO design, blocks and open classes are in my opinion the only
serious differences in the language. A mark-sweep GC vs. reference
counting GC is also a huge difference but only visible in the C-API.

Yes, that's one of the major differences I point out when I compare
Ruby with Python. The other thing I used to point out was that Ruby
doesn't have a "self" for instance variables :smiley: I can't use that
anymore, though: that has been elminated now, I'm told.

I think that the GC is the reason why many people find writing ruby
extensions is easier then writing python extensions - also the basic
ruby routines are easier to call from C then in python.

IMHO the different syntax shouldn't be an argument for a "serious"
programmer. But i prefer ruby's syntax when written and indented in a

Rightly said.

···

On Sun, 9 Jan 2005 21:31:13 +0100, Lothar Scholz <mailinglists@scriptolutions.com> wrote:

> On Mon, 10 Jan 2005 04:06:40 +0900, Lothar Scholz > > <mailinglists@scriptolutions.com> wrote:

good way. The situation where you get cascaded 'end's at the end of a
method or class is quite confusing in python, because with multiple
'ends' you have a better visual hint then one huge de-indentation.

--
Best regards, emailto: scholz at scriptolutions dot com
Lothar Scholz http://www.ruby-ide.com
CTO Scriptolutions Ruby, PHP, Python IDE 's

--
Premshree Pillai

IMHO the different syntax shouldn't be an argument for a "serious"
programmer.

Please count me out as a serious programmer, then. I care deeply about the aesthetics of Ruby. I derive great joy from writing beautiful programs. Ruby let's me write the most beautiful programs I've ever done. Ergo, Ruby makes me happy.

I couldn't think of a higher praise to bestow upon a programming language.

···

--
David Heinemeier Hansson,
http://www.basecamphq.com/ -- Web-based Project Management
http://www.rubyonrails.org/ -- Web-application framework for Ruby
http://macromates.com/ -- TextMate: Code and markup editor (OS X)
http://www.loudthinking.com/ -- Broadcasting Brain

i've found that when someone becomes a 'python person' they
absolutely REFUSE to consider another language.

personally i'm of the mind of 'right tool for the job'. and for me
python doesn't seem to be the right tool for anything.

somebody with mr. eckel's smarts should know better...can you imagine
what he could do with 'thinking in ruby'

in that blog he's guilty of the same thing he accuses ruby of:

'Of course I only get bits and pieces, usually from people who don't
know Python trying to convince me that Ruby is better,'

and rubyist's get it the other way around :slight_smile:

the main argument that python programmers use to use is that python
is OO from the ground up. clearly it's not, but ruby is...and i think
that sticks in their craw more than then they'd like to admit...

rather than get bombarded by moronic hatemail (as happened last time
when i point all this out) i'm leaving it at that...

http://home.cogeco.ca/~tsummerfelt1
telnet://ventedspleen.dyndns.org

···

On Mon, 10 Jan 2005 19:45:45 +0900, you wrote:

Check this out:

On the Thought: Thinking in Ruby ... not

Yukihiro Matsumoto wrote:

Hi,

>> The lack of English documentation was the biggest
>> (perhaps only) weakness in Ruby.
>
>Exactly. I don't see any other reason why Ruby didn't take off as well
>as Python.

I don't think so. You have more English documents than in Japanese
these days. So that the reason should be "the lack of documentation"
at most. You might know that many among open source developers are
not good document writers (including myself).

Well, I'm inclined to blame "LAMP".

People are encouraged to use suboptimal tools for a task simply because the tool name fits a snappy acronym.

If matz had only picked a name that began with "P", rather than "R" ...

James

···

In message "Re: Python vs Ruby" > on Mon, 10 Jan 2005 17:05:16 +0900, Premshree Pillai <premshree.pillai@gmail.com> writes:

> I think you are being too critical about Python.

You're probably right. My opinion on Python is just based on my personal
experience with it: using Python has the same effect on me then using
Windows, it makes me want to projectile vomit my breakfast (or lunch or

Boy, do you hate Python or what! I haven't seen Ruby users so critical
about Python.

···

On Mon, 10 Jan 2005 02:11:29 +0900, Luc Heinrich <lucsky@mac.com> wrote:

Premshree Pillai <premshree.pillai@gmail.com> wrote:

dinner depending on the time of day I am doing this). So yeah, my
comment might have a little bias :wink:

> There are not many _major_
> differences between the two languages from the POV of a language user.

Well, my opinion is that Ruby has been designed, while Python has been
tinkered, and this makes one hell of a difference from the POV of a
language user, because quite frankly, it shows. :>

--
Luc Heinrich - lucsky@mac.com

--
Premshree Pillai

Hello Premshree,

Orthogonal OO design, blocks and open classes are in my opinion the only
serious differences in the language. A mark-sweep GC vs. reference
counting GC is also a huge difference but only visible in the C-API.

Yes, that's one of the major differences I point out when I compare
Ruby with Python. The other thing I used to point out was that Ruby
doesn't have a "self" for instance variables :smiley: I can't use that
anymore, though: that has been elminated now, I'm told.

But Ruby uses @ and @@ as a prefix, also not 100% perfect.
And no, Python still have "self" or "current" or however you want to call
the first argument.

···

--
Best regards, emailto: scholz at scriptolutions dot com
Lothar Scholz http://www.ruby-ide.com
CTO Scriptolutions Ruby, PHP, Python IDE 's

I guess this is his response to your mail then:

http://onthethought.blogspot.com/2005/01/thinking-in-ruby-not.html

Jeff Wood wrote:

Premshree Pillai wrote:

>
>
>>Another one: Bruce Eckel (for whom I had lots of respect) has said

that

>>Ruby is not worth learning compared to Python (which is why I lost

all

>>the respect I had for him, poof, instantly gone, bye bye), so

Python

>>wins again.
>>
>>
>
>That was in a FAQ, right? That comment doesn't exist anymore, I

think.

>Maybe he changed his views or something. :slight_smile:
>
To all interested parties:

I've corresponded with Mr. Eckel directly about Ruby ( recently ...

like

November '04 )

His response was that he had looked at it a "years ago" and that it
seemed "very perlish". So, he stated that he's "been following it
peripherally".

He also stated "If I get a chance to take a tutorial, I will probably

try to do so."

I'm only giving snippets because I want to protect Mr. Eckel's

privacy

as much as I can.

Since this email, I have sent further email including at least what

*I*

consider to be the top 3 tutorials for Ruby ( online )....

Pickaxe Online ...
Why's Poignant Guide ...
and, the Tutorial included in the standard documentation.

Anyways, there's the $0.02 I know about this topic. Hope it helps

somebody.

···

>On Mon, 10 Jan 2005 01:36:22 +0900, Luc Heinrich <lucsky@mac.com> wrote:

j.

Hi.

i've found that when someone becomes a 'python person' they
absolutely REFUSE to consider another language.

Yeah, that's what I said about that: you can't talk on a nice way with them
anymore. :-p

- ----------------------------
Eustáquio "TaQ" Rangel
eustaquiorangel@yahoo.com

Usuário GNU/Linux no. 224050

>Check this out:

>On the Thought: Thinking in Ruby ... not

i've found that when someone becomes a 'python person' they
absolutely REFUSE to consider another language.

With all due respect, I'd disagree here. I have been a long time
Python user; I have talked about Python at conferences and stuff. Now
I educate folks about Ruby. And I _still_ use Python.

I have started liking Ruby a lot, yes. However, I must add that it
_is_ difficult for a Python user to even get motivated to learn a new
language. Had I discovered Ruby earlier, it would have been extremely
difficuly for me to think of Python.

···

On Mon, 10 Jan 2005 21:52:59 +0900, tony summerfelt <snowzone5@hotmail.com> wrote:

On Mon, 10 Jan 2005 19:45:45 +0900, you wrote:

personally i'm of the mind of 'right tool for the job'. and for me
python doesn't seem to be the right tool for anything.

somebody with mr. eckel's smarts should know better...can you imagine
what he could do with 'thinking in ruby'

in that blog he's guilty of the same thing he accuses ruby of:

'Of course I only get bits and pieces, usually from people who don't
know Python trying to convince me that Ruby is better,'

and rubyist's get it the other way around :slight_smile:

the main argument that python programmers use to use is that python
is OO from the ground up. clearly it's not, but ruby is...and i think
that sticks in their craw more than then they'd like to admit...

rather than get bombarded by moronic hatemail (as happened last time
when i point all this out) i'm leaving it at that...

http://home.cogeco.ca/~tsummerfelt1
telnet://ventedspleen.dyndns.org

--
Premshree Pillai

tony summerfelt wrote:

rather than get bombarded by moronic hatemail (as happened last time
when i point all this out) i'm leaving it at that...

http://home.cogeco.ca/~tsummerfelt1
telnet://ventedspleen.dyndns.org

There's also this page
http://www.ruby-doc.org/RubyEyeForThePythonGuy.html

which was created with the (naive) idea of reducing the amount of bandwidth spent on P vs. R

James

Yukihiro Matsumoto wrote:
> Hi,
>
>
> >> The lack of English documentation was the biggest
> >> (perhaps only) weakness in Ruby.
> >
> >Exactly. I don't see any other reason why Ruby didn't take off as well
> >as Python.
>
> I don't think so. You have more English documents than in Japanese
> these days. So that the reason should be "the lack of documentation"
> at most. You might know that many among open source developers are
> not good document writers (including myself).

Well, I'm inclined to blame "LAMP".

People are encouraged to use suboptimal tools for a task simply because
the tool name fits a snappy acronym.

If matz had only picked a name that began with "P", rather than "R" ...

Heh, once one of my friends called me a LAMeR. :smiley:

···

On Tue, 11 Jan 2005 00:38:50 +0900, James Britt <jamesUNDERBARb@neurogami.com> wrote:

> In message "Re: Python vs Ruby" > > on Mon, 10 Jan 2005 17:05:16 +0900, Premshree Pillai <premshree.pillai@gmail.com> writes:

James

--
Premshree Pillai

I agree, beauty is a tremendous asset of a language.

Pleasure in the reading and writing of the code must most definitely have some
postive impact on the productivity of the programmer.

Even in the thread you reply to it has a comment from Tim Peters on Python:

http://www.ruby-talk.org/cgi-bin/scat.rb/ruby/ruby-talk/125873
Beautiful is better than ugly.

Erlang programmers like beautiful code also.
I believe they qualify for "serious" programmers also.

Joe Armstrong says in a message on the Erlang list:
http://www.erlang.org/ml-archive/erlang-questions/200301/msg00260.html

"""I never said "write dumb code" - to me beautiful code is clear,
"""concise and does *exactly* what it is supposed to and *nothing* else
"""with a minuimum of fuss. It usually ends up being faster than ugly
"""code - that's because God likes your code if it's beautiful.
"""
"""Think of code as an exercise in applied poetry - rather like Haiku
"""only more difficult - now writing Haiku Erlang functions *that* would
"""be difficult

And in another message by Chris Pressey:
http://www.erlang.org/ml-archive/erlang-questions/200303/msg00508.html

"""Plenty are the languages with which you can crank out code,
"""and plenty are the languages with which you can write beautiful code.
"""Rare is the language with which you can crank out beautiful code...

It sounds like David thinks that Ruby is just such a language.
By David's performance, I would have to agree. :slight_smile:

And one last quote from Joe Armstrong:
http://www.erlang.org/ml-archive/erlang-questions/200202/msg00031.html

"""Given the choice you should always choose beauty over efficiency -
"""It will probably turn out the that the beautiful solution will be
"""fast enough anyway.
"""
"""It is, after all, easy to make an incorrect program run arbitrarly fast
"""
"""If, and it can happen, the final beautiful program is too slow
"""then you will be in a good position to optimise the algorithm
"""since it should at least be clear what the thing is supposed to do
"""and you will have a good set of test cases to test your
"""efficient version on.

I am slowly working my way through the PickAxe II book and am enjoying it and
what I see.

I am very glad a post on c.l.python spurred me on to explore Rails and thus
Ruby. :slight_smile:

I like what I have found.

Jimmie Houchin

···

On Mon, 10 Jan 2005 08:17:11 +0900, David Heinemeier Hansson <david@loudthinking.com> wrote:

IMHO the different syntax shouldn't be an argument for a "serious"
programmer.

Please count me out as a serious programmer, then. I care deeply about
the aesthetics of Ruby. I derive great joy from writing beautiful
programs. Ruby let's me write the most beautiful programs I've ever
done. Ergo, Ruby makes me happy.

I couldn't think of a higher praise to bestow upon a programming
language.

> IMHO the different syntax shouldn't be an argument for a "serious"
> programmer.

Please count me out as a serious programmer, then. I care deeply about
the aesthetics of Ruby.

Well... he did put it in quotes. I think what he means by "serious" is
someone who writes code simply to get a job done - nothing more.
"Serious" is the wrong word, it implies that people who cares about
more than the functionality are not "serious", which is BS. I find
that people who care what their code looks like end up caring more
about the functionality and how that functionality is used/accessed in
the long run than people who only care about the inital "working"
state. (For me, a good programmer will be able to work in both modes:
a problem may recieve an "ugly" solution to start with, but over time
that would be refactored into "nice" code. If it wasn't, then the ugly
code would more than likely build up and choke the applicatin into a
ground up rewrite, much like fat deposits building up in arteries.)

Douglas