<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0">
   <channel>
      <title>Luths</title>
      <link>
luth.works</link>
      <description>Personal website generated by agora</description>
      <generator>agora</generator>
      <language>en</language>
      <lastBuildDate>
Mon, 11 May 2026 07:49:57 +0000</lastBuildDate>
      <item>
         <title>
About</title>         <link>
luth.works/blogs/about.html</link>         <pubDate>
Tue, 18 Nov 2036 00:00:00 +0000</pubDate>         <guid>
luth.works/blogs/about.html</guid>         <description><![CDATA[
Personal info, contact & projects.]]></description>      </item>
      <item>
         <title>
Agora: SSG after eleven months&#39; crawling</title>         <link>
luth.works/blogs/agora.html</link>         <pubDate>
Wed, 11 Mar 2026 00:00:00 +0000</pubDate>         <guid>
luth.works/blogs/agora.html</guid>         <description><![CDATA[
Agora is a personal static site generator engineered to sustain an ideal writing environment. This essay traces eleven months of architectural evolution, moving through genesis stoa markup and S-expression inspired markup iterations before settling on a final literate programming design.]]></description>      </item>
      <item>
         <title>
Setting up jjvcs collaboration between local machines via ssh</title>         <link>
luth.works/blogs/jj-ssh.html</link>         <pubDate>
Mon, 22 Dec 2025 00:00:00 +0000</pubDate>         <guid>
luth.works/blogs/jj-ssh.html</guid>         <description><![CDATA[
About how i collaborate between 2 ⟅laptops|identities|personae⟆ using jjvcs & ssh without hosting services.]]></description>      </item>
      <item>
         <title>
Effect is Kleisli, Etymologically</title>         <link>
luth.works/blogs/effect-kleisli.html</link>         <pubDate>
Wed, 26 Nov 2025 00:00:00 +0000</pubDate>         <guid>
luth.works/blogs/effect-kleisli.html</guid>         <description><![CDATA[
It's pretty intriguing that the Effect type in this blog is exactly the traditional Kleisli type in haskell. We'll further show that Monad is the constraint we need to form the valid Effect category. If you are wondering about the meaning of effects in the haskell world, I believe this blog will help gain some understanding.]]></description>      </item>
   </channel>
</rss>
