<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: agentkilo</title><link>https://news.ycombinator.com/user?id=agentkilo</link><description>Hacker News RSS</description><docs>https://hnrss.org/</docs><generator>hnrss v2.1.1</generator><lastBuildDate>Tue, 28 Apr 2026 17:04:13 +0000</lastBuildDate><atom:link href="https://hnrss.org/user?id=agentkilo" rel="self" type="application/rss+xml"></atom:link><item><title><![CDATA[New comment by agentkilo in "Kernel: Introduce Multikernel Architecture Support"]]></title><description><![CDATA[
<p>IIUC, yes, all the kernels involved run directly on the hardware, in a "cooperative" way, i.e. they must agree on not touching others' memory regions.<p>I think the architecture assumes all loaded kernels are trusted, and imposes no isolation other than having them running on different CPUs.<p>Given the (relative) simplicity of the PoC, it could be really performant.</p>
]]></description><pubDate>Sat, 20 Sep 2025 01:44:49 +0000</pubDate><link>https://news.ycombinator.com/item?id=45309225</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=45309225</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=45309225</guid></item><item><title><![CDATA[New comment by agentkilo in "Writing a basic Linux device driver when you know nothing about Linux drivers"]]></title><description><![CDATA[
<p>Yeah that part of the article put a big smile on my face.<p>I did the same thing back in college, when I was in a lab. We wanted to do some research on Wi-Fi signals, and I happened to own a bunch of Wi-Fi adaptors produced by SomeSmallTech Co. Ltd., which featured relatively new Atheros chips and didn't have Linux drivers at the time.<p>So I sent an email to the company's public email address, asking for some datasheets, "for science". To my disappointment, presumably a PR person replied that they "don't have a company policy to collaborate with academic research". (But they did send a quick reply, kudos to that.)<p>Funnily enough, years later I ended up working for said company. Naturally, when I first logged into the company network, I searched for the datasheets I asked for. There were "classified" watermarks all over the PDFs :)</p>
]]></description><pubDate>Thu, 26 Jun 2025 01:20:35 +0000</pubDate><link>https://news.ycombinator.com/item?id=44383379</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44383379</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44383379</guid></item><item><title><![CDATA[New comment by agentkilo in "Homegrown Closures for Uxn"]]></title><description><![CDATA[
<p>Built on top of Owl Lisp[1]. TIL about this dialect, and it looks interesting! Instead of native threads, it has continuation-based threads[2], and it seems the whole VM architecture is based on that.<p>[1]: <a href="https://haltp.org/posts/owl.html" rel="nofollow">https://haltp.org/posts/owl.html</a><p>[2]: <a href="https://haltp.org/posts/owl.html#heading26" rel="nofollow">https://haltp.org/posts/owl.html#heading26</a></p>
]]></description><pubDate>Fri, 20 Jun 2025 00:44:24 +0000</pubDate><link>https://news.ycombinator.com/item?id=44323832</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44323832</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44323832</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>> An offset would be nice, though I'm sure it's not easy to define a heuristic that works in all places.<p>I agree. I considered dynamic offsets, in an effort to declutter the labels, but found it even more confusing. Maybe I should do more experiments on this.<p>> but where the labels were laid out it just looked like an inviting right-aligned label on the clickable tabs themselves<p>The labels are left-aligned by default (except in `frame-hinter`). I think you can try some combinations of the `:anchor` and `:show-highlights` options[1] to see if they work better for you.<p>[1]: <a href="https://agent-kilo.github.io/jwno/ref/built-in-modules/jwno--ui-hint.html#:ui-hint-Command" rel="nofollow">https://agent-kilo.github.io/jwno/ref/built-in-modules/jwno-...</a><p>Edit: Wrong link</p>
]]></description><pubDate>Thu, 22 May 2025 01:04:38 +0000</pubDate><link>https://news.ycombinator.com/item?id=44057778</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44057778</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44057778</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>It seems your right alt key is actually the AltGr key. I didn't explicitly support AltGr in Jwno, so it freaked out.<p>Sorry for the confusion. I think switching to another leader key, such as LAlt or RCtrl, should fix the issue.</p>
]]></description><pubDate>Wed, 21 May 2025 16:00:39 +0000</pubDate><link>https://news.ycombinator.com/item?id=44052870</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44052870</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44052870</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>Thanks! I created a tracking issue here: <a href="https://github.com/agent-kilo/jwno/issues/12">https://github.com/agent-kilo/jwno/issues/12</a><p>Meanwhile you can try to change leading `RAlt` to something else, like `Win + H`, and see if it works. There may be a bug that gets triggered when only modifier keys are mapped.</p>
]]></description><pubDate>Wed, 21 May 2025 14:06:56 +0000</pubDate><link>https://news.ycombinator.com/item?id=44051611</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44051611</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44051611</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>> Having tiling options that fit within a smaller part of the screen (e.g. still allow side by side or top/bottom split, but in a smaller total region) would be great.<p>Do you mean reserving screen space for the on-screen keyboard? If that's the case, you can try to "transform" the top-level frame (a frame that tracks a monitor's screen area), either in the REPL or in your config: <a href="https://agent-kilo.github.io/jwno/cookbook/adjust-top-level-frames-for-ultrawide-monitors.html" rel="nofollow">https://agent-kilo.github.io/jwno/cookbook/adjust-top-level-...</a><p>> Using example-config.janet I tried pressing RAlt or RAlt+K and I get the UI hint shortcuts list coming up, but none of them seem to do anything<p>Can you please file a bug report and attach relevant logs? You can write logs to a file by starting Jwno like this:<p>jwno.exe --log-file C:\jwno.log --log-level debug --no-console your-config.janet<p>There should be some interesting logs when you press one of the UI hint shortcuts.<p>> Fwiw, as a newbie I found it a bit intimidating/off-putting that it doesn't work out the box without choosing a config file. That's quite a lot of extra cognitive effort and link-clicking before you can try it out.<p>I totally understand. But I chose to <i>not</i> include a default config in the executable, because I thought a window manager is a... personal thing. It should evolve with your habits and workflows, so the default config will most likely get changed to something dramatically different anyway. I can be wrong though.</p>
]]></description><pubDate>Wed, 21 May 2025 11:11:19 +0000</pubDate><link>https://news.ycombinator.com/item?id=44050226</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44050226</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44050226</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>A fellow StumpWM user!<p>My StumpWM is heavily customized though, and I mostly modeled Jwno's behavior after my own config, so it may not be what you expected at all.<p>But that's one of the reasons I like Lisp and things built in Lisp: They are so flexible, you can sometimes build something based on the original thing, while it feels completely different from the original.<p>> my monitor seems just the right shape/resolution for the standard Windows splits to be suboptimal<p>Do you use an ultra-wide? In that case, Jwno has no OOTB ultra-wide support, but there's a section for adjusting it in the cookbook[1].<p>[1]: <a href="https://agent-kilo.github.io/jwno/cookbook/adjust-top-level-frames-for-ultrawide-monitors.html" rel="nofollow">https://agent-kilo.github.io/jwno/cookbook/adjust-top-level-...</a></p>
]]></description><pubDate>Wed, 21 May 2025 01:02:21 +0000</pubDate><link>https://news.ycombinator.com/item?id=44047387</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44047387</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44047387</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>Sorry for the confusion. Multi-monitor support is only briefly mentioned in the docs[1] and the interactive tutorial[2].<p>Jwno's internal data structure has these levels (higher-level comes first):<p>Root - Virtual Desktops - Monitors - Normal Frames - Windows<p>So monitors are part of a virtual desktop, and every virtual desktop has the same layout that reflects your physical monitor arrangement. When you switch virtual desktops, all monitors switch to the new desktop at the same time.<p>[1]:<a href="https://agent-kilo.github.io/jwno/frame-tree/frame-nodes.html" rel="nofollow">https://agent-kilo.github.io/jwno/frame-tree/frame-nodes.htm...</a><p>[2]: <a href="https://github.com/agent-kilo/jwno/blob/master/example/tutorial.janet">https://github.com/agent-kilo/jwno/blob/master/example/tutor...</a></p>
]]></description><pubDate>Wed, 21 May 2025 00:38:29 +0000</pubDate><link>https://news.ycombinator.com/item?id=44047288</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44047288</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44047288</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>TBH I dived right in when I decided I should build something with Janet, and didn't really consider any alternatives. Now you mentioned it, I think Janet's simplicity and conciseness played a large part in attracting me to it, comparing to Common Lisp at least.</p>
]]></description><pubDate>Wed, 21 May 2025 00:25:28 +0000</pubDate><link>https://news.ycombinator.com/item?id=44047219</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44047219</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44047219</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>Thanks for posting the link!<p>It's a quick-and-dirty PoC with lots of caveats and limitations though. E.g. it works only for a single monitor. I don't think we can clip windows to a "view port" on Windows (the OS), so this may never be as nice as PaperWM, Niri etc.</p>
]]></description><pubDate>Wed, 21 May 2025 00:19:23 +0000</pubDate><link>https://news.ycombinator.com/item?id=44047183</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44047183</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44047183</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>I think these are the most obvious differences between the two:<p>* By default, Komorebi uses dynamic tiling, while Jwno uses manual tiling.<p>* Komorebi has workspaces, Jwno works with Windows native virtual desktops instead.<p>* Komorebi uses IPC and native system command line to send commands, while Jwno usually operates all by itself.<p>There are definitely other details that are important to you, but these are the things that immediately came to my mind. I don't run Hyprland so can't really comment on that.</p>
]]></description><pubDate>Tue, 20 May 2025 18:12:25 +0000</pubDate><link>https://news.ycombinator.com/item?id=44044290</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44044290</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44044290</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>I think Janet is quite...liberal? It's a practical language, but doesn't force a specific paradigm on you. There're "escape hatches" in different levels of the language, and I like that.<p>Maybe the most "opinionated" things in Janet are the ev stuff and fibers. I think they're done right though, you just need to be careful with the event loop when embedding Janet.</p>
]]></description><pubDate>Tue, 20 May 2025 16:48:15 +0000</pubDate><link>https://news.ycombinator.com/item?id=44043550</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44043550</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44043550</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>I find the REPL and interactive development workflow invaluable. A window manager is a long-running background service by nature, and has a lot of accumulated runtime states. The ability to peek inside and debug while the process keeps running helped me a lot when building Jwno.<p>I think Jwno's REPL module is so important, I specifically changed Jwno's architecture at one point to make it work.</p>
]]></description><pubDate>Tue, 20 May 2025 16:23:44 +0000</pubDate><link>https://news.ycombinator.com/item?id=44043347</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44043347</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44043347</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>> I think it's inspired by Clojure and Lua, and somehow manages to be better than both<p>This is exactly how I feel about Janet too. I don't think I have enough experience on Clojure or Lua to comment on them, but I got attracted to Janet almost immediately.<p>Working on Jwno also confirms my first impression on Janet: It's really a practical language. The tooling has some room for improvement, but the language itself can get things done - usually fast and easily.</p>
]]></description><pubDate>Tue, 20 May 2025 16:10:45 +0000</pubDate><link>https://news.ycombinator.com/item?id=44043202</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44043202</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44043202</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>Thanks for the kind words! It means a lot coming from you :)</p>
]]></description><pubDate>Tue, 20 May 2025 15:48:06 +0000</pubDate><link>https://news.ycombinator.com/item?id=44042933</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44042933</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44042933</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>Definitely! I got great inspirations from both of the Komorebi and GlazeWM communities. People who like tidy desktops are definitely nice people :)</p>
]]></description><pubDate>Tue, 20 May 2025 15:45:42 +0000</pubDate><link>https://news.ycombinator.com/item?id=44042907</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44042907</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44042907</guid></item><item><title><![CDATA[New comment by agentkilo in "Show HN: A Tiling Window Manager for Windows, Written in Janet"]]></title><description><![CDATA[
<p>Thanks :)</p>
]]></description><pubDate>Tue, 20 May 2025 15:35:03 +0000</pubDate><link>https://news.ycombinator.com/item?id=44042785</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44042785</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44042785</guid></item><item><title><![CDATA[Show HN: A Tiling Window Manager for Windows, Written in Janet]]></title><description><![CDATA[
<p>Hi HN!<p>I read[1] about Janet[2] some time ago, then immediately got impressed by the enthusiasm of its community, and by the language itself, so I started playing with it.<p>At the time I was searching for a tiling window manager for Windows, and unavoidably the idea of scratching my own itch with Janet got hold of me, so Jwno was born.<p>Simply put, Jwno is a keyboard-driven tiling window manager for Windows, scriptable with Janet. But since it has a complete Lisp runtime, and a thin wrapper library for Win32 APIs[3], you can certainly do much more with it.<p>I hope you'll enjoy playing with it as much as I enjoyed building it.<p>And yes, I use StumpWM on the Linux side, by the way.<p>[1]: <a href="https://ianthehenry.com/posts/why-janet/" rel="nofollow">https://ianthehenry.com/posts/why-janet/</a><p>[2]: <a href="https://janet-lang.org/" rel="nofollow">https://janet-lang.org/</a><p>[3]: <a href="https://github.com/agent-kilo/jw32">https://github.com/agent-kilo/jw32</a></p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=44042490">https://news.ycombinator.com/item?id=44042490</a></p>
<p>Points: 297</p>
<p># Comments: 103</p>
]]></description><pubDate>Tue, 20 May 2025 15:08:42 +0000</pubDate><link>https://agent-kilo.github.io/jwno/</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=44042490</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=44042490</guid></item><item><title><![CDATA[Show HN: Jwno – Bring Modern Lisp Power to Your Windows Desktop]]></title><description><![CDATA[
<p>Hi HN!<p>I read[1] about Janet[2] some time ago, then immediately got impressed by the enthusiasm of its community, and by the language itself, so I started playing with it.<p>At the time I was searching for a tiling window manager for Windows, and unavoidably the idea of scratching my own itch with Janet got hold of me, so Jwno was born.<p>Simply put, Jwno is a keyboard-driven tiling window manager for Windows, scriptable with Janet. But since it has a complete Lisp runtime, and a thin wrapper library for Win32 APIs[3], you can certainly do much more with it.<p>I hope you'll enjoy playing with it as much as I enjoyed building it.<p>And yes, I use StumpWM on the Linux side, by the way.<p>[1]: <a href="https://ianthehenry.com/posts/why-janet/" rel="nofollow">https://ianthehenry.com/posts/why-janet/</a><p>[2]: <a href="https://janet-lang.org/" rel="nofollow">https://janet-lang.org/</a><p>[3]: <a href="https://github.com/agent-kilo/jw32">https://github.com/agent-kilo/jw32</a></p>
<hr>
<p>Comments URL: <a href="https://news.ycombinator.com/item?id=43912246">https://news.ycombinator.com/item?id=43912246</a></p>
<p>Points: 4</p>
<p># Comments: 1</p>
]]></description><pubDate>Wed, 07 May 2025 04:20:17 +0000</pubDate><link>https://agent-kilo.github.io/jwno/</link><dc:creator>agentkilo</dc:creator><comments>https://news.ycombinator.com/item?id=43912246</comments><guid isPermaLink="false">https://news.ycombinator.com/item?id=43912246</guid></item></channel></rss>