Live data from Hacker News

MRI Developers Don't Use RubySpec and It's Hurting Ruby

rubini.us

81–90 of 118 posts

Re: MRI Developers Don't Use RubySpec and It's Hurting Ruby

#81
post #35

Earlier quoted context omitted.

They have used and contributed to RubySpec in the past, but many (like me) were turned off by the maintainers' attitudes toward contributors and lack of respect. For example, see the zenspider link elsewhere in this thread. Nobody questions RubySpec as a project. But there are many nontechnical reasons why it was never adopted wholeheartedly by ruby-core.

Now that the main maintainer quit, can those nontechnical reasons be resolved?

Hopefully. I would be willing to take a crack at it.

Re: MRI Developers Don't Use RubySpec and It's Hurting Ruby

#83
post #6

The thing I find depressing and frustrating about this kind of discussion is the fatalism and non-constructiveness. I really wish it was: "I set up a server that runs ruby spec on ruby-head daily and automatically reports spec failures to ruby-bugs" So many companies are making big bucks off Ruby, yet so little are willing to fork out a bit of money and time to make Ruby better.

> So many companies are making big bucks off Ruby, yet so little are willing to fork out a bit of money and time to make Ruby better. And why would/should they when there are quite literally dozens (or possibly hundreds or even thousands) of developers who will happily work on "making Ruby better" for no cost to said companies?

A large percentage of software developers will quite happily hack away at projects for nothing in return simply because they enjoy it (and would, quite incorrectly, claim that as compensation itself), in order to gain notoriety, boost their own ego, or any of a number of related reasons.

Re: MRI Developers Don't Use RubySpec and It's Hurting Ruby

#84
> Later that year, at RubyConf 2008, I gave a talk titled, What Does My Ruby Do about RubySpec. Matz and several other MRI developers attended. Immediately after my talk, contributors to Rubinius sat down with Matz and other MRI developers to discuss their effort to create an ISO specification for Ruby. We asked whether RubySpec could be part of the specification but were told that it was not appropriate to include it.

This seems telling.

Does anyone have any concrete information about why Matz and the Ruby team are opposed to using RubySpec then?

Has there been any progress on creating an ISO spec?

EDIT: It seems Ruby has a published ISO spec since April 2012 - http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_...

Re: MRI Developers Don't Use RubySpec and It's Hurting Ruby

#85
It's disappointing to hear about such problems with Ruby. I hit the same problem with the Groovy Language spec when I first came across Groovy. Its creator, James Strachan, initiated an implementation, test kit, and spec all within 6 months of each other (impl beta-1 in Dec 2003, and spec JSR-241 in May 2004). The project managers who took over from him, Graeme Rocher and Guillaume Laforge, changed direction by stopping work on the spec and refocusing the Groovy reference implementation to be the scripting language behind Grails. (Of course, Groovy 'n' Grails was intended to chisel away at some of the market share of Ruby on Rails but that's another story.) Strachan often wrote that the spec was to enable anyone to make their own implementation of Groovy if they want to, and right up to his very last posting ever http://groovy.329449.n5.nabble.com/Paris-write-up-tt395560.h... on the Groovy mailing list on 5 Dec 2005, he maintained that what they were building was the reference implementation.

If Rocher and Laforge had come clean about how they turned the RI into the language itself, the backlash might have blown over quickly, but instead they led developers along for many years afterwards, not changing the spec to dormant until April 2012. Projects other than Grails who've tried to build atop Groovy have had to risk the ref impl changing in breaking ways between versions. The most spectacular incident was when Groovy++, an experimental static compiler built by Alex Tkachman that hooked via annotations into Groovy's AST, had to drop back down from Groovy 1.8 to 1.7 in 2011, and my own side project was also affected by the change. It turned out Rocher and Laforge had secretly employed a mate to extend Groovy with the exact same static type-checking and compilation functionality as Groovy++ and were obviously trying to shake us off.

Unlike Ruby, Groovy only has one other implementation, GrooScript, built by Jorge Franco, which generates JavaScript from Groovy syntax. When the developers of the most used implementation of a language want to protect their control, it certainly does hurt the ecosystem, turning it into an "echo system".

Re: MRI Developers Don't Use RubySpec and It's Hurting Ruby

#86

> Later that year, at RubyConf 2008, I gave a talk titled, What Does My Ruby Do about RubySpec. Matz and several other MRI developers attended. Immediately after my talk, contributors to Rubinius sat down with Matz and other MRI developers to discuss their effort to create an ISO specification for Ruby. We asked whether RubySpec could be part of the specification but were told that it was not appropriate to include i…

[deleted]

Re: MRI Developers Don't Use RubySpec and It's Hurting Ruby

#87
post #40

Earlier quoted context omitted.

At least the bugs are documented. Ruby bugs just are, theres nothing confirming them. Java bugs need to stay there because if they were fixed then it would be a backward incompatible change.

That attitude is exactly why I have no interest in working with Java.

Wait, you're saying you'd prefer undocumented bugs and a constant stream of breaking changes to the runtime that force you to constantly port and report existing, working code?

I don't get it... the Java way seems pretty right to me. That said, I will allow that they might have been a little bit too rigid about not allowing breaking changes. At the very least this policy has resulted in Java evolving more slowly than it might have otherwise. But I don't necessarily find that to be unacceptable, all things told.

Re: MRI Developers Don't Use RubySpec and It's Hurting Ruby

#88

Earlier quoted context omitted.

If MRI fails RubySpec specs, and the MRI developers didn't write those specs, is that a bug in RubySpec or MRI? It's egotistical because he's saying they should make their project conform to his third party specification.

A segfault from running interpreted code is definitely an MRI bug.

Unless there are third party C extensions involved.

Re: MRI Developers Don't Use RubySpec and It's Hurting Ruby

#90
post #82

What of the ISO standard that mRuby is based on? http://www.iso.org/iso/iso_catalogue/catalogue_tc/catalogue_... Aw crap, I have to buy this doc to see it?

The final draft is available: https://www.ipa.go.jp/osc/english/ruby/

But the ISO document is mostly irrelevant, if we talk about Ruby implementations like CRuby, JRuby, or Rubinius.

Post reply on HN