Gary Willoughby: "Why Go's design is a disservice to intelligent programmers"
Idan Arye via Digitalmars-d-announce
digitalmars-d-announce at puremagic.com
Sun Mar 29 09:32:31 PDT 2015
On Sunday, 29 March 2015 at 15:57:18 UTC, Andrei Alexandrescu
wrote:
> On 3/29/15 4:43 AM, "Marc =?UTF-8?B?U2Now7x0eiI=?=
> <schuetzm at gmx.net>" wrote:
>> On Sunday, 29 March 2015 at 08:37:54 UTC, Idan Arye wrote:
>>> On Saturday, 28 March 2015 at 18:47:04 UTC, Walter Bright
>>> wrote:
>>>> On 3/28/2015 3:20 AM, Jonathan M Davis via
>>>> Digitalmars-d-announce wrote:
>>>>> Personally, I'm not sure that much is gained in pitting Go
>>>>> against D
>>>>> precisely because they're so different that they're likely
>>>>> to appeal to
>>>>> completely different sets of people.
>>>>
>>>> I also do not regard Go as a competitor to D. It's more of a
>>>> competitor to Java and Ruby.
>>>
>>> How is Go a competitor to Ruby? I cannot think of a single
>>> parameter
>>> where Go and Ruby don't take the exact opposite
>>> approach!(other than
>>> the obvious ones like "both use require the programmer to
>>> write code")
>>
>> I think it's more of a competitor to Rails. Ruby as a language
>> is as you
>> say very different from Go. Incidentally, it shows that it is
>> possible
>> to make a language simple without crippling it.
>
> ... but efficiency. Ruby is 50 times slower than all languages,
> including itself.
>
> Andrei
Not to mention orthogonal safety. Even for a dynamically typed
scripting language Ruby sacrifices a lot of safety. Not
memory-wise but orthogonality-wise - it's design is very hackish,
and you can remove an import("require") to foo.rb from bar.rb
thus causing a bug in baz.rb that was importing bar.rb and thus
indirectly importing qux.rb because foo.rb was importing it, and
qux.rb is monkey-patching class Qux to override some method to
return a different value. Have fun trying to debug this!
Computer science is all about tradeoffs. I used to love Ruby, but
then a Rails project got out of hand... Nowadays I use it mainly
as a bash replacement - Hundredfolds more expressive, only a tiny
tiny bit syntax overhead, and for things that bash's safety would
be enough Ruby's certainly suffices.
More information about the Digitalmars-d-announce
mailing list