<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"><channel><description>TS/RS dev |  @sli.dev team member | Undergraduate at USTC.edu.cn</description><link>https://bsky.app/profile/kermanx.github.io</link><title>@kermanx.github.io - KermanX</title><item><link>https://bsky.app/profile/kermanx.github.io/post/3mannxlngw22u</link><description>Just released reactive-vscode 1.0.0-beta.1, with significant improvements in API design :)&#xA;&#xA;kermanx.com/reactive-vscode&#xA;https://kermanx.com/reactive-vscode</description><pubDate>23 Dec 2025 11:38 +0000</pubDate><guid isPermaLink="false">at://did:plc:xug2vdtxklehprybvb4quaos/app.bsky.feed.post/3mannxlngw22u</guid></item><item><link>https://bsky.app/profile/kermanx.github.io/post/3lpz2yqeor22v</link><pubDate>25 May 2025 16:22 +0000</pubDate><guid isPermaLink="false">at://did:plc:xug2vdtxklehprybvb4quaos/app.bsky.feed.post/3lpz2yqeor22v</guid></item><item><link>https://bsky.app/profile/kermanx.github.io/post/3litg5jhba226</link><description>Bringing Rust syntax to the JavaScript world with &#xA;@bikari.top.&#xA;&#xA;Rust syntax + JavaScript runtime = &#34;Rust with GC&#34; (wtf&#xA;&#xA;github.com/kermanx/js.rs&#xA;https://github.com/kermanx/js.rs</description><pubDate>23 Feb 2025 08:29 +0000</pubDate><guid isPermaLink="false">at://did:plc:xug2vdtxklehprybvb4quaos/app.bsky.feed.post/3litg5jhba226</guid></item><item><link>https://bsky.app/profile/kermanx.github.io/post/3lgkpz3d5sc2j</link><description>I recently tried to implement a TypeScript type inferrer in ~6k lines of Rust. Most of the hardest features are already supported, but there is still a lot of effort to make it usable - and then Oxlint can use the type information for linting.&#xA;&#xA;Repo: https://github.com/KermanX/simple_ts</description><pubDate>25 Jan 2025 10:41 +0000</pubDate><guid isPermaLink="false">at://did:plc:xug2vdtxklehprybvb4quaos/app.bsky.feed.post/3lgkpz3d5sc2j</guid></item><item><link>https://bsky.app/profile/kermanx.github.io/post/3lf3jzxjtrk2c</link><description>What if giving tree-shaker the ability to infer TypeScript types - Then oxlint can have partial type information🤯</description><pubDate>06 Jan 2025 16:19 +0000</pubDate><guid isPermaLink="false">at://did:plc:xug2vdtxklehprybvb4quaos/app.bsky.feed.post/3lf3jzxjtrk2c</guid></item><item><link>https://bsky.app/profile/kermanx.github.io/post/3le4vl6t2o22r</link><description>Tree Shaker now supports object property mangling!&#xA;&#xA;Most importantly, (unlike some optimizers), Tree Shaker&#39;s object property mangling doesn&#39;t require any extra assumptions about the input code.&#xA;&#xA;Demo:</description><pubDate>25 Dec 2024 11:53 +0000</pubDate><guid isPermaLink="false">at://did:plc:xug2vdtxklehprybvb4quaos/app.bsky.feed.post/3le4vl6t2o22r</guid></item><item><link>https://bsky.app/profile/kermanx.github.io/post/3ldxxjyceks2p</link><description>Today I officially found an instructor for the research project of tree-shaker. Having lots to learn to become a real PL guy.&#xA;https://github.com/KermanX/tree-shaker/</description><pubDate>23 Dec 2024 12:45 +0000</pubDate><guid isPermaLink="false">at://did:plc:xug2vdtxklehprybvb4quaos/app.bsky.feed.post/3ldxxjyceks2p</guid></item><item><link>https://bsky.app/profile/kermanx.github.io/post/3lbyrg773vk2p</link><description>Why is it so hard to support the `@__PURE__` annotation in my tree-shaker🥲 For DCE, it is just &#34;remove the call if the return value is unused&#34;. But for tree shaking, I can&#39;t think of a correct &amp; performance-acceptable way to support it.</description><pubDate>28 Nov 2024 09:38 +0000</pubDate><guid isPermaLink="false">at://did:plc:xug2vdtxklehprybvb4quaos/app.bsky.feed.post/3lbyrg773vk2p</guid></item><item><link>https://bsky.app/profile/kermanx.github.io/post/3lbp3l34y4c2a</link><description>Interesting 😇</description><pubDate>24 Nov 2024 13:13 +0000</pubDate><guid isPermaLink="false">at://did:plc:xug2vdtxklehprybvb4quaos/app.bsky.feed.post/3lbp3l34y4c2a</guid></item></channel></rss>