Slashdot Mirror


SciRuby: Science and Matrix Libraries For Ruby

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."

7 of 138 comments (clear)

  1. Re:"while Python dominates the scientific communit by phantomfive · · Score: 2, Interesting

    Given that Python and Ruby are 8th and 11th respectively on the Tiobe index with a combined rating of 5%, it's more like the Special Olympics. (yes, mod me troll)

    --
    "First they came for the slanderers and i said nothing."
  2. Re:I always thought by phantomfive · · Score: 3, Interesting

    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.

    --
    "First they came for the slanderers and i said nothing."
  3. Re:I always thought by seanzig · · Score: 3, Interesting

    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()

  4. Re:"while Python dominates the scientific communit by Samantha+Wright · · Score: 4, Interesting

    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.

    --
    Bio questions? Ask me to start a Q&A journal. Computer analogies available for most topics!
  5. Re:Non-story by bwv549 · · Score: 3, Interesting

    The slowdown in commits to sciruby proper is due to the recent efforts on nmatrix (the subject of the story). The github commit history 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)

    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.

  6. Re:Tell me one thing this brings to the table by bwv549 · · Score: 4, Interesting

    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 would suggest otherwise.

  7. Re:Tell me one thing this brings to the table by Anonymous Coward · · Score: 3, Interesting

    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 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.