Why I'm Excited about D
Ary Borenszweig via Digitalmars-d
digitalmars-d at puremagic.com
Wed Apr 8 07:22:26 PDT 2015
On 4/8/15 4:59 AM, Jacob Carlborg wrote:
> On 2015-04-07 19:46, Ary Borenszweig wrote:
>
>> It's true that Ruby is slow, but only because their priority is
>> correctness.
>
> I don't think it's so much about the correctness, it's rather the
> complicated features it supports, like metaprogramming. eval and
> bindings are causing problems, also promoting Fixnum to Bignum when it
> doesn't fit is a problem.
The autopromotion of Fixnum to Bignum is interesting. It always leads to
correct code, although it's slow.
Without this feature you start to realize how week are other languages.
For example, take the simple problem of parsing a number out of a
string. In Ruby it's:
"123".to_i #=> 123
But this also works:
"12398123091823091823091823091823091820318203123".to_i #=>
12398123091823091823091823091823091820318203123
In typed language one would be forced to make a decision for the return
type of to_i. Maybe if it doesn't fit in an Int32 or Int64 raise an
exception or signal an error somehow. In Ruby you just forget about
these little problems, it will always work and give the correct result.
That's one of the reasons I think it's bad to say that Ruby is not a
"correct" language.
More information about the Digitalmars-d
mailing list