<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: djwatson24</title><link>https://news.ycombinator.com/user?id=djwatson24</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Sat, 09 May 2026 03:15:47 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=djwatson24" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by djwatson24 in "Retrofitting JIT Compilers into C Interpreters"]]></title><description><![CDATA[
<p>It's quite impressive they're able to take nearly arbitrary C and do this! Very similar to what pypy is doing here, but for C, and not a python subset.<p>However not without downsides.  It sounds like average code is only 2x faster than Lua, vs. LuaJit which is often 5-10x faster.</p>
]]></description><pubDate>Thu, 16 Apr 2026 00:09:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=47787047</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=47787047</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=47787047</guid></item><item><title><![CDATA[New comment by djwatson24 in "V8 Garbage Collector"]]></title><description><![CDATA[
<p>Absolutely. Things that took hours or days to debug before take mere minutes once I have an rr recording.</p>
]]></description><pubDate>Fri, 14 Nov 2025 16:52:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=45928722</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=45928722</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45928722</guid></item><item><title><![CDATA[Scheme Reports at Fifty]]></title><description><![CDATA[
<p>Article URL: <a href="https://crumbles.blog/posts/2025-10-18-scheme-reports-at-fifty.html">https://crumbles.blog/posts/2025-10-18-scheme-reports-at-fifty.html</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=45634528">https://news.ycombinator.com/item?id=45634528</a></p>
<p>Points: 66</p>
<p># Comments: 25</p>
]]></description><pubDate>Sun, 19 Oct 2025 14:45:03 +0000</pubDate><link>https://crumbles.blog/posts/2025-10-18-scheme-reports-at-fifty.html</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=45634528</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45634528</guid></item><item><title><![CDATA[New comment by djwatson24 in "Faster Virtual Machines: Speeding Up Programming Language Execution (2023)"]]></title><description><![CDATA[
<p>Tail calling (with musttail)+ preserve_none are definitely the future of interpreters. Gets you ~95% of the performance of writing the vm in assembly, while keeping it high level. Unfortunately only clang and llvm support it  so far, but hopefully we get some other llvm backend langs in soon!</p>
]]></description><pubDate>Tue, 30 Sep 2025 13:40:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=45425310</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=45425310</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45425310</guid></item><item><title><![CDATA[New comment by djwatson24 in "Faster interpreters in Go: Catching up with C++"]]></title><description><![CDATA[
<p>Marc feeley wrote “using closures for code generation” way back in 1987. Everything old is new again!<p>It’s quite nice and only a small bit more code than an ast interpreter - but not as fast as a luajit- style tail calling bytecode vm, nor a baseline jit like copy and patch. It works wonders in languages that support closures though.<p><a href="https://www-labs.iro.umontreal.ca/~feeley/papers/FeeleyLapalmeCL87.pdf" rel="nofollow">https://www-labs.iro.umontreal.ca/~feeley/papers/FeeleyLapal...</a></p>
]]></description><pubDate>Mon, 07 Apr 2025 16:35:33 +0000</pubDate><link>https://news.ycombinator.com/item?id=43613274</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=43613274</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43613274</guid></item><item><title><![CDATA[New comment by djwatson24 in "Float Self-Tagging"]]></title><description><![CDATA[
<p>Can you go in to more detail on 'wacky register allocation tricks' or instruction selection needed to support nun-tagging?  Or pointers to code somewhere?  Would be nice to compare some of them to the paper.</p>
]]></description><pubDate>Fri, 29 Nov 2024 20:38:59 +0000</pubDate><link>https://news.ycombinator.com/item?id=42276918</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=42276918</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=42276918</guid></item><item><title><![CDATA[New comment by djwatson24 in "Building a baseline JIT for Lua automatically"]]></title><description><![CDATA[
<p>Deegen is my research meta-compiler to make high-performance VMs easier to write. Deegen takes in a semantic description of the VM bytecodes in C++, and use it as the single source of truth to automatically generate a high-performance VM at build time</p>
]]></description><pubDate>Fri, 12 May 2023 23:27:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=35923793</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=35923793</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35923793</guid></item><item><title><![CDATA[Building a baseline JIT for Lua automatically]]></title><description><![CDATA[
<p>Article URL: <a href="https://sillycross.github.io/2023/05/12/2023-05-12/">https://sillycross.github.io/2023/05/12/2023-05-12/</a></p>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=35923792">https://news.ycombinator.com/item?id=35923792</a></p>
<p>Points: 10</p>
<p># Comments: 8</p>
]]></description><pubDate>Fri, 12 May 2023 23:27:35 +0000</pubDate><link>https://sillycross.github.io/2023/05/12/2023-05-12/</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=35923792</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=35923792</guid></item><item><title><![CDATA[New comment by djwatson24 in "Apple calls on global supply chain to decarbonize by 2030"]]></title><description><![CDATA[
<p>This is great, thanks! Fyi I think you have the numbers for the years reversed</p>
]]></description><pubDate>Tue, 25 Oct 2022 23:00:09 +0000</pubDate><link>https://news.ycombinator.com/item?id=33337351</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=33337351</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33337351</guid></item><item><title><![CDATA[New comment by djwatson24 in "Rewriting a high performance vector database in Rust"]]></title><description><![CDATA[
<p>> and that relies on having sufficient test and fuzz coverage<p>At the faang I worked at, some small portion of servers ran the sanitizers in prod, so you’re not reliant on test coverage nearly so much for catching rare issues.</p>
]]></description><pubDate>Tue, 18 Oct 2022 22:17:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=33254792</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=33254792</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=33254792</guid></item><item><title><![CDATA[New comment by djwatson24 in "MiniVM: A zero-dependency cross-language runtime on par with LuaJIT and C"]]></title><description><![CDATA[
<p>Binary trees is a classic GC benchmark - ideally a GC'd language should be able to do <i>better</i> than a malloc/free implementation in C (tree.c) since it can release the whole tree in bulk (like what the ptree.c does).<p>Also note that tree.c speeds up substantially if you link with a better malloc like jemalloc or tcmalloc.</p>
]]></description><pubDate>Sat, 08 Jan 2022 17:54:26 +0000</pubDate><link>https://news.ycombinator.com/item?id=29854191</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=29854191</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29854191</guid></item><item><title><![CDATA[New comment by djwatson24 in "A small scheme VM, compiler, and REPL in 4k"]]></title><description><![CDATA[
<p>I agree the optimization looks backwards to me - in most of the microcontrollers I work on, the flash program space can easily be multiple megabytes, but the ram is usually the limiter around 128-512k.</p>
]]></description><pubDate>Fri, 26 Nov 2021 18:07:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=29352478</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=29352478</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=29352478</guid></item><item><title><![CDATA[New comment by djwatson24 in "D 2.096 and other news"]]></title><description><![CDATA[
<p>D has three fully functional compilers on Linux, and is probably in better shape than python, rust, even c++ in that regard.</p>
]]></description><pubDate>Wed, 24 Mar 2021 18:26:30 +0000</pubDate><link>https://news.ycombinator.com/item?id=26571133</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=26571133</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=26571133</guid></item><item><title><![CDATA[New comment by djwatson24 in "Perceus: Garbage Free Reference Counting with Reuse [pdf]"]]></title><description><![CDATA[
<p>I don’t think const or non const is the main issue- some data structures just require cycles like graphs or circular linked lists.</p>
]]></description><pubDate>Sat, 19 Dec 2020 17:21:32 +0000</pubDate><link>https://news.ycombinator.com/item?id=25479046</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=25479046</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=25479046</guid></item><item><title><![CDATA[New comment by djwatson24 in "Perceus: Garbage Free Reference Counting with Reuse [pdf]"]]></title><description><![CDATA[
<p>Unless I am misreading their graph, Java beats neither c++ nor koka in time or rss.</p>
]]></description><pubDate>Sat, 19 Dec 2020 16:45:43 +0000</pubDate><link>https://news.ycombinator.com/item?id=25478644</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=25478644</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=25478644</guid></item><item><title><![CDATA[New comment by djwatson24 in "Perceus: Garbage Free Reference Counting with Reuse [pdf]"]]></title><description><![CDATA[
<p>Cool to see explicit annotations for how to make rc fast when you have access to the ir. But doesn’t solve some major issues, like cycle collection:<p>“ In practice, mutable references are the main way to con- struct cyclic data. Since mutable references are uncommon in our setting, we leave the responsibility to the programmer to break cycles by explicitly clearing a reference cell that may be part of a cycle. ”</p>
]]></description><pubDate>Sat, 19 Dec 2020 16:40:18 +0000</pubDate><link>https://news.ycombinator.com/item?id=25478583</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=25478583</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=25478583</guid></item><item><title><![CDATA[New comment by djwatson24 in "Secure Socket API: POSIX socket API as a vehicle for a simplified TLS API"]]></title><description><![CDATA[
<p>I think what happened is that feature landed concurrently with the paper - a very early version is mentioned as reference [7].<p>Netflix also published several papers on their version for openbsd, which I didn't see mentioned.</p>
]]></description><pubDate>Fri, 17 Aug 2018 19:21:46 +0000</pubDate><link>https://news.ycombinator.com/item?id=17785098</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=17785098</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=17785098</guid></item><item><title><![CDATA[New comment by djwatson24 in "Netdev Day 1: IPsec"]]></title><description><![CDATA[
<p>IIRC TLS renegotiation was removed in TLS 1.3</p>
]]></description><pubDate>Thu, 12 Jul 2018 17:49:14 +0000</pubDate><link>https://news.ycombinator.com/item?id=17516967</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=17516967</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=17516967</guid></item><item><title><![CDATA[New comment by djwatson24 in "Ratas – A hierarchical timer wheel"]]></title><description><![CDATA[
<p>This version still has to tick, yes? The whole point of optimizing ticks-until-next-event is to support nohz tickless modes. "Optimizing for high occupancy" also means low granularity - since the more granular timeouts you need, the more likely buckets are to be empty.</p>
]]></description><pubDate>Sat, 30 Jul 2016 19:33:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=12194342</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=12194342</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=12194342</guid></item><item><title><![CDATA[New comment by djwatson24 in "Open-sourcing Facebook's internal branch of Thrift"]]></title><description><![CDATA[
<p>After thrift became an Apache project, internal Facebook employees found it harder to iterate using external tools than our internal github repos.   Many of the changes depended on things that weren’t open source, or only recently became open source in folly.   We do hope to merge as many changes as possible back upstream, but felt it was more important to get the code open source as quickly as possible. In addition, fbthrift is a dependency for several other projects Facebook wants to open source in the near future.</p>
]]></description><pubDate>Thu, 20 Feb 2014 22:19:51 +0000</pubDate><link>https://news.ycombinator.com/item?id=7274073</link><dc:creator>djwatson24</dc:creator><comments>https://news.ycombinator.com/item?id=7274073</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=7274073</guid></item></channel></rss>