When comparing R vs J, the Slant community recommends J for most people. In the question“What are the best (productivity-enhancing, well-designed, and concise, rather than just popular or time-tested) programming languages?” J is ranked 34th while R is ranked 46th. The most important reason people chose J is:
3 classes of operators (verbs, adverbs, and conjunctions) with verbs the most basic function that take either 1 or 2 (infix) parameters. Operators allow function composition with a minimum of parentheses.
Specs
Ranked in these QuestionsQuestion Ranking
Pros
Pro Lots of packages available
There are lots of different packages available that can be easily searched from the CRAN repo site and downloaded, or installed via the R command line interface. These packages are easy to include in a project or source file, and pertain to a wide variety of topics, from classification, social media analysis, and text processing to interactive 3d plotting and networks (including neural nets).
Pro Has a wide range of options when it comes to IDEs/GUIs
Among the IDEs available there are several commercial applications as well as free and/or open-source ones, such as R Studio, which features syntax highlighting, project management capabilities, integrated terminal access, decent code completion and on-the-spot parameter hinting, graphical interfaces for package installation and such, and commendable extensibility/developer support.
Pro Every function is an operator
3 classes of operators (verbs, adverbs, and conjunctions) with verbs the most basic function that take either 1 or 2 (infix) parameters. Operators allow function composition with a minimum of parentheses.
Pro Simpler Imperative language constructs as failback to functional programming
J also supports multiline functional definitions similar to BASIC/Pascal. Including error handling.
Pro Compiled language speed from interpreted language.
Each built in operator is a C/asm function, and special code further optimizes some operator combinations. Result is optimized C speed from quick parsing. Array orientation parses and compiles a function once, and applies it to all array items.
Pro 25 year old language, with core unchanged in last 10 years
Still actively developed, but most recent changes have been in libraries and IDE and platform support.
Language is considered "perfected"... though not quite.
Pro Language reference has simple one page index
Complete core programming functional tools allow writting programs and libraries without imports.
Pro No operator precedence rules
(... within each of the 3 operator classes) makes reading code easier. Very simple parsing rules.
Cons
Con Syntax is pure madness
quicksort=: (($:@(<#[), (=#[), $:@(>#[)) ({~ ?@#)) ^: (1<#)