The 100 factor must be an exaggeration for most problems. In 100 lines I can put lots of information or quite complex algorithm even in Java.
Some things are quite concise even in Java. See the greatest common denominator code:
int gcd(int a, int b) {
return a==b ? a : gcd(Math.abs(a-b), Math.min(a,b));
}
Yeah but gcd is very simple (and also your version of it stack overflows around 7 digits, depending on how quickly a gcd is found, so it isn't really "correct") - most simple tasks will have similarly sized simple representations in nearly any language. The argument levied against Java is that it's code size does not scale linearly in relation to other languages as the complexity of the problem increases.
It's not really fair since J has a built-in function, but in J the gcd function is +.
15 +. 10
5
The near-canonical example is the mean, which is not built in:
mean =: +/%#
mean 2 3 4 5
3.5
Other code is similarly terse. On http://projecteuler.net/ it's not uncommon to see one-line J solutions to problems where other languages have solutions from 20 to 50 or more lines of code.
http://en.wikipedia.org/wiki/Joy_(programming_language)
The 100 factor must be an exaggeration for most problems. In 100 lines I can put lots of information or quite complex algorithm even in Java. Some things are quite concise even in Java. See the greatest common denominator code:
int gcd(int a, int b) { return a==b ? a : gcd(Math.abs(a-b), Math.min(a,b)); }