Convention and performance [] versus

Discussion in 'Ruby' started by Ryan Hinton, Jan 27, 2006.

  1. Ryan Hinton

    Ryan Hinton Guest

    Is there any reason to use [] over or vice versa? Is there a
    performance benefit? Is there any convention in this area? What about
    {} versus

    Ryan Hinton, Jan 27, 2006
    1. Advertising

  2. Ryan Hinton

    James H. Guest

    I can't directly answer your question, but something to consider is
    that Ruby has *numerous* ways to do the same thing. Just look in the
    documentation for the different ways to denote strings. I haven't
    tested it, but I tend to think that these options don't differ much in
    James H., Jan 27, 2006
    1. Advertising

  3. Ryan Hinton

    Ryan Hinton Guest

    I completely forgot about strings. Any suggestions in that area are
    welcome as well.

    I am familiar with the Perl approach (whatever that long acronym is) of
    having lots of ways to do things. I heard about a study of different
    people's Perl code where you actually end up with different dialects.
    Beginners can write code fairly easily by using a dialect they are
    comfortable with. However, it took a Perl expert to understand code in
    someone else's dialect.

    As much as convenient, I would like to make my Ruby code readable by
    the majority of other Ruby coders (and non-Ruby coders?). So I am
    interested in following any good conventions. (Is there a good source
    of conventions and idioms for Ruby?). And if I can get a free
    performance boost by using a different idiom, I'm all for it.

    Ryan Hinton, Jan 27, 2006
  4. Ryan Hinton wrote:
    > Is there any reason to use [] over or vice versa? Is there a
    > performance benefit? Is there any convention in this area? What about
    > {} versus
    > Thanks! and Array.[] are pretty much totally different. Same for {}
    and I think the convention is to read the docs and use them
    where appropriate :)

    Charles Mills, Jan 27, 2006
  5. Ryan Hinton

    Zak Kriner Guest

    I wouldn't worry about the performance in your example too much. If you
    are worried anyway you can monkey w/ the 'Benchmark' module (the docs,
    at, give examples).

    maybe something like this maybe?:

    require 'benchmark'
    puts Benchmark.measure { 100_000.times { } }
    puts Benchmark.measure { 100_000.times { [] } }

    Regarding conventions/idioms, here are just a few links to get you
    started, I'm sure there are many more if you look around a bit.

    Another good way to learn good ruby coding is to look at well written
    ruby code (the ruby core, rails, etc.).

    Good luck,
    Zak Kriner, Jan 27, 2006
  6. Ryan Hinton

    Ryan Hinton Guest

    Thanks for the excellent suggestions. At least on my machine (Pentium
    M laptop, 512 MB RAM) and take 50% to 100%
    longer than [] and {}. Consequently, I will prefer the latter notation
    for now. I think I have read most of the pages you referenced, but I
    haven't delved into the core or Rails yet. I have kept an eye on the
    Ruby quiz, though, from which I've gleaned some good tidbits. Thanks
    Ryan Hinton, Jan 28, 2006
    1. Advertising

Want to reply to this thread or ask your own question?

It takes just 2 minutes to sign up (and it's free!). Just click the sign up button to choose a username and then you can ask your own questions on the forum.
Similar Threads
  1. Matthew Louden
    Scott M.
    Oct 11, 2003
  2. jm
    Dec 12, 2003
  3. Russ

    script versus code versus ?

    Russ, Jun 10, 2004, in forum: ASP .Net
  4. Christoffer Sawicki
    Christoffer Sawicki
    Sep 2, 2006
  5. Paul Butcher
    Gary Wright
    Nov 28, 2007

Share This Page