TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

FastR: An implementation of the R language in Java [pdf]

85 pointsby susi22over 11 years ago

8 comments

brendanoover 11 years ago
The programming language analysis is pretty interesting, but you have to ask, what&#x27;s the point of a brand-new Java implementation? R isn&#x27;t just a programming language, but it&#x27;s a software framework&#x2F;ecosystem. They mentioned this in the slides, but it&#x27;s problematic because R <i>crucially</i> relies on C and Fortran interaction (which I thought the JVM can&#x27;t do efficiently, since it doesn&#x27;t like giving C&#x2F;Fortran raw memory access to its internals). Decades of work has gone into highly optimized Fortran linear algebra libraries, for example -- which R and all the other high-level numerical languages (NumPy&#x2F;SciPy, Matlab, Julia) use. And many of the CRAN packages (the availability of which are a major reason anyone uses R in the first place) are partly or mostly C&#x2F;Fortran code.<p>There are many other R implementation efforts going on right now -- Radford Neal lists a few (as well as his own) here: <a href="http://radfordneal.wordpress.com/2013/07/24/deferred-evaluation-in-renjin-riposte-and-pqr/" rel="nofollow">http:&#x2F;&#x2F;radfordneal.wordpress.com&#x2F;2013&#x2F;07&#x2F;24&#x2F;deferred-evaluat...</a><p>The presentation focuses on the R programming language, which they nicely show has all sorts of misfeatures that impede rapid execution. If you&#x27;re going to not try to have compatibility with R and CRAN, you might as well start from scratch with design and performance in mind, as in Julia: <a href="http://julialang.org/" rel="nofollow">http:&#x2F;&#x2F;julialang.org&#x2F;</a>
评论 #6746132 未加载
评论 #6745494 未加载
评论 #6745779 未加载
th0br0over 11 years ago
FWIW, there&#x27;s also Renjin that does this: <a href="https://github.com/bedatadriven/renjin" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;bedatadriven&#x2F;renjin</a>
ubasuover 11 years ago
Given the problems with Java&#x27;s floating-point implementation [1], would this be reliable for statistical analysis?<p>[1] <a href="https://news.ycombinator.com/item?id=6585828" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=6585828</a>
评论 #6746317 未加载
评论 #6748319 未加载
评论 #6746314 未加载
susi22over 11 years ago
Video presentation for the slides:<p><a href="http://download.oracle.com/technetwork/java/javase/community/H264_1280x720/20144523.mov" rel="nofollow">http:&#x2F;&#x2F;download.oracle.com&#x2F;technetwork&#x2F;java&#x2F;javase&#x2F;community...</a>
noahmarcover 11 years ago
The Relite mention at the end looks very worthwhile. We were just about to begin a large rewrite of analysis code from R to CUDA; Relite has the potential to save the effort of rewriting our existing code.
评论 #6749541 未加载
moondownerover 11 years ago
Worth noting is that FastR is a JVM implementation of R that uses Truffle and Graal.<p><a href="http://openjdk.java.net/projects/graal/" rel="nofollow">http:&#x2F;&#x2F;openjdk.java.net&#x2F;projects&#x2F;graal&#x2F;</a><p><a href="https://wiki.openjdk.java.net/display/Graal/Publications+and+Presentations" rel="nofollow">https:&#x2F;&#x2F;wiki.openjdk.java.net&#x2F;display&#x2F;Graal&#x2F;Publications+and...</a>
Demiurgeover 11 years ago
Are there any tools to convert R to JS or Python, or... any other common language that doesn&#x27;t require a 60mb runtime distribution?
评论 #6745445 未加载
评论 #6745405 未加载
评论 #6746286 未加载
knodiover 11 years ago
more java -_- I need less java in my life, not more.
评论 #6746282 未加载