<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Hacker News: joe_mwangi</title><link>https://news.ycombinator.com/user?id=joe_mwangi</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Mon, 28 Sep 2026 02:07:17 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=joe_mwangi" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by joe_mwangi in "Go Concurrency Distilled"]]></title><description><![CDATA[
<p>Trust me. That's a common argument used when java introduces new features. Wait you see the same argument once value classes come to jdk 28.</p>
]]></description><pubDate>Sun, 27 Sep 2026 18:46:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=49869597</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=49869597</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49869597</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Java 27"]]></title><description><![CDATA[
<p>Yes.. lol. The biggest argument now is Kotlin having nullness by default in the language. Just check around the comment section. Now java is planning to have them which will further help jvm to optimise for performance. Not sure what the next argument will be after.</p>
]]></description><pubDate>Tue, 15 Sep 2026 21:55:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=49719401</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=49719401</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49719401</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Java 27"]]></title><description><![CDATA[
<p>Really? I don't thinks so. There is a reason JEP 539 is in preview. There is a reason internal annotations exists in current valhalla jdk prototype and upcoming java 28 such as @jdk.internal.vm.annotation.NullRestricted, @jdk.internal.value.ValueClass.newNullRestrictedNonAtomicArray. Also, there is a reason value classes are allowed to be null. This is because nullness types will be a key factor to the java language.</p>
]]></description><pubDate>Tue, 15 Sep 2026 19:46:02 +0000</pubDate><link>https://news.ycombinator.com/item?id=49717880</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=49717880</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49717880</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Java 27"]]></title><description><![CDATA[
<p>Once it gets nullness types, hackernews is gonna explode!</p>
]]></description><pubDate>Tue, 15 Sep 2026 19:40:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=49717791</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=49717791</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49717791</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Java 27"]]></title><description><![CDATA[
<p>Typeclasses caught me by surprise. Smart move by the java team.</p>
]]></description><pubDate>Tue, 15 Sep 2026 19:33:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=49717685</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=49717685</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49717685</guid></item><item><title><![CDATA[New comment by joe_mwangi in "JDK 28 EA Build 10 Now Available with JEP 401: Value Objects (Preview)"]]></title><description><![CDATA[
<p>Also, future specialisation if it is introduced, it will enable the JIT to get enough information to ensure <T> becomes stored in cpu registeres or enable <T[]> to be flattened in memory.</p>
]]></description><pubDate>Thu, 13 Aug 2026 07:03:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=49282605</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=49282605</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49282605</guid></item><item><title><![CDATA[New comment by joe_mwangi in "JEP 401: Value Objects (Preview) merged to OpenJDK master"]]></title><description><![CDATA[
<p>Yeaaah. They are going to introduce approaches for the programmer to decide if tearability is allowed or not. Already there are internal annotations for fields and types to enable it that probably will become a language feature in future.</p>
]]></description><pubDate>Fri, 31 Jul 2026 12:17:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=49122164</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=49122164</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49122164</guid></item><item><title><![CDATA[New comment by joe_mwangi in "JEP 401: Value Objects (Preview) merged to OpenJDK master"]]></title><description><![CDATA[
<p>They are researching to have immutable arrays. Also multifields (stack allocated arrays as fields in value classes). So, there is a possibility.</p>
]]></description><pubDate>Fri, 31 Jul 2026 11:08:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=49121662</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=49121662</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=49121662</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Why low-latency Java still requires discipline?"]]></title><description><![CDATA[
<p>I've done some tests with current value classes in latest prototype with full optimisation through annotation. Apparently, everything was being compiled to assembly code with no gc calls. It seems this old school ideology of slow java is about to end in near future. I'm actually intrigued how it will compete with Rust which can't optimise code further while running, while JVM JIT has more info which it could aggressively further optimise, especially hot paths.</p>
]]></description><pubDate>Mon, 06 Jul 2026 16:40:34 +0000</pubDate><link>https://news.ycombinator.com/item?id=48807094</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48807094</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48807094</guid></item><item><title><![CDATA[New comment by joe_mwangi in "JEP 539: Strict Field Initialization in the JVM moved to preview"]]></title><description><![CDATA[
<p>Also, this will be used for future null-restricted types.</p>
]]></description><pubDate>Thu, 02 Jul 2026 21:01:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=48767325</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48767325</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48767325</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28"]]></title><description><![CDATA[
<p>Better late than never.</p>
]]></description><pubDate>Fri, 26 Jun 2026 09:07:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=48684236</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48684236</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48684236</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28"]]></title><description><![CDATA[
<p>This time, 30mb.</p>
]]></description><pubDate>Sat, 20 Jun 2026 08:50:11 +0000</pubDate><link>https://news.ycombinator.com/item?id=48607544</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48607544</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48607544</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28"]]></title><description><![CDATA[
<p>Yup.  By design, value classes will use cpu registers as a 1st priority instead.</p>
]]></description><pubDate>Sat, 20 Jun 2026 08:49:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=48607540</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48607540</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48607540</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28"]]></title><description><![CDATA[
<p>Until they implement member patterns. <a href="https://openjdk.org/projects/amber/design-notes/patterns/towards-member-patterns" rel="nofollow">https://openjdk.org/projects/amber/design-notes/patterns/tow...</a></p>
]]></description><pubDate>Fri, 19 Jun 2026 21:06:54 +0000</pubDate><link>https://news.ycombinator.com/item?id=48603253</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48603253</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48603253</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28"]]></title><description><![CDATA[
<p>> yet
But up the comment section, someone thinks they won't be there 'in the future'</p>
]]></description><pubDate>Fri, 19 Jun 2026 21:05:08 +0000</pubDate><link>https://news.ycombinator.com/item?id=48603233</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48603233</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48603233</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28"]]></title><description><![CDATA[
<p>And I notice, people aren't aware more things are being planned for. For example, the carrier classes being proposed, they will separate state description with state representation and this is where value classes will shine syntactically.</p>
]]></description><pubDate>Fri, 19 Jun 2026 16:47:57 +0000</pubDate><link>https://news.ycombinator.com/item?id=48600488</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48600488</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48600488</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28"]]></title><description><![CDATA[
<p>And the only syntax change is adding 'value'.</p>
]]></description><pubDate>Fri, 19 Jun 2026 16:22:50 +0000</pubDate><link>https://news.ycombinator.com/item?id=48600264</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48600264</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48600264</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28"]]></title><description><![CDATA[
<p>Since they plan to have null-restricted types, then I don't see any issue.</p>
]]></description><pubDate>Fri, 19 Jun 2026 16:10:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=48600155</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48600155</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48600155</guid></item><item><title><![CDATA[New comment by joe_mwangi in "Project Valhalla, Explained: How a Decade of Work Arrives in JDK 28"]]></title><description><![CDATA[
<p>But with null-restricted types, Integer! and int has no difference semantically and representation. They plan to introduce null-restricted types in future.</p>
]]></description><pubDate>Fri, 19 Jun 2026 16:08:41 +0000</pubDate><link>https://news.ycombinator.com/item?id=48600142</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48600142</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48600142</guid></item><item><title><![CDATA[New comment by joe_mwangi in "First Valhalla related stuff will land in Java 28"]]></title><description><![CDATA[
<p>This is awesome. First step to an interesting direction of the language.</p>
]]></description><pubDate>Wed, 10 Jun 2026 18:50:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=48480930</link><dc:creator>joe_mwangi</dc:creator><comments>https://news.ycombinator.com/item?id=48480930</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=48480930</guid></item></channel></rss>