|
|
|
|
|
by EdwardDiego
4391 days ago
|
|
> For the "Enterprise!" developer pool, there's Java. The 500 line methods are still hard to slog through, though. Great straw-man there. I didn't realise that javac required 500 line methods before compilation. > In which case, the language of mandate doesn't matter much. It's a lot easier to pass two collections to a method in Java than to a sub in Perl. |
|
List <Integer> aList = Arrays.asList( new int [] { 1, 3, 5 }); // probably missing some more type stuff in <>
Map <String, String> aMap = new HashMap <String, String> ();
aMap.put( "name", "Joe");
aMap.put( "ID", "42"); // I need to check if Java 8 has map literals a la Groovy...
doSomething( aList, aMap);
...
void doSomething( List <Integer> aList, Map <String, String> aMap) {
System.out.println( "First: " + aList.get( 0) + ", Name: " + aMap.get( "name") );
}
--- Perl ---
&do_something( [ 1, 3, 5 ], { 'name' => 'Joe', 'ID' => '42 });
...
sub do_something {
my( $list_ref, $hash_ref) = @_;
printf "First: %d, Name: %s\n", ${ $list_ref }[ 0 ], ${ $hash_ref }{ 'name' };
}
------
I'm not seeing that much of a difference in parameter passing, other than the explicit reference/dereference syntax.
Of course Java doesn't require 500 line methods. But the bondage and discipline imposed is independent of whether or not readable code will be produced.
I actually like strongly typed languages for larger programs, but prefer something more fast and loose for smaller ones. TMTOWTDI!