[#393742] Getting the class of an object. — Ralph Shnelvar <ralphs@...32.com>

Consider;

14 messages 2012/03/06

[#393815] arcadia IDE requires tcl/tk and ruby-tk — Thufir Hawat <hawat.thufir@...>

which or where tcl and tk does arcadia require? Is this a gem which I

13 messages 2012/03/13

[#393952] What’s the best way to check if a feature/class has been loaded? — Nikolai Weibull <now@...>

Hi!

18 messages 2012/03/21
[#393953] Re: What’s the best way to check if a feature/class has been loaded? — Xavier Noria <fxn@...> 2012/03/21

Active Support has recently added qualified_const_* methods to Module

[#393954] Re: What’s the best way to check if a feature/class has been loaded? — Xavier Noria <fxn@...> 2012/03/21

Ah, that won't work in 1.8.

[#393959] Re: What’s the best way to check if a feature/class has been loaded? — Nikolai Weibull <now@...> 2012/03/21

On Wed, Mar 21, 2012 at 16:43, Xavier Noria <fxn@hashref.com> wrote:

[#393960] Re: What’s the best way to check if a feature/class has been loaded? — Xavier Noria <fxn@...> 2012/03/21

On Wed, Mar 21, 2012 at 8:17 PM, Nikolai Weibull <now@bitwi.se> wrote:

[#393961] Re: What’s the best way to check if a feature/class has been loaded? — Nikolai Weibull <now@...> 2012/03/21

On Wed, Mar 21, 2012 at 20:48, Xavier Noria <fxn@hashref.com> wrote:

[#393962] Re: What’s the best way to check if a feature/class has been loaded? — Xavier Noria <fxn@...> 2012/03/21

On Wed, Mar 21, 2012 at 9:51 PM, Nikolai Weibull <now@bitwi.se> wrote:

[#393967] Re: What’s the best way to check if a feature/class has been loaded? — Nikolai Weibull <now@...> 2012/03/22

On Wed, Mar 21, 2012 at 22:11, Xavier Noria <fxn@hashref.com> wrote:

[#393969] Re: What’s the best way to check if a feature/class has been loaded? — Xavier Noria <fxn@...> 2012/03/22

On Thu, Mar 22, 2012 at 6:15 AM, Nikolai Weibull <now@bitwi.se> wrote:

[#394154] uninitialized constant SOCKSSocket — Resident Moron <lists@...>

I am running ruby 1.9.3 on a linux box. I would like to use

10 messages 2012/03/29

[#394160] Why z = Complex(1,2) rather than z = Complex.new(1,2)? — Ori Ben-Dor <lists@...>

What's this syntax, z = Complex(1,2), as opposed to z =

14 messages 2012/03/29

[#394175] shoes no such file to load -- rubygems — Mr theperson <lists@...>

I have installed shoes to develop GUI applications but when I try and

13 messages 2012/03/29

[#394201] Can't open url with a subdomain with an underscore — Jeroen van Ingen <lists@...>

I try to open the following URL: http://auto_diversen.marktplaza.nl/

10 messages 2012/03/30

[#394222] Ruby openssl ECC help plz — no name <lists@...>

I am confused on how to properly export public ECC key. I can see it

13 messages 2012/03/31

Re: Ruby speed compared to C in a simple calculations.

From: Josh Cheek <josh.cheek@...>
Date: 2012-03-24 17:55:45 UTC
List: ruby-talk #394041
On Sat, Mar 24, 2012 at 11:45 AM, Роман Ткаленко <rain.roman@gmail.com>wrote:

> #works for 3.55 mins
> P = 295075153
> o1 = 210205973
> o2 = 22795300
> (0 .. P).each do | i |
>     if i ^ (i ^ o1) == o1 and ((i * 2 + 5) % P) ^ (((i ^ o1) * 3 + 7) % P)
> == o2
>         puts i
>         break
>     end
> end
> Code written in C gives me the solution in only 2 seconds. I suppose that
> it's called not by ruby slowlyness, but my shitty coding abilities. Cuold
> tou please tell me the weaknesse of the code?
>

It's not shitty coding (though I do find your code unreadable). It's
because C is compiled into assembly, when you tell it to iterate that many
times, it can put the number directly into a register and decrement the
value. Ruby is much higher level than that. Numbers are actual objects that
must be allocated, for example. So an example like this, C is going to
dramatically outperform Ruby.

Like anything, there are tradeoffs. For instance, by representing numbers
with just binary values that fit into C's int type, you your program up to
the limitations of that type (e.g. in Ruby you can have arbitrarily large
numbers `$ruby -e 'p 2**2000'`).

And, of course, the Ruby version uses a closure. ANSI C doesn't have
closures, which prevents it from being able to support very powerful coding
styles (i.e. many of the things Lisp is famous for).

So, really its best to figure out what your domain is and find a language
well suited to that. If your domain is hardcore number crunching, then Ruby
is probably not the best choice (though I did solve a number of Project
Euler problems with it).

-Josh

In This Thread