hippo you've caught me unprepared! ... so I can feel a future meditation brewing on this complex and interesting topic. :)

Static typing usually results in compiled code that executes faster. When the compiler knows the exact data types that are in use (which is necessary for static verification, either through declaration or inference) it can produce optimized machine code. Some dynamically-typed languages such as Common Lisp allow optional type declarations for optimization for this reason.

-- from Type system (wikipedia)

As indicated by the quote above, my performance assumption of the five listed (statically typed) languages (including Java) was based solely on the well-known general properties of static vs dynamic typing.

When I programmed in Java years ago, I remember the HotSpot technology muddying the performance waters when attempting to compare Java to C++ because (at least in theory) Java HotSpot could perform gradual dynamic performance optimizations at run-time (based on HotSpot profiling and the specific hardware it was running on) which C++ could not (update: nowadays it can, thanks to Chris Lattner's LLVM and Clang). Despite that, I've always loved C++ and disliked Java, and would always back C++ against Java in any specific benchmark shootout. :)

References Added Later


In reply to Re^3: Advice on learning Perl and graphics (Static vs Dynamic Typing and JIT References) by eyepopslikeamosquito
in thread Advice on learning Perl and graphics by Dr. Subtilis

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.