Want to read Slashdot from your mobile device? Point it at m.slashdot.org and keep reading!

 



Forgot your password?
typodupeerror
×
Ruby Programming Python Science

SciRuby: Science and Matrix Libraries For Ruby 138

Aciel writes "Ruby has long been popular in the web/business community, while Python dominates the scientific community. One new project seeks to bring balance to the force: SciRuby. We've already introduced a linear algebra library called NMatrix (currently alpha status). There's at least one fellowship available for students interested in working on the project this summer."
This discussion has been archived. No new comments can be posted.

SciRuby: Science and Matrix Libraries For Ruby

Comments Filter:
  • by phantomfive ( 622387 ) on Wednesday May 09, 2012 @12:07AM (#39937745) Journal
    Given that Python and Ruby are 8th and 11th respectively on the Tiobe index [tiobe.com] with a combined rating of 5%, it's more like the Special Olympics. (yes, mod me troll)
  • Re:I always thought (Score:4, Interesting)

    by phantomfive ( 622387 ) on Wednesday May 09, 2012 @12:58AM (#39937957) Journal
    Because people like using different indentation styles, which sometimes can be clearer. For example, something like this:

    //ensure all sides are checked
    if(!checkedUp() ) checkUp();
    if(!checkedDown() ) checkDown();
    if(!checkedLeft() ) checkLeft();
    if(!checkedRight() ) checkRight();

    can be a lot more concise and readable than a forced indentation method. Flexibility is a good thing. It is ok if you don't like the style I just demonstrated, but you should be able to understand that other people do.
  • Re:I always thought (Score:3, Interesting)

    by seanzig ( 834642 ) on Wednesday May 09, 2012 @01:09AM (#39938011)

    Nothin' wrong with that, my friend. To translate to Python:

    # ensure all sides are checked
    if not checkedUp(): checkUp()
    if not checkedDown(): checkDown()
    if not checkedLeft(): checkLeft()
    if not checkedRight(): checkRight()

  • In my experience, scientists will do just about anything to convince themselves that they're not actually programming, if only to avoid pesky annoyances like source code control. The less it looks like a programming language, the better.

    Oh god. That would explain why none of their code looks like it's written in a programming language.*

    * I work with biologists. By 'they,' I mean biologists. I know you physicists and quantum chemists have it lucky. Stop bragging. You're making me feel bad.

  • Re:Non-story (Score:3, Interesting)

    by bwv549 ( 1730430 ) on Wednesday May 09, 2012 @02:19AM (#39938303)

    The slowdown in commits to sciruby proper is due to the recent efforts on nmatrix (the subject of the story). The github commit history [github.com] is easily accessible and shows a flurry of activity. Many projects associated with sciruby are also not housed directly under the sciruby name (e.g., rubyvis [rubyforge.org])

    There are a million minor projects like this that similarly aren't newsworthy enough to discuss

    ... yet here we are...

    The lack of comparable scientific libraries is the primary reason many folks choose python over ruby. It's true that sciruby is young and doesn't yet compete with scipy/numpy, but the point is that it continues to pick up steam. A lot of folks who would rather code in ruby think this matters.

  • by bwv549 ( 1730430 ) on Wednesday May 09, 2012 @02:54AM (#39938465)

    Unfortunately it ignores the alternative of just using Python

    The option of using python is implicitly rejected. Why would the contributors spend time on sciruby when they clearly know scipy exists? Speaking for myself, I've used python and scipy (both numpy and matplotlib) for several projects, but I much prefer coding in ruby to python. All the functionality of scipy isn't going to be duplicated with sciruby, but if the most common use cases are implemented, then I can use ruby for most projects.

    this is a misguided waste of time

    why? It's easier to re-implement (i.e., borrow from scipy) than implement in the first place, so it doesn't take all that much time. And, as pointed out, this is currently a minor project compared to scipy, so if it is a waste of time then it's not a lot of it.

    Python has a "there is only one true way" mentality, so there isn't a lot of room to try and innovate within scipy. Perhaps sciruby will innovate in significant ways and scipy will draw a little from it one day.

    and it's nearly inactive anyway

    The fellowship and nmatrix commit history [github.com] would suggest otherwise.

  • by Anonymous Coward on Wednesday May 09, 2012 @03:24AM (#39938557)

    No, seriously, that's the most significant thing it brings to the table. With a minimal amount of functionality implemented, far more scientific problems can be addressed in ruby and integrated into a larger, thriving ecosystem (>38,000 ruby gems and counting). Ruby already has strong web applications; complemented with better science libraries a lot of great science can be accomplished (opentox [opentox.org] is an interesting example of this kind of integration)

    Sciruby brings ruby to the scientific programming table. Anything else sciruby accomplishes is icing on the cake.

I have hardly ever known a mathematician who was capable of reasoning. -- Plato

Working...