<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
  <channel>
    <title>Dsl on Home</title>
    <link>https://blog.rafaelfernandez.dev/tags/dsl/</link>
    <description>Recent content in Dsl on Home</description>
    <generator>Hugo -- gohugo.io</generator>
    <language>en</language>
    <copyright>© 2026 Rafael Fernandez</copyright>
    <lastBuildDate>Wed, 01 Apr 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.rafaelfernandez.dev/tags/dsl/index.xml" rel="self" type="application/rss+xml" />
    
    <item>
      <title>criteria4s 4. Your domain has no database</title>
      <link>https://blog.rafaelfernandez.dev/posts/criteria4s-4-your-domain-has-no-database/</link>
      <pubDate>Wed, 01 Apr 2026 00:00:00 +0000</pubDate>
      
      <guid>https://blog.rafaelfernandez.dev/posts/criteria4s-4-your-domain-has-no-database/</guid>
      <description>How to use T &amp;lt;: CriteriaTag as a hexagonal port so your domain layer never imports a dialect. The database becomes a deployment decision.</description>
      
    </item>
    
    <item>
      <title>criteria4s. Your domain has no database</title>
      <link>https://blog.rafaelfernandez.dev/posts/criteria4s-4-your-domain-has-no-database/</link>
      <pubDate>Wed, 01 Apr 2026 00:00:00 +0000</pubDate>
      
      <guid>https://blog.rafaelfernandez.dev/posts/criteria4s-4-your-domain-has-no-database/</guid>
      <description>How to use T &amp;lt;: CriteriaTag as a hexagonal port so your domain layer never imports a dialect. The database becomes a deployment decision.</description>
      
    </item>
    
    <item>
      <title>criteria4s 3. Do you speak my language?</title>
      <link>https://blog.rafaelfernandez.dev/posts/criteria4s-3-teach-criteria4s-a-new-language/</link>
      <pubDate>Mon, 30 Mar 2026 00:00:00 +0000</pubDate>
      
      <guid>https://blog.rafaelfernandez.dev/posts/criteria4s-3-teach-criteria4s-a-new-language/</guid>
      <description>How to teach criteria4s a backend it has never heard of. Build a dialect from scratch in thirty lines, or inherit one in five.</description>
      
    </item>
    
    <item>
      <title>criteria4s. Do you speak my language?</title>
      <link>https://blog.rafaelfernandez.dev/posts/criteria4s-3-teach-criteria4s-a-new-language/</link>
      <pubDate>Mon, 30 Mar 2026 00:00:00 +0000</pubDate>
      
      <guid>https://blog.rafaelfernandez.dev/posts/criteria4s-3-teach-criteria4s-a-new-language/</guid>
      <description>How to teach criteria4s a backend it has never heard of. Build a dialect from scratch in thirty lines, or inherit one in five.</description>
      
    </item>
    
    <item>
      <title>criteria4s 1. The filter you were always going to rewrite</title>
      <link>https://blog.rafaelfernandez.dev/posts/criteria4s-1-write-your-filters-once-run-them-everywhere/</link>
      <pubDate>Thu, 26 Mar 2026 00:00:00 +0000</pubDate>
      
      <guid>https://blog.rafaelfernandez.dev/posts/criteria4s-1-write-your-filters-once-run-them-everywhere/</guid>
      <description>Write a predicate once and run it against SQL, MongoDB, Elasticsearch, or any backend. An introduction to criteria4s and its practical take on the Expression Problem.</description>
      
    </item>
    
    <item>
      <title>criteria4s. The filter you were always going to rewrite</title>
      <link>https://blog.rafaelfernandez.dev/posts/criteria4s-1-write-your-filters-once-run-them-everywhere/</link>
      <pubDate>Thu, 26 Mar 2026 00:00:00 +0000</pubDate>
      
      <guid>https://blog.rafaelfernandez.dev/posts/criteria4s-1-write-your-filters-once-run-them-everywhere/</guid>
      <description>Write a predicate once and run it against SQL, MongoDB, Elasticsearch, or any backend. An introduction to criteria4s and its practical take on the Expression Problem.</description>
      
    </item>
    
  </channel>
</rss>
