Yes, Java is a mature language.<p>But any perusal of rosettacode.org is fairly indicative that other languages, while less mature, have adopted some good ideas.<p>For example, here&#x27;s Quicksort in both Java and Elixir:<p><pre><code>    public static &lt;E extends Comparable&lt;? super E&gt;&gt; List&lt;E&gt; quickSort(List&lt;E&gt; arr) {
    if (!arr.isEmpty()) {
        E pivot = arr.get(0); &#x2F;&#x2F;This pivot can change to get faster results
     
     
        List&lt;E&gt; less = new LinkedList&lt;E&gt;();
        List&lt;E&gt; pivotList = new LinkedList&lt;E&gt;();
        List&lt;E&gt; more = new LinkedList&lt;E&gt;();
     
        &#x2F;&#x2F; Partition
        for (E i: arr) {
            if (i.compareTo(pivot) &lt; 0)
                less.add(i);
            else if (i.compareTo(pivot) &gt; 0)
                more.add(i);
            else
                pivotList.add(i);
        }
     
        &#x2F;&#x2F; Recursively sort sublists
        less = quickSort(less);
        more = quickSort(more);
     
        &#x2F;&#x2F; Concatenate results
        less.addAll(pivotList);
        less.addAll(more);
        return less;
     }
    return arr;
     
    }
</code></pre>
now Elixir:<p><pre><code>    defmodule QuickSort do
      def qsort([]) do
        []
      end
      def qsort([pivot | rest]) do
        { left, right } = Enum.partition(rest, fn(x) -&gt; x &lt; pivot end)
        qsort(left) ++ [pivot] ++ qsort(right)
      end
    end
</code></pre>
The advantage here is NOT just an &quot;economy of typing.&quot;