<story><title>Paul Graham&apos;s Keynote at Pycon 2003: The Hundred-Year Language</title><url>http://www.paulgraham.com/hundred.html</url></story><parent_chain><item><author>tachyonbeam</author><text>People typically don&amp;#x27;t use Java for performance-sensitive real-time-ish applications. Most modern games are written in C++ still. Operating system kernels are written in C. When I think Java, what comes to my mind is something like LibreOffice.</text></item><item><author>wbl</author><text>Where is this consensus stated? The JVM seems to do quite well.</text></item><item><author>tachyonbeam</author><text>Why managed memory? The consensus seems to be that this gets in the way of predictable performance. GC is also non-trivial to parallelize.</text></item><item><author>kris-s</author><text>I think with the slowing progress of single threaded performance modern languages require three essential features if they want to be &amp;quot;main branches&amp;quot; of the language evolutionary tree.&lt;p&gt;1. easy parallelism&lt;p&gt;2. easy networking&lt;p&gt;3. managed memory</text></item></parent_chain><comment><author>coldtea</author><text>&amp;gt;&lt;i&gt;People typically don&amp;#x27;t use Java for performance-sensitive real-time-ish applications. Most modern games are written in C++ still. Operating system kernels are written in C.&lt;/i&gt;&lt;p&gt;Those are 1&amp;#x2F;100th or less of the type of code people write everyday, in startups, enterprise, cloud apps, even regular desktop and mobile apps...&lt;p&gt;&amp;gt;&lt;i&gt;When I think Java, what comes to my mind is something like LibreOffice.&lt;/i&gt;&lt;p&gt;That&amp;#x27;s written in C++</text></comment>
<story><title>Paul Graham&apos;s Keynote at Pycon 2003: The Hundred-Year Language</title><url>http://www.paulgraham.com/hundred.html</url></story><parent_chain><item><author>tachyonbeam</author><text>People typically don&amp;#x27;t use Java for performance-sensitive real-time-ish applications. Most modern games are written in C++ still. Operating system kernels are written in C. When I think Java, what comes to my mind is something like LibreOffice.</text></item><item><author>wbl</author><text>Where is this consensus stated? The JVM seems to do quite well.</text></item><item><author>tachyonbeam</author><text>Why managed memory? The consensus seems to be that this gets in the way of predictable performance. GC is also non-trivial to parallelize.</text></item><item><author>kris-s</author><text>I think with the slowing progress of single threaded performance modern languages require three essential features if they want to be &amp;quot;main branches&amp;quot; of the language evolutionary tree.&lt;p&gt;1. easy parallelism&lt;p&gt;2. easy networking&lt;p&gt;3. managed memory</text></item></parent_chain><comment><author>zmmmmm</author><text>You put &amp;quot;real time&amp;quot; in there but that&amp;#x27;s an extreme edge case. Modern GC in the JVM is now able to guarantee around 10 millisecond maximum pauses.&lt;p&gt;&amp;gt; When I think Java, what comes to my mind is something like LibreOffice.&lt;p&gt;You should probably revise that thinking, since it is not written (at least in substantial ways) in Java. Moreover, desktop applications are probably not really the main use case for it (or any language other than web technologies) these days.&lt;p&gt;Java running on server processes or any long-lived computation sits in the top tier of performance. Not as fast as C&amp;#x2F;C++ but in the same ball-park.</text></comment>