Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Even better, reimplement the interpreter with modern data structures...


Glad I'm not the only one bugged by this.

Next time I think I might try the http://rubyforge.org/projects/rsruby/ bindings instead.


I would recommend http://rpy.sourceforge.net/rpy2.html (I'm biased, though ;))


Didn't they try that once? And instead of fixing things they ended up with two sets of broken data structures? I could be mistaken.


Go ahead... :)


Would you please be so kind and explain in some more detail what you mean? Thank you!


Well, as far as I remember lists (which are used like hash tables, as they associate variables with names, see http://cran.r-project.org/doc/manuals/R-lang.html#List-objec...), implement indexing as an O(n) operation. Only after they reach a certain size are they converted to a hash table.

Everything is pass by value with some cases being marked as 'safe', i. e. if you know beforehand the variable won't be changed it's not copied to save time.

The reason for this is that the project was designed by people who were primarily statisticians, and the most glaring performance problems were later fixed by hacks and 'special cases'.

Disclaimer: Most of this I know second hand from a coworker who's an author of many R packages. I worked with R's interface to C and it wasn't a pleasant experience.


Even better, write a statistical module for scipy that's competitive with R.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: