[#3101] Compile_err — "Fergus Hayman" <shayman@...>
[#3109] Is divmod dangerous? — Dave Thomas <Dave@...>
[#3110] my wish list for Ruby — Mathieu Bouchard <matju@...>
[#3119] Re: Min and max? — ts <decoux@...>
>>>>> "M" == Mathieu Bouchard <matju@CAM.ORG> writes:
[#3149] Retrieving the hostname and port in net/http — Roland Jesse <jesse@...>
Hi,
[#3154] 3-d arrays? — Hugh Sasse Staff Elec Eng <hgs@...>
Is there an idiom for 3-dimensional arrays in Ruby? I see that
[#3167] ruby.h needed to compile Interbase module — Jilani Khaldi <jilanik@...>
Hi all,
[#3189] BUG or something? — "Park Hee Sob" <phasis@...>
Hi,
[#3221] Re: Ruby & Interbase -- Please answer if you know! — ts <decoux@...>
>>>>> "J" == Jilani Khaldi <jilanik@tin.it> writes:
[#3222] Ruby coding standard? — Robert Feldt <feldt@...>
On Fri, 9 Jun 2000, Robert Feldt wrote:
Mathieu Bouchard <matju@cam.org> wrote:
[#3277] Re: BUG or something? — Aleksi Niemel<aleksi.niemela@...>
> |I am new to Ruby and this brings up a question I have had
Aleksi Niemel<aleksi.niemela@cinnober.com> writes:
On 12 Jun 2000, Dave Thomas wrote:
ts <decoux@moulon.inra.fr> writes:
[#3296] RE: about documentation — Aleksi Niemel<aleksi.niemela@...>
> I want to contribute to the ruby project in my spare time.
Aleksi Niemel<aleksi.niemela@cinnober.com> writes:
Hi,
On Tue, 13 Jun 2000, Toshiro Kuwabara wrote:
Hugh Sasse Staff Elec Eng <hgs@dmu.ac.uk> writes:
[#3331] Selling Rubies by the Carat — Dave Thomas <Dave@...>
[#3338] PID of child processes — Andrew Hunt <Andy@...>
[#3363] chomp! — "David Douthitt" <DDouthitt@...>
I was looking at the documentation for chomp and chomp! - and the results of chomp startled me to say the least.
"David Douthitt" <DDouthitt@cuna.com> writes:
[#3407] Waffling between Python and Ruby — "Warren Postma" <embed@...>
I was looking at the Ruby editor/IDE for windows and was disappointed with
[#3410] Exercice: Translate into Ruby :-) — Jilani Khaldi <jilanik@...>
Hi All,
Jilani Khaldi <jilanik@tin.it> writes:
Hi,
"NAKAMURA, Hiroshi" <nahi@keynauts.com> writes:
Hi, Dave,
Hello,
[#3453] Re: Static Typing( Was: Waffling between Python and Ruby) — Andrew Hunt <andy@...>
[#3515] Options database (was: Define & Include?) — claird@... (Cameron Laird)
In article <8ikot4$ki$0@216.39.170.247>, Dave LeBlanc <whisper@oz.net> wrote:
[#3516] Deep copy? — Hugh Sasse Staff Elec Eng <hgs@...>
Given that I cannot overload =, how should I go about ensuring a deep
In message "[ruby-talk:03516] Deep copy?"
On Tue, 20 Jun 2000, GOTO Kentaro wrote:
[#3532] Extension in C++? — Robert Feldt <feldt@...>
[#3541] function objects? — Johann Hibschman <johann@...>
Hi folks,
[#3544] A small quiz — Dave Thomas <Dave@...>
[#3588] Interface polymorphism — hal9000@...
Another question, guys.
[#3607] Is there a statistician in the house? — Dave Thomas <Dave@...>
[#3662] Ruby 1.4.5 install from Mandrake cooker rpms ?problem? — Charles Hixson <charleshixsn@...>
This is the first time that I've installed ruby, so
[#3685] no traffic — matz@... (Yukihiro Matsumoto)
Hi,
[#3694] Why it's quiet — hal9000@...
We are all busy learning the new language
Hi,
Hi,
Hi, matz,
Hi,
Hi,
[#3699] Multithreaded/Embedded Ruby? — "Warren Postma" <embed@...>
Is there any information on Thread safety in ruby. Suppose I embed Ruby in a
Hi,
[ruby-talk:03597] Re: Another small quiz
>From: Aleksi Niemel<aleksi.niemela@cinnober.com> >Reply-To: ruby-talk@netlab.co.jp >To: ruby-talk@netlab.co.jp (ruby-talk ML) >Subject: [ruby-talk:03595] RE: Another small quiz >Date: Wed, 21 Jun 2000 23:31:32 +0200 > >Dat: > > The following appeared in chapter 3 of the Ruby's User Guide: > > > > def fact(n) > > if n == 0 > > 1 > > else > > n * fact(n-1) > > end > > end > > > > Is everything OK here? > >I can't see any problem here. We're calculating factorial in a normal >imperative approach using recursion (which eats stack). > >Just don't call fact(-1) or with any negative argument (will eat you stack >faster than you think, but *don't crash*, damn I like Ruby). > >Oh, and if you think why the code works, you can think it to be > >def fact(n) > if n == 0 > return 1 > else > return n * fact(n-1) > end > # puts n >end > >The difference between the chapter 3 example and this code is that the >latter will work even if you remove the comment character (but it won't >print anything, if you happened to think so) whereas the chap 3 version >won't. > >To amaze a little bit more (at least I was amazed with this), one can >rewrite: > >def fact(n) > ret = > if n == 0 > 1 > else > n * fact(n-1) > end > puts n > ret >end > >Now we assign to ret the value of the whole if-else-end construct, which >happens to be 1 or n*fact(n-1) depending of the if condition, then we print >n and finally return the value of ret. > >If one doesn't say explicitly "return some_var" the return value of the >function is the last evaluated value, that is the value of the last >executed >code. > > - Aleksi > Nothing is wrong. When I watched fact with bigger arguments, the recursion gets slower and slower, so I wonder if recursion is fine in interpretative environment. I cannot recall who advised to replace recursion with iteration wherever possible; even though it is claimed that recursion is natural but complicated recursion is not easy to grasp. I prefer: def fact(n) if n < 0 raise "argument negative" end fact = 1 for i in 2..n fact *= i end fact end ________________________________________________________________________ Get Your Private, Free E-mail from MSN Hotmail at http://www.hotmail.com