<story><title>GC progress from JDK 8 to JDK 17</title><url>https://kstefanj.github.io/2021/11/24/gc-progress-8-17.html</url></story><parent_chain><item><author>dandotway</author><text>As Java is generally the fastest GC&amp;#x27;d language, what&amp;#x27;s the current state of Java gamedev?&lt;p&gt;Once upon a time, this indie Java game called Minecraft became the most successful game of all time.&lt;p&gt;But from the few minutes of research I just did, Java cannot be deployed to many commercially important systems&lt;p&gt;&lt;pre&gt;&lt;code&gt;  - Nintendo Switch
  - PlayStation
  - iOS
&lt;/code&gt;&lt;/pre&gt;
It appears Java is only still viable for Windows and Android, and the 1% Linux desktop market.&lt;p&gt;There used to be the GCJ project which would in theory let you run Java anywhere you had a C&amp;#x2F;C++ compiler, but Oracle&amp;#x27;s litigiousness killed that because the Java[TM] &amp;quot;platform&amp;quot; must run the official Java[TM] bytecode.&lt;p&gt;It appears C# via Monogame lets you deploy to all desktops (Win&amp;#x2F;Mac&amp;#x2F;Linux), mobiles (iOS&amp;#x2F;Android), and consoles (PS&amp;#x2F;Switch&amp;#x2F;Xbox). So ironically C# seems to now be the &amp;quot;write once, run anywhere&amp;quot; fulfillment of the original Java promise.&lt;p&gt;[EDIT: grammar.]</text></item></parent_chain><comment><author>kllrnohj</author><text>Java&amp;#x27;s FFI and value type situation are the two major missing pieces for Java gamedev. C# has better stories for both, and has from the beginning.&lt;p&gt;Don&amp;#x27;t confuse Java having the fastest GC with Java being the fastest GC&amp;#x27;d language (especially not in all situations)</text></comment>
<story><title>GC progress from JDK 8 to JDK 17</title><url>https://kstefanj.github.io/2021/11/24/gc-progress-8-17.html</url></story><parent_chain><item><author>dandotway</author><text>As Java is generally the fastest GC&amp;#x27;d language, what&amp;#x27;s the current state of Java gamedev?&lt;p&gt;Once upon a time, this indie Java game called Minecraft became the most successful game of all time.&lt;p&gt;But from the few minutes of research I just did, Java cannot be deployed to many commercially important systems&lt;p&gt;&lt;pre&gt;&lt;code&gt;  - Nintendo Switch
  - PlayStation
  - iOS
&lt;/code&gt;&lt;/pre&gt;
It appears Java is only still viable for Windows and Android, and the 1% Linux desktop market.&lt;p&gt;There used to be the GCJ project which would in theory let you run Java anywhere you had a C&amp;#x2F;C++ compiler, but Oracle&amp;#x27;s litigiousness killed that because the Java[TM] &amp;quot;platform&amp;quot; must run the official Java[TM] bytecode.&lt;p&gt;It appears C# via Monogame lets you deploy to all desktops (Win&amp;#x2F;Mac&amp;#x2F;Linux), mobiles (iOS&amp;#x2F;Android), and consoles (PS&amp;#x2F;Switch&amp;#x2F;Xbox). So ironically C# seems to now be the &amp;quot;write once, run anywhere&amp;quot; fulfillment of the original Java promise.&lt;p&gt;[EDIT: grammar.]</text></item></parent_chain><comment><author>pjmlp</author><text>You can on iOS, for example with Codename One or Gluon Mobile,&lt;p&gt;&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;www.codenameone.com&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;www.codenameone.com&lt;/a&gt;&lt;p&gt;&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;gluonhq.com&amp;#x2F;products&amp;#x2F;mobile&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;gluonhq.com&amp;#x2F;products&amp;#x2F;mobile&amp;#x2F;&lt;/a&gt;&lt;p&gt;They are also quite happy to sponsor possible console ports.</text></comment>