<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    
    <title>YS — YAML Done Wisely</title>
    <description>Program in YAML — Code is Data</description>
    <link>https://yamlscript.org/</link>
    <atom:link href="https://yamlscript.org/rss.xml" rel="self" type="application/rss+xml" />

    
    <managingEditor>Ingy döt Net</managingEditor>
    <docs>https://github.com/yaml/yamlscript</docs>
    <language>en</language>

    
    <pubDate>Thu, 26 Feb 2026 22:22:20 -0000</pubDate>
    <lastBuildDate>Thu, 26 Feb 2026 22:22:20 -0000</lastBuildDate>
    <ttl>1440</ttl>

    
    <generator>MkDocs RSS plugin - v1.17.1</generator>

    
    
    <image>
      <url>None</url>
      <title>YS — YAML Done Wisely</title>
      <link>https://yamlscript.org/</link>
    </image>
    

    
    
    <item>
      <title>YS Summer Break</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;When I started the Summer of YS blog series on June 1st, I committed to writing
a blog post every day until September 1st (92 days in a row).&lt;/p&gt;
&lt;p&gt;Today it&#39;s Friday, August 1st, 2025 and today&#39;s post is number 62.&lt;/p&gt;
&lt;p&gt;It&#39;s also the last one!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-08-01/ys-summer-break/</link>
      <pubDate>Fri, 01 Aug 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-08-01/ys-summer-break/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-08-01/ys-summer-break.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>The loop and more loops</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;The looping function that offers the most control in YS is called &lt;code&gt;loop&lt;/code&gt;.
It&#39;s also the most verbose.&lt;/p&gt;
&lt;p&gt;There are lots of alternatives that are more specific and require less code, but
they don&#39;t let you do everything, like decide when to stop.&lt;/p&gt;
&lt;p&gt;We&#39;ll talk about both today.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-31/the-loop-and-more-loops/</link>
      <pubDate>Thu, 31 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-31/the-loop-and-more-loops/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-31/the-loop-and-more-loops.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Sometimes it&#39;s hard to be lazy</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;YS (being Clojure) is a functional language with immutable data structures
and lazy evaluation.&lt;/p&gt;
&lt;p&gt;Laziness is cool because you can do complicated operations on large (even
infinite) sequences without having to load everything into memory.&lt;/p&gt;
&lt;p&gt;But laziness can be very confusing when you&#39;re not used to it or you don&#39;t
expect it.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-30/sometimes-its-hard-to-be-lazy/</link>
      <pubDate>Wed, 30 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-30/sometimes-its-hard-to-be-lazy/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-30/sometimes-its-hard-to-be-lazy.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Is JSON really a subset of YAML?</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;YAML is a superset of JSON.&lt;/p&gt;
&lt;p&gt;This is a basic truth about YAML.&lt;/p&gt;
&lt;p&gt;I assume that in 2025, most people who use YAML and JSON regularly already know
this.&lt;/p&gt;
&lt;p&gt;Today I&#39;ll say a bit more about this and how it came to be.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-29/is-json-really-a-subset-of-yaml/</link>
      <pubDate>Tue, 29 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-29/is-json-really-a-subset-of-yaml/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-29/is-json-really-a-subset-of-yaml.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS on jank, bb and ys</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Last &lt;a href=&#34;2025-07-25.md&#34;&gt;Friday&lt;/a&gt; we got a YS program running on Go using Glojure.&lt;/p&gt;
&lt;p&gt;Today we&#39;ll show how to run it on 3 other Clojure platforms:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;a href=&#34;https://github.com/jank-lang/jank&#34;&gt;jank&lt;/a&gt; - Clojure hosted by C++ on LLVM&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://babashka.org&#34;&gt;bb&lt;/a&gt; - Clojure using
   &lt;a href=&#34;https://github.com/babashka/sci&#34;&gt;SCI&lt;/a&gt; and &lt;a href=&#34;https://graalvm.org&#34;&gt;GraalVM&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://yamlscript.org&#34;&gt;ys&lt;/a&gt; - YS can run Clojure from a YS
   &lt;code&gt;ys -c&lt;/code&gt; compile command&lt;/li&gt;
&lt;/ol&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-28/ys-on-jank-bb-and-ys/</link>
      <pubDate>Mon, 28 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-28/ys-on-jank-bb-and-ys/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-28/ys-on-jank-bb-and-ys.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Fun in the SundaYS</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Let&#39;s do a Fun FridaYS post on Sunday.&lt;/p&gt;
&lt;p&gt;I wrote the YS one liner to open 40 random Rosetta Code tasks written in
Clojure.&lt;/p&gt;
&lt;p&gt;&lt;code&gt;bash
$ cd RosettaCodeData
$ vim $(ys -e &#39;sh-out(&#34;find Lang/Clojure&#34;):lines:shuffle
               .mapv(fn([d] sh-out(&#34;ls $d&#34;):lines
               .mapv(fn([f] say(&#34;$d/$f&#34;)))))&#39; |
        grep -v &#39;\-[0-9]&#39; |
        head -40)&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Pretty cool, right?&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-27/fun-in-the-sundays/</link>
      <pubDate>Sun, 27 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-27/fun-in-the-sundays/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-27/fun-in-the-sundays.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>The YS Core YAML-Schema</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;The term &#34;YAML Schema&#34; is a bit of unfortunate history.&lt;/p&gt;
&lt;p&gt;It&#39;s not the YAML version of a JSON Schema.&lt;/p&gt;
&lt;p&gt;In my opinion it needs to be renamed because it&#39;s not a schema in the typical
sense of the word.
The term has been part of the YAML spec since the beginning.&lt;/p&gt;
&lt;p&gt;Let&#39;s use the term &#34;YAML-Schema&#34; instead of &#34;YAML Schema&#34; to be clear that this
is not a typical schema applied to a YAML file.&lt;/p&gt;
&lt;p&gt;Typically a schema is a set of rules that are used to validate data.&lt;/p&gt;
&lt;p&gt;A YAML-Schema is a set of rules about how untagged nodes are implicitly tagged
during the loading process.&lt;/p&gt;
&lt;p&gt;Allow me to explain.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-26/the-ys-core-yaml-schema/</link>
      <pubDate>Sat, 26 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-26/the-ys-core-yaml-schema/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-26/the-ys-core-yaml-schema.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS on the Go</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;&lt;a href=&#34;2025-07-24.md#whats-the-problem-with-graalvm&#34;&gt;Yesterday&lt;/a&gt; I hinted at the idea
of YS hosted on Go.&lt;/p&gt;
&lt;p&gt;This doesn&#39;t mean that YS would be rewritten in Go or that it wouldn&#39;t compile
to Clojure.
The Lisp is still essential to YS.&lt;/p&gt;
&lt;p&gt;Where I was going was the possibility of creating a Clojure hosted on Go, which
I&#39;ve been thinking about for a while.&lt;/p&gt;
&lt;p&gt;Go is the backbone of technologies like Kubernetes, where YS wants to provide
a more powerful YAML experience.&lt;/p&gt;
&lt;p&gt;As I was getting ready for bed, the word &#34;Glojure&#34; popped into my head.&lt;/p&gt;
&lt;p&gt;What a perfect name for a Go hosted Clojure!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-25/ys-on-the-go/</link>
      <pubDate>Fri, 25 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-25/ys-on-the-go/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-25/ys-on-the-go.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Why YS Chose Clojure</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;So YS compiles to Clojure.&lt;/p&gt;
&lt;p&gt;It also has a Clojure runtime and access to the Clojure ecosystem.&lt;/p&gt;
&lt;p&gt;It&#39;s also written in Clojure. (It didn&#39;t have to be. The compiler could have
been written in any language.)&lt;/p&gt;
&lt;p&gt;Why Clojure?&lt;/p&gt;
&lt;p&gt;I&#39;ll explore that topic today.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-24/why-ys-chose-clojure/</link>
      <pubDate>Thu, 24 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-24/why-ys-chose-clojure/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-24/why-ys-chose-clojure.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Streaming Mode</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;We&#39;ve seen before that YS can work with YAML files that contain multiple
documents.
&#34;Document&#34; is the YAML term for a single top level node (object).&lt;/p&gt;
&lt;p&gt;YS returns the last document in the file by default.&lt;/p&gt;
&lt;p&gt;YS can also load all the documents in the file.&lt;/p&gt;
&lt;p&gt;This is called streaming mode, and we&#39;ll learn more about it today.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-23/ys-streaming-mode/</link>
      <pubDate>Wed, 23 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-23/ys-streaming-mode/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-23/ys-streaming-mode.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>ys and yq</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Today I met &lt;a href=&#34;https://github.com/mikefarah&#34;&gt;Mike Farah&lt;/a&gt;, the creator of
&lt;a href=&#34;https://github.com/mikefarah/yq&#34;&gt;yq&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;I help maintain the &lt;a href=&#34;https://github.com/yaml/go-yaml&#34;&gt;go-yaml&lt;/a&gt; YAML framework
for Go, and am working with Mike to help it fix certain issues in yq.&lt;/p&gt;
&lt;p&gt;It looks like a promising future for both go-yaml and yq.&lt;/p&gt;
&lt;p&gt;It turns out that YS has a lot of crossovers with yq.&lt;/p&gt;
&lt;p&gt;Let&#39;s take a closer look at how they compare.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-22/ys-and-yq/</link>
      <pubDate>Tue, 22 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-22/ys-and-yq/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-22/ys-and-yq.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Calling Shell Commands from YAML</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Wouldn&#39;t it be handy to get data from shell commands in YAML?&lt;/p&gt;
&lt;p&gt;Well you can, and it&#39;s really easy.&lt;/p&gt;
&lt;p&gt;YS has a bunch of functions in its Standard Library for calling shell commands,
and passing data to and from them.&lt;/p&gt;
&lt;p&gt;Let&#39;s take a look...&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-21/calling-shell-commands-from-yaml/</link>
      <pubDate>Mon, 21 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-21/calling-shell-commands-from-yaml/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-21/calling-shell-commands-from-yaml.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YAML Best Practices</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;YAML has a &lt;a href=&#34;https://yaml.org/spec/1.2.2/ext/team/&#34;&gt;Core Development Team&lt;/a&gt; of
five people that I am a member of.&lt;/p&gt;
&lt;p&gt;In May 2024, 4 of us met in Berlin.
One of the things we did was to write a list of best practices for YAML.
We came up with a list of 40 or so things that we all agreed on.&lt;/p&gt;
&lt;p&gt;Today I&#39;ll share some of those with you.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-20/yaml-best-practices/</link>
      <pubDate>Sun, 20 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-20/yaml-best-practices/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-20/yaml-best-practices.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YAML Explicit Keys and YS</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Did you know that in YAML you can write:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;yaml
? foo
: bar&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;instead of:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;yaml
foo: bar&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;The &lt;code&gt;?&lt;/code&gt; is called an explicit key indicator.&lt;/p&gt;
&lt;p&gt;But why would you want to use it?&lt;/p&gt;
&lt;p&gt;It&#39;s not often useful in YAML config files, but it is actually useful in YS
code.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-19/yaml-explicit-keys-and-ys/</link>
      <pubDate>Sat, 19 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-19/yaml-explicit-keys-and-ys/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-19/yaml-explicit-keys-and-ys.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Fun FridaYS — Dragon Curve</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;On &lt;a href=&#34;2025-06-27.md&#34;&gt;Friday June 27th&lt;/a&gt; we found a task on &lt;a href=&#34;https://rosettacode.org/wiki/Category:Programming_Tasks&#34;&gt;Rosetta Code&lt;/a&gt; and converted the
&lt;a href=&#34;https://clojure.org&#34;&gt;Clojure&lt;/a&gt; solution to YS.&lt;/p&gt;
&lt;p&gt;Let&#39;s do that again today.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-18/fun-fridays--dragon-curve/</link>
      <pubDate>Fri, 18 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-18/fun-fridays--dragon-curve/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-18/fun-fridays--dragon-curve.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Comment Syntax</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;What is the syntax for comments in YS?&lt;/p&gt;
&lt;p&gt;Well that&#39;s simple.&lt;/p&gt;
&lt;p&gt;YS code is YAML, so the comment syntax is the same as YAML.&lt;/p&gt;
&lt;p&gt;Well, there&#39;s a little bit more to it than that.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-17/ys-comment-syntax/</link>
      <pubDate>Thu, 17 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-17/ys-comment-syntax/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-17/ys-comment-syntax.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Making YS be Valid YAML</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;I&#39;ll say it again.
All YS syntax is 100% YAML.  The YS compiler uses a third party YAML parser so
there is no way that YS code cannot be YAML.&lt;/p&gt;
&lt;p&gt;YS code also uses a lot of Clojure syntax.
This makes sense since the code gets compiled to Clojure in the end.&lt;/p&gt;
&lt;p&gt;Some Clojure code looks a lot like YAML but with subtle differences.&lt;/p&gt;
&lt;p&gt;Today we&#39;ll talk about the little gotchas that can trip you up when you&#39;re
writing YS code, and how to work around them.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-16/making-ys-be-valid-yaml/</link>
      <pubDate>Wed, 16 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-16/making-ys-be-valid-yaml/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-16/making-ys-be-valid-yaml.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Currying in YAML Configs</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;In functional programming, currying is a technique where a function that takes
multiple arguments is called with fewer arguments than it takes and returns a
function that takes the remaining arguments.&lt;/p&gt;
&lt;p&gt;In Clojure and YS, the &lt;code&gt;partial&lt;/code&gt; function is used to create a curried function.&lt;/p&gt;
&lt;p&gt;Here&#39;s an example:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;bash
$ ys -e &#39;
multiply-by-6 =: partial(mul 6)
multiply-by-7 =: mul.partial(7)
say: multiply-by-6(7)
say: multiply-by-7(6)
&#39;
42
42&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;That&#39;s neat but how is it useful in YAML configs?&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-15/ys-currying-in-yaml-configs/</link>
      <pubDate>Tue, 15 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-15/ys-currying-in-yaml-configs/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-15/ys-currying-in-yaml-configs.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Mapping Key Uniqueness</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;I&#39;ve said it before, but YS code is 100% valid YAML.&lt;/p&gt;
&lt;p&gt;Here&#39;s a YS program:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;!ys-0
say: &#39;You say Goodbye&#39;
say: &#39;I say Hello&#39;&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;YAML says that mapping keys must be unique.&lt;/p&gt;
&lt;p&gt;That program seems to be a YAML mapping with two keys that are the same.&lt;/p&gt;
&lt;p&gt;How can this be valid YAML?&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-14/ys-mapping-key-uniqueness/</link>
      <pubDate>Mon, 14 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-14/ys-mapping-key-uniqueness/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-14/ys-mapping-key-uniqueness.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Testing Part 2</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;&lt;a href=&#34;2025-07-12.md&#34;&gt;Yesterday&lt;/a&gt; we talked about writing tests in YS.&lt;/p&gt;
&lt;p&gt;We also introduced the &lt;code&gt;ys::taptest&lt;/code&gt; library, but we didn&#39;t really cover how it
works.&lt;/p&gt;
&lt;p&gt;Let&#39;s take a closer look...&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-13/ys-testing-part-2/</link>
      <pubDate>Sun, 13 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-13/ys-testing-part-2/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-13/ys-testing-part-2.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Testing</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;YS is a great language for writing tests in.&lt;/p&gt;
&lt;p&gt;Why?&lt;/p&gt;
&lt;p&gt;Well tests are mostly data.
Inputs and outputs for some code you want to test.
Code is usually in functions, and functions usually have names and names are
just strings and strings are just data.&lt;/p&gt;
&lt;p&gt;YAML is a great format for data.
YS is YAML with code (expressed as YAML data).&lt;/p&gt;
&lt;p&gt;So it seems like YS should be a great language for writing tests in.
And it is.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-12/ys-testing/</link>
      <pubDate>Sat, 12 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-12/ys-testing/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-12/ys-testing.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YAML gets YS in PHP, C#, Lua &amp; Haskell</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;YS is a YAML loader module.
On one hand it does have super powers,
but on the other hand it&#39;s just a plain YAML loader.&lt;/p&gt;
&lt;p&gt;A YAML loader is a utility that can turn YAML into a data structure.
Every modern language has a YAML loader.
Most have many.&lt;/p&gt;
&lt;p&gt;YS is the first YAML loader that was made for every programming language.&lt;/p&gt;
&lt;p&gt;Well that&#39;s the goal anyway.&lt;/p&gt;
&lt;p&gt;For the past year it&#39;s only had loaders for 11 languages:
&lt;a href=&#34;https://clojars.org/org.yamlscript/clj-yamlscript&#34;&gt;Clojure&lt;/a&gt;,
&lt;a href=&#34;https://shardbox.org/shards/yamlscript&#34;&gt;Crystal&lt;/a&gt;,
&lt;a href=&#34;https://github.com/yaml/yamlscript-go&#34;&gt;Go&lt;/a&gt;,
&lt;a href=&#34;https://clojars.org/org.yamlscript/yamlscript&#34;&gt;Java&lt;/a&gt;,
&lt;a href=&#34;https://juliahub.com/ui/Packages/General/YAMLScript&#34;&gt;Julia&lt;/a&gt;,
&lt;a href=&#34;https://www.npmjs.com/package/@yaml/yamlscript&#34;&gt;NodeJS&lt;/a&gt;,
&lt;a href=&#34;https://metacpan.org/dist/YAMLScript/view/lib/YAMLScript.pod&#34;&gt;Perl&lt;/a&gt;,
&lt;a href=&#34;https://pypi.org/project/yamlscript/&#34;&gt;Python&lt;/a&gt;,
&lt;a href=&#34;https://raku.land/zef:ingy/YAMLScript&#34;&gt;Raku&lt;/a&gt;,
&lt;a href=&#34;https://rubygems.org/search?query=yamlscript&#34;&gt;Ruby&lt;/a&gt;, and
&lt;a href=&#34;https://crates.io/crates/yamlscript&#34;&gt;Rust&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Until this week, that is...&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-11/yaml-gets-ys-in-php-c-lua--haskell/</link>
      <pubDate>Fri, 11 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-11/yaml-gets-ys-in-php-c-lua--haskell/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-11/yaml-gets-ys-in-php-c-lua--haskell.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Building YS</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Try running these commands on Linux or Mac:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;bash
git clone https://github.com/yaml/yamlscript
cd yamlscript
make install&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Chances are that everything will just work.
You&#39;ll have new builds of &lt;code&gt;~/.local/ys&lt;/code&gt; and &lt;code&gt;~/.local/lib/libys.so&lt;/code&gt; (&lt;code&gt;.dylib&lt;/code&gt; on
a Mac).&lt;/p&gt;
&lt;p&gt;YS actually has a lot of heavy dependencies like Clojure, Java, Maven, GraalVM,
etc.&lt;/p&gt;
&lt;p&gt;So how does it just work?&lt;/p&gt;
&lt;p&gt;Today I&#39;ll tell you!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-10/building-ys/</link>
      <pubDate>Thu, 10 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-10/building-ys/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-10/building-ys.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Fun with Function Tags</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;We&#39;ve seen different ways to call YS functions in YAML.&lt;/p&gt;
&lt;p&gt;Say we have this &lt;code&gt;file.yaml&lt;/code&gt;:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;yaml
people:
- Alice
- Bob
- Charlie&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;What if we wanted to reverse the list?&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-09/fun-with-function-tags/</link>
      <pubDate>Wed, 09 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-09/fun-with-function-tags/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-09/fun-with-function-tags.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>About the -0</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;The current version of YS as of today is &lt;code&gt;0.2.1&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;I&#39;m sure you&#39;ve noticed the &lt;code&gt;-0&lt;/code&gt; part of the &lt;code&gt;!ys-0&lt;/code&gt; tag by now.&lt;/p&gt;
&lt;p&gt;YS intends to be a &#34;versioned programming language&#34;, where &lt;code&gt;v2&lt;/code&gt; can behave
very differently from &lt;code&gt;v1&lt;/code&gt; while still being able to use &lt;code&gt;v1&lt;/code&gt; libraries and
such.&lt;/p&gt;
&lt;p&gt;Today I&#39;ll tell you a bit more about the versioning and how things are expected
to work.&lt;/p&gt;
&lt;p&gt;Remember, we are still officially at &lt;code&gt;v0&lt;/code&gt; so even the rules of how versioning
works are not yet set in stone!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-08/about-the--0/</link>
      <pubDate>Tue, 08 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-08/about-the--0/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-08/about-the--0.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS External Modules</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Reusing code is the cornerstone of good programming.&lt;/p&gt;
&lt;p&gt;If you see duplicate logic, refactor it into a function.&lt;/p&gt;
&lt;p&gt;If you see a function that&#39;s used in multiple places, move it to a module.&lt;/p&gt;
&lt;p&gt;If you need the module in multiple repos, publish it online.&lt;/p&gt;
&lt;p&gt;Today let&#39;s see how we&#39;d go about refactoring a YS program&#39;s useful functions
into an external module for reuse by anyone.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-07/ys-external-modules/</link>
      <pubDate>Mon, 07 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-07/ys-external-modules/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-07/ys-external-modules.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Regular Expressions</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;All modern programming languages have regular expressions.&lt;/p&gt;
&lt;p&gt;YS has them too.&lt;/p&gt;
&lt;p&gt;Perl was the first modern language to include them as a built-in feature.&lt;/p&gt;
&lt;p&gt;YS regexes borrow quite a bit from Perl&#39;s, but also behave as functions that
return matching results (unlike Perl, and more like all the others).&lt;/p&gt;
&lt;p&gt;Let&#39;s take a look...&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-06/ys-regular-expressions/</link>
      <pubDate>Sun, 06 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-06/ys-regular-expressions/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-06/ys-regular-expressions.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>The Special Little Symbol</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Yesterday I showed you a FizzBuzz solution in YS.
Here it is again:&lt;/p&gt;
&lt;p&gt;```yaml
!ys-0&lt;/p&gt;
&lt;p&gt;defn main(n=100):
  each x (1 .. n): !say
    or? _ x:
      str ((x % 3).! &amp;amp;&amp;amp;&amp;amp; &#39;Fizz&#39;):
          ((x % 5).! &amp;amp;&amp;amp;&amp;amp; &#39;Buzz&#39;)
```&lt;/p&gt;
&lt;p&gt;See that &lt;code&gt;_&lt;/code&gt; sitting there in the middle all by itself?&lt;/p&gt;
&lt;p&gt;What&#39;s that all about?&lt;/p&gt;
&lt;p&gt;Well &lt;code&gt;_&lt;/code&gt; is a special symbol in YS, and it means different things in different
contexts.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-05/the-special-little-symbol/</link>
      <pubDate>Sat, 05 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-05/the-special-little-symbol/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-05/the-special-little-symbol.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Exercism Comparisons</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;&lt;a href=&#34;2025-06-27.md&#34;&gt;Last week&lt;/a&gt; I told you about &lt;a href=&#34;https://rosettacode.org/wiki/Category:YAMLScript&#34;&gt;YS on Rosetta Code&lt;/a&gt; and &lt;a href=&#34;2025-07-03.md&#34;&gt;yesterday&lt;/a&gt; I told you about &lt;a href=&#34;https://exercism.org/tracks/yamlscript&#34;&gt;YS on Exercism&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Today I&#39;m going to show you how to compare solutions to the same Rosetta Code
task using all the Exercism languages!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-04/exercism-comparisons/</link>
      <pubDate>Fri, 04 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-04/exercism-comparisons/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-04/exercism-comparisons.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Exercism</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Ever heard of a &lt;strong&gt;YS Exorcism&lt;/strong&gt;?!&lt;/p&gt;
&lt;p&gt;Sounds pretty scary!&lt;/p&gt;
&lt;p&gt;A &lt;a href=&#34;https://exercism.org/tracks/yamlscript&#34;&gt;YS Exercism&lt;/a&gt; on the other hand is one
of the best ways to learn YS.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://exercism.org&#34;&gt;Exercism.org&lt;/a&gt; is a free programming learning site with
tracks for over 75 languages!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-03/ys-exercism/</link>
      <pubDate>Thu, 03 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-03/ys-exercism/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-03/ys-exercism.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS / Java Interoperability</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;We know that YS is made from Clojure and the Clojure is made from Java.
Clojure code is interoperable with Java code.&lt;/p&gt;
&lt;p&gt;So is YS interoperable with Java?&lt;/p&gt;
&lt;p&gt;Yes, YS is can call Java methods on its objects.&lt;/p&gt;
&lt;p&gt;Let&#39;s see how to do it.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-02/ys--java-interoperability/</link>
      <pubDate>Wed, 02 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-02/ys--java-interoperability/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-02/ys--java-interoperability.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Symbols</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Today I&#39;d like to show you why I love how YS handles symbols.&lt;/p&gt;
&lt;p&gt;Symbols are used to represent variables, functions, and other names in the
language.&lt;/p&gt;
&lt;p&gt;All the &lt;a href=&#34;2025-06-30.md&#34;&gt;shorties I showed you yesterday&lt;/a&gt; were symbols.
Symbols that resolved to functions.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-07-01/ys-symbols/</link>
      <pubDate>Tue, 01 Jul 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-07-01/ys-symbols/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-07-01/ys-symbols.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Shorties</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;From the start, YAML has always been about making data clean and easy to read.&lt;/p&gt;
&lt;p&gt;This carries over to YS code as well.&lt;/p&gt;
&lt;p&gt;Even though YS code compiles to Clojure, YS often has shorter alternatives for
Clojure&#39;s commonly used and longer function names.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-30/ys-shorties/</link>
      <pubDate>Mon, 30 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-30/ys-shorties/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-30/ys-shorties.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>The Truth about Sunday</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Or better yet...&lt;/p&gt;
&lt;h3&gt;The Sunday about Truth&lt;/h3&gt;
&lt;blockquote&gt;
&lt;p&gt;If I were to tell you that YS has a system,&lt;br&gt;
to determine if something is true...&lt;br&gt;
I&#39;d deserve hell and fire,&lt;br&gt;
and be labeled a liar,&lt;br&gt;
for in total truth, YS has 2!&lt;/p&gt;
&lt;/blockquote&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-29/the-truth-about-sunday/</link>
      <pubDate>Sun, 29 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-29/the-truth-about-sunday/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-29/the-truth-about-sunday.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Dot Chain Special Operators</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;&lt;a href=&#34;2025-06-27.md&#34;&gt;Yesterday&lt;/a&gt; we wrote a YS program by porting a Clojure program
from Rosetta Code.&lt;/p&gt;
&lt;p&gt;We introduced a bunch of new things without really explaining them.&lt;/p&gt;
&lt;p&gt;Today I&#39;ll explain a set of them.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-28/dot-chain-special-operators/</link>
      <pubDate>Sat, 28 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-28/dot-chain-special-operators/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-28/dot-chain-special-operators.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Fun FridaYS — Rosetta Code</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;It&#39;s Friday and I feel like having some fun.
With YS, of course.&lt;/p&gt;
&lt;p&gt;&lt;a href=&#34;https://rosettacode.org/wiki/Rosetta_Code&#34;&gt;Rosetta Code&lt;/a&gt; is a super fun site
that has over 1000 programming tasks that people solve in nearly 1000
programming languages (including &lt;a href=&#34;https://rosettacode.org/wiki/Category:YAMLScript&#34;&gt;YS&lt;/a&gt;).
If you&#39;ve never heard of it, you should check it out.&lt;/p&gt;
&lt;p&gt;Let&#39;s solve a task in YS that hasn&#39;t been solved yet!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-27/fun-fridays--rosetta-code/</link>
      <pubDate>Fri, 27 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-27/fun-fridays--rosetta-code/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-27/fun-fridays--rosetta-code.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Mode Switching</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;I&#39;ve mentioned YS &#34;modes&#34; in passing several times in this series.&lt;/p&gt;
&lt;p&gt;YS has 3 modes: &lt;code&gt;data&lt;/code&gt;, &lt;code&gt;code&lt;/code&gt;, and &lt;code&gt;bare&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Fully understanding modes is one of the most important things to understand
about YS.&lt;/p&gt;
&lt;p&gt;Today I want to go deeper on the details of modes.
This will make everything else much easier to explain going forward.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-26/ys-mode-switching/</link>
      <pubDate>Thu, 26 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-26/ys-mode-switching/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-26/ys-mode-switching.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>AI + Clojure Functions in YAML</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;&lt;a href=&#34;2025-06-24.md&#34;&gt;Yesterday&lt;/a&gt; we learned that all YS YAML input compiles to Clojure
(Lisp) before being evaluated by a native binary Clojure interpreter runtime.&lt;/p&gt;
&lt;p&gt;Does this mean that you could write Lisp functions in your YAML data files?
And then call them on your data?&lt;/p&gt;
&lt;p&gt;Of course it does!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-25/ai--clojure-functions-in-yaml/</link>
      <pubDate>Wed, 25 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-25/ai--clojure-functions-in-yaml/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-25/ai--clojure-functions-in-yaml.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>How Does YS Work?</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;What if I told you that...&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;YS is made out of Java&lt;/li&gt;
&lt;li&gt;YS uses no JVM&lt;/li&gt;
&lt;li&gt;YS is a binary Executable&lt;/li&gt;
&lt;li&gt;YS is also a Shared Library&lt;/li&gt;
&lt;li&gt;YS is actually a Lisp&lt;/li&gt;
&lt;li&gt;YS can use S-Expressions&lt;/li&gt;
&lt;li&gt;YS prefers YeS-Expressions&lt;/li&gt;
&lt;li&gt;YS can use modules written in:&lt;ul&gt;
&lt;li&gt;YS&lt;/li&gt;
&lt;li&gt;Any other language&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Make sense?&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-24/how-does-ys-work/</link>
      <pubDate>Tue, 24 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-24/how-does-ys-work/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-24/how-does-ys-work.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS One Liners</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;There&#39;s almost nothing I like more about programming than one liners.&lt;/p&gt;
&lt;p&gt;A one liner is a single line of code that does something useful and doesn&#39;t
require any extra steps to compile or run.&lt;/p&gt;
&lt;p&gt;You type one line, press enter, and get your result.&lt;/p&gt;
&lt;p&gt;I first learned about one liners in Perl.&lt;/p&gt;
&lt;p&gt;If we have a &lt;code&gt;file.txt&lt;/code&gt; with the following content:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;one
two
three
four
five&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Here&#39;s a Perl one liner that counts the number of lines in a file:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;bash
$ perl -E &#39;@l = &amp;lt;&amp;gt;; say scalar(@l)&#39; &amp;lt; file.txt
5&lt;/code&gt;&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-23/ys-one-liners/</link>
      <pubDate>Mon, 23 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-23/ys-one-liners/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-23/ys-one-liners.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>The gist of YS</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Yesterday we started learning about the &lt;code&gt;ys&lt;/code&gt; CLI and there&#39;s a lot more cool
stuff to learn about it.&lt;/p&gt;
&lt;p&gt;But today I want to switch it up and talk about one of my favorite programs that
I use many times a day.&lt;/p&gt;
&lt;p&gt;You probably know about &lt;a href=&#34;https://gist.github.com&#34;&gt;GitHub gists&lt;/a&gt;.
They are one of the best ways to share text files with others.&lt;/p&gt;
&lt;p&gt;Let&#39;s take a look!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-22/the-gist-of-ys/</link>
      <pubDate>Sun, 22 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-22/the-gist-of-ys/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-22/the-gist-of-ys.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>The `ys` Command</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;There are different ways to use YS but the most common is to use it via the YS
command-line tool: &lt;code&gt;ys&lt;/code&gt;; a very versatile tool indeed.&lt;/p&gt;
&lt;p&gt;There&#39;s a lot you can do with &lt;code&gt;ys&lt;/code&gt; including using it like you would use &lt;code&gt;jq&lt;/code&gt; or
&lt;code&gt;yq&lt;/code&gt; one-liners:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;bash
$ jq .bar &amp;lt; &amp;lt;(echo &#39;{&#34;foo&#34;: 123, &#34;bar&#34;: 456, &#34;baz&#34;: 789}&#39;)
456
$ yq .bar &amp;lt; &amp;lt;(echo -e &#39;foo: 123\nbar: 456\nbaz: 789&#39;)
456
$ ys .bar &amp;lt; &amp;lt;(echo -e &#39;foo: 123\nbar: 456\nbaz: 789&#39;)
456&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;Each of these tools have their own advantages and we&#39;ll be diving deep into
those waters soon enough.&lt;/p&gt;
&lt;p&gt;Today let&#39;s just start by exploring the basic things you can do with the &lt;code&gt;ys&lt;/code&gt;
CLI.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-21/the-ys-command/</link>
      <pubDate>Sat, 21 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-21/the-ys-command/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-21/the-ys-command.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>whens and lets</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Do you know how a YS assignment actually works?&lt;/p&gt;
&lt;p&gt;It compiles into a Lisp &lt;code&gt;let&lt;/code&gt; form.&lt;/p&gt;
&lt;p&gt;Let&#39;s take a look...&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-20/whens-and-lets/</link>
      <pubDate>Fri, 20 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-20/whens-and-lets/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-20/whens-and-lets.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>More Fancier YS Conditionals</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Yesterday we looked at the &lt;code&gt;cond&lt;/code&gt; and &lt;code&gt;case&lt;/code&gt; functions.&lt;/p&gt;
&lt;p&gt;The &lt;code&gt;cond&lt;/code&gt; function has a couple cousins: &lt;code&gt;condp&lt;/code&gt; and &lt;code&gt;condf&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;Let&#39;s take a look at them.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-19/more-fancier-ys-conditionals/</link>
      <pubDate>Thu, 19 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-19/more-fancier-ys-conditionals/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-19/more-fancier-ys-conditionals.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Fancier YS Conditionals</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Most languages support a &lt;code&gt;case&lt;/code&gt; or &lt;code&gt;switch&lt;/code&gt; construct which is a way to handle
multiple conditions.&lt;/p&gt;
&lt;p&gt;YS supports several similar but different constructs for this.&lt;/p&gt;
&lt;p&gt;Today we&#39;ll focus on the &lt;code&gt;cond&lt;/code&gt; and &lt;code&gt;case&lt;/code&gt; functions.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-18/fancier-ys-conditionals/</link>
      <pubDate>Wed, 18 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-18/fancier-ys-conditionals/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-18/fancier-ys-conditionals.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>When to when</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Yesterday we mentioned the &lt;code&gt;when&lt;/code&gt; function as an alternative to &lt;code&gt;if&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;It might seem like a weaker form, so why would you use it?&lt;/p&gt;
&lt;p&gt;It turns out that &lt;code&gt;when&lt;/code&gt; is is really useful for a few reasons.
You might end up using it more than &lt;code&gt;if&lt;/code&gt;!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-17/when-to-when/</link>
      <pubDate>Tue, 17 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-17/when-to-when/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-17/when-to-when.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>if - We Must</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Yesterday we talked about &lt;code&gt;if&lt;/code&gt; being a special form.&lt;/p&gt;
&lt;p&gt;It turns out that &lt;code&gt;if&lt;/code&gt; is special in other ways.
For instance, it requires &lt;em&gt;both&lt;/em&gt; the &lt;code&gt;then&lt;/code&gt; and &lt;code&gt;else&lt;/code&gt; &lt;em&gt;clauses&lt;/em&gt; to be present…
but… it doesn&#39;t require the actual &lt;code&gt;then&lt;/code&gt; and &lt;code&gt;else&lt;/code&gt; &lt;em&gt;keywords&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Today we&#39;ll finish our conversation about &lt;code&gt;if&lt;/code&gt; and go over all the specifics.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-16/if---we-must/</link>
      <pubDate>Mon, 16 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-16/if---we-must/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-16/if---we-must.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>if - You Are Special</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Yesterday I told you that &lt;code&gt;if&lt;/code&gt; is a function.&lt;/p&gt;
&lt;p&gt;I lied.&lt;/p&gt;
&lt;p&gt;In reality, &lt;code&gt;if&lt;/code&gt; is a &#34;special form&#34;.&lt;/p&gt;
&lt;p&gt;I&#39;ll explain special forms in a minute, but let&#39;s just say that they&#39;re
&#34;special&#34;!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-15/if---you-are-special/</link>
      <pubDate>Sun, 15 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-15/if---you-are-special/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-15/if---you-are-special.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>if - You Have to Ask!</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Today we&#39;re going to look at the &lt;code&gt;if&lt;/code&gt; command.&lt;/p&gt;
&lt;p&gt;In a functional language, &lt;code&gt;if&lt;/code&gt; statements are a bit different.&lt;/p&gt;
&lt;p&gt;They&#39;ll, well, um... Functions.&lt;/p&gt;
&lt;p&gt;So what&#39;s the big deal?&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-14/if---you-have-to-ask/</link>
      <pubDate>Sat, 14 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-14/if---you-have-to-ask/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-14/if---you-have-to-ask.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Global Variables</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Last night a gave a talk about YS and YAML to the &lt;a href=&#34;https://www.meetup.com/toronto-enterprise-devops-user-group/events/307801910/&#34;&gt;Toronto DevOps Meetup&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;I had a lot of fun, and met a lot of great people.&lt;/p&gt;
&lt;p&gt;Today I&#39;m going to share one of the things I covered last night.
Global variables.&lt;/p&gt;
&lt;p&gt;It&#39;s not the most exciting topic, but it can be useful.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-13/ys-global-variables/</link>
      <pubDate>Fri, 13 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-13/ys-global-variables/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-13/ys-global-variables.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Using Environment Variables</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Tonight I&#39;m giving a talk about YS and YAML to the &lt;a href=&#34;https://www.meetup.com/toronto-enterprise-devops-user-group/events/307801910/&#34;&gt;Toronto DevOps Meetup&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;What could be more important to a developer than environment variables?!&lt;/p&gt;
&lt;p&gt;Let me show you how to use environment variables in YS and in your YAML files.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-12/using-environment-variables/</link>
      <pubDate>Thu, 12 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-12/using-environment-variables/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-12/using-environment-variables.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Multi Functions</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Many languages let you define functions with multiple signatures.&lt;/p&gt;
&lt;p&gt;That is, you can have multiple functions with the same name but different
arguments.&lt;/p&gt;
&lt;p&gt;YS supports multi-arity functions.
It dispatches on the number of arguments.&lt;/p&gt;
&lt;p&gt;Let&#39;s see how it works.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-11/ys-multi-functions/</link>
      <pubDate>Wed, 11 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-11/ys-multi-functions/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-11/ys-multi-functions.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Where the Funcs Have No Name</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Any self-respecting functional language has a way to create anonymous functions.&lt;/p&gt;
&lt;p&gt;In YS there are more than one!&lt;/p&gt;
&lt;p&gt;Today we&#39;ll talk about nameless functions, why they are useful, and how to create and call them.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-10/where-the-funcs-have-no-name/</link>
      <pubDate>Tue, 10 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-10/where-the-funcs-have-no-name/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-10/where-the-funcs-have-no-name.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Functionally Speaking</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;YS is a functional programming language.&lt;/p&gt;
&lt;p&gt;Therefore we should be able to write functions in YS.&lt;/p&gt;
&lt;p&gt;This week I want to do a mini-series of blog posts about using and writing
functions in YS.&lt;/p&gt;
&lt;p&gt;Let&#39;s get started!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-09/functionally-speaking/</link>
      <pubDate>Mon, 09 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-09/functionally-speaking/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-09/functionally-speaking.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>In The Beginning</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;How did YAML get started in the first place?&lt;/p&gt;
&lt;p&gt;Today&#39;s Sunday post is about YAML, not YS.&lt;/p&gt;
&lt;p&gt;But since YS is YAML, I think that&#39;s OK.&lt;/p&gt;
&lt;p&gt;This is the story of how the &lt;a href=&#34;https://en.wikipedia.org/wiki/YAML&#34;&gt;YAML data language&lt;/a&gt; got its start as far back as &lt;a href=&#34;https://www.youtube.com/watch?v=rblt2EtFfC4&#34;&gt;1999&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;!!! note &#34;React and Comment here please!!!&#34;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;I&#39;m not sure how many people are reading this series, but I&#39;m enjoying
writing it.
It&#39;s nice to know that I&#39;m not alone on this Summer journey.

I recently added Reactions and Comments support to these blog posts.
Scroll down to the bottom of each post to see them.

If you are enjoying the [**Summer of YS**](
http://0.0.0.0:8000/blog/category/summer-of-ys/) series, please don&#39;t forget
to react (and comment if you want to) to let me know!
&lt;/code&gt;&lt;/pre&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-08/in-the-beginning/</link>
      <pubDate>Sun, 08 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-08/in-the-beginning/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-08/in-the-beginning.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>TMTOWTDI for YS Expressions</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Like I said before, in YS, There&#39;s More Than One Way To Do It.&lt;/p&gt;
&lt;p&gt;This is especially true for YS expressions.&lt;/p&gt;
&lt;p&gt;Later on you&#39;ll learn that YS is a Lisp in disguise.
In Lisp, an expression is a list consisting of a function and its arguments
inside a set of parentheses.&lt;/p&gt;
&lt;p&gt;Consider this Python code:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;python
name = &#34;World&#34;
print(&#34;Hello, &#34; + name + &#34;!&#34;)&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;In a Lisp, this would be written as:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;lisp
(def name &#34;World&#34;)
(println (str &#34;Hello, &#34; name &#34;!&#34;))&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;In YS, this &lt;em&gt;could&lt;/em&gt; be written as:&lt;/p&gt;
&lt;p&gt;&lt;code&gt;yaml
name =: &#39;World&#39;
say: str(&#39;Hello, &#39; name &#39;!&#39;)&lt;/code&gt;&lt;/p&gt;
&lt;p&gt;I say &lt;em&gt;could&lt;/em&gt; because... TMTOWTDI!&lt;/p&gt;
&lt;p&gt;Today I&#39;m going to show you many of the ways to DO IT in YS.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-07/tmtowtdi-for-ys-expressions/</link>
      <pubDate>Sat, 07 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-07/tmtowtdi-for-ys-expressions/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-07/tmtowtdi-for-ys-expressions.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Loops and Strings</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Yesterday I left you with a program that really needed to &#34;YS up&#34;!&lt;/p&gt;
&lt;p&gt;```bash
$ ys -e &#39;
url =:
  &#34;https://github.com/dominictarr/random-name/raw/master/first-names.json&#34;&lt;/p&gt;
&lt;p&gt;people =: url.curl().json/load().shuffle().take(3)
shoes =: read(&#34;shoes.yaml&#34;).yaml/load()&lt;/p&gt;
&lt;p&gt;say: str(people.0, &#34; wears size &#34;, shoes.0.size, &#34; &#34;, join([shoes.0.name, &#34;s&#34;]))
say: str(people.1, &#34; wears size &#34;, shoes.1.size, &#34; &#34;, join([shoes.1.name, &#34;s&#34;]))
say: str(people.2, &#34; wears size &#34;, shoes.2.size, &#34; &#34;, join([shoes.2.name, &#34;s&#34;]))
&#39;
```&lt;/p&gt;
&lt;p&gt;Let&#39;s make this awesome!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-06/loops-and-strings/</link>
      <pubDate>Fri, 06 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-06/loops-and-strings/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-06/loops-and-strings.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Curling (up North)</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Ever been to Manitoba?
I went there once when my flight from Seattle to Toronto diverted to Winnipeg
because the plane&#39;s toilets stopped working!
That&#39;s when I learned about the &lt;a href=&#34;https://www.winnipeg.ca/tourism/attractions/worlds-largest-curling-rock&#34;&gt;World&#39;s Largest Curling Rock&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;!!! note &#34;Toronto DevOps Meetup&#34;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Speaking of Toronto, I&#39;ll be giving a talk called [&#34;The YS way to YAML&#34;](
https://www.meetup.com/toronto-enterprise-devops-user-group/events/307801910/)
at the Toronto DevOps Meetup on June 12th.
That&#39;s one week from today!

If you&#39;re in town I hope to see you there!
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Today we&#39;ll be doing a little curling with YS.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-05/ys-curling-up-north/</link>
      <pubDate>Thu, 05 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-05/ys-curling-up-north/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-05/ys-curling-up-north.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Load and Compose your YAML Files</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Probably the biggest problem people have with YAML is that everything has to be
in one file.
Things start off nice and clean, but as requirements grow, so do your files!&lt;/p&gt;
&lt;p&gt;What if you could compose your YAML documents like you compose your code?
Lots of small, single-purpose, possibly reusable files that you can load and
compose together into the thing you need?&lt;/p&gt;
&lt;p&gt;That&#39;s what YS is all about.
As you know, YS is a functional language, and it has quite a few ways to load
data (and code too, since Code is Data™!) from external sources.&lt;/p&gt;
&lt;p&gt;Today we&#39;ll be looking at how to load things from disk files, including:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Other YS files&lt;/li&gt;
&lt;li&gt;YAML files (YAML is YS)&lt;/li&gt;
&lt;li&gt;JSON files (JSON is YAML)&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;You can also load things from CSV/TSV files, shell commands, databases, APIs,
environment variables, and the web, but those are topics for another day.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-04/load-and-compose-your-yaml-files/</link>
      <pubDate>Wed, 04 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-04/load-and-compose-your-yaml-files/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-04/load-and-compose-your-yaml-files.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS YAML Documents</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;YAML files (aka YAML streams) can contain multiple &#34;documents&#34;.&lt;/p&gt;
&lt;p&gt;A YAML document is a top level mapping or sequence &#34;node&#34;.
Most YAML files contain a single document, but YAML files can contain multiple
(or zero!) documents.
New documents are started with a line of three dashes: &lt;code&gt;---&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;YS can put these documents to all kinds of good use.&lt;/p&gt;
&lt;p&gt;When you &#34;load&#34; a YAML file with YS, the result is the evaluation of the final
document (by default).
But since YS is functional, it can access any of the other documents.&lt;/p&gt;
&lt;p&gt;Let&#39;s continue with &lt;a href=&#34;/blog/2025-06-02/yaml-variables/&#34;&gt;yesterday&#39;s&lt;/a&gt; shoes
example.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-03/ys-yaml-documents/</link>
      <pubDate>Tue, 03 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-03/ys-yaml-documents/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-03/ys-yaml-documents.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YAML Variables</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;YAML itself isn&#39;t a functional programming language, but advanced users are
probably aware of YAML&#39;s anchors, aliases and the merge key.&lt;/p&gt;
&lt;p&gt;The merge key is YAML&#39;s one functional thing, and it&#39;s actually not even part of
the &lt;a href=&#34;https://yaml.org/spec/1.2.2/&#34;&gt;YAML 1.2 spec&lt;/a&gt;.
However, people find it useful and many YAML implementations (including YS)
support it.&lt;/p&gt;
&lt;p&gt;The merge key (&lt;code&gt;&amp;lt;&amp;lt;&lt;/code&gt;) is a special key that allows you to merge the contents of
one mapping into another.&lt;/p&gt;
&lt;p&gt;Today we&#39;ll explore the merge key a bit and show how &lt;strong&gt;variables&lt;/strong&gt; can make it
nicer to use.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-02/yaml-variables/</link>
      <pubDate>Mon, 02 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-02/yaml-variables/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-02/yaml-variables.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>The Summer of YS</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Summer-of-YS</category>
        
      
      <description>&lt;p&gt;Today starts a 3 month long, daily summertime journey into the intricacies of
YAML and the wisdom of YS!
Put on your favorite pair of coding sunglasses, grab a refreshing config drink,
and let&#39;s get started!&lt;/p&gt;
&lt;p&gt;Back in March I promised to start writing more often about all the ways that YS
can help you out day-to-day with your YAML interactions.
When I last posted here it was barely Spring and now Spring is turning into
Summer.&lt;/p&gt;
&lt;p&gt;Seasonal turning points be damned, I think of Summer as June, July, and August.
In other words...&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;It&#39;s Summer dammit!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Let&#39;s declare this Summer, &lt;strong&gt;The Summer of YS&lt;/strong&gt;!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-06-01/the-summer-of-ys/</link>
      <pubDate>Sun, 01 Jun 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-06-01/the-summer-of-ys/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-06-01/the-summer-of-ys.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Run a YAML File with Bash!</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>General</category>
        
      
      <description>&lt;p&gt;Wait, what?!!?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;Run&lt;/em&gt;&lt;/strong&gt; a YAML file?&lt;/p&gt;
&lt;p&gt;And with Bash?&lt;/p&gt;
&lt;p&gt;How is that possible?&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2025-03-24/run-a-yaml-file-with-bash/</link>
      <pubDate>Mon, 24 Mar 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-03-24/run-a-yaml-file-with-bash/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-03-24/run-a-yaml-file-with-bash.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YAMLScript is YS!</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>General</category>
        
      
      <description>&lt;p&gt;Greetings! And welcome back to &lt;a href=&#34;https://yamlscript.org&#34;&gt;YAMLScript&lt;/a&gt; in 2025!&lt;/p&gt;
&lt;p&gt;Or as we now say, &lt;em&gt;&lt;strong&gt;YS in &#39;25!&lt;/strong&gt;&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;It&#39;s been a minute since our last update, but we&#39;ve been working super hard to
make YS the best it can be.&lt;/p&gt;
&lt;p&gt;Oh… What&#39;s &lt;strong&gt;&#34;YS&#34;&lt;/strong&gt;, you say?&lt;/p&gt;
&lt;p&gt;Well, don&#39;t say &#34;Y-S&#34;…&lt;/p&gt;
&lt;h2&gt;Say &#34;Wise&#34;!&lt;/h2&gt;
&lt;hr&gt;</description>
      <link>https://yamlscript.org/blog/2025-03-10/yamlscript-is-ys/</link>
      <pubDate>Mon, 10 Mar 2025 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2025-03-10/yamlscript-is-ys/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2025-03-10/yamlscript-is-ys.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>The Kubernetes Effect</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>General</category>
        
      
      <description>&lt;p&gt;In my many years of creating Open Source software and talking about it at
conferences, some of the most productive development times are often those
leading up to the presentation.&lt;/p&gt;
&lt;p&gt;In the last post, I mentioned that I was going to present a
&lt;a href=&#34;https://yamlscript.org/kubeys24&#34;&gt;90 minute YS tutorial&lt;/a&gt; at
&lt;a href=&#34;https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/&#34;&gt;KubeCon (November 15th in Salt Lake City)&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;The conference was amazing and the YS tutorial was a huge success.
I came away with the feeling that YAML and YS had found their community.
&lt;strong&gt;KubeCon felt like YAMLCon&lt;/strong&gt;!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2024-11-29/the-kubernetes-effect/</link>
      <pubDate>Fri, 29 Nov 2024 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2024-11-29/the-kubernetes-effect/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2024-11-29/the-kubernetes-effect.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>The Fall of YAMLScript!</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>General</category>
        
      
      <description>&lt;h2&gt;(or Exciting YS News for Fall 2024!)&lt;/h2&gt;
&lt;p&gt;Greetings!&lt;/p&gt;
&lt;p&gt;It&#39;s been over 3 months since the last blog post here.&lt;/p&gt;
&lt;p&gt;Just to be clear, the YS/YAMLScript project is alive and fantastic!&lt;/p&gt;
&lt;p&gt;We&#39;ve just been busy as hell on 2 very big things: &lt;a href=&#34;https://exercism.org&#34;&gt;&lt;strong&gt;Exercism&lt;/strong&gt;&lt;/a&gt; and &lt;a href=&#34;https://events.linuxfoundation.org/kubecon-cloudnativecon-north-america/&#34;&gt;&lt;strong&gt;KubeCon&lt;/strong&gt;&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;To be successful in both of these endeavors, YS needed to be amazing both as a
programming language (Exercism) and as a data language (KubeCon).&lt;/p&gt;
&lt;p&gt;There&#39;s so much new stuff to talk about, and I promise to write about all of
it after things get back to a normal pace.&lt;/p&gt;
&lt;p&gt;Today let&#39;s talk about Exercism, KubeCon and the positive impacts they&#39;ve had
on YS.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2024-10-05/the-fall-of-yamlscript/</link>
      <pubDate>Sat, 05 Oct 2024 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2024-10-05/the-fall-of-yamlscript/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2024-10-05/the-fall-of-yamlscript.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Go Julia!</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>General</category>
        
      
      <description>&lt;p&gt;Last week two new language bindings were added to the YS family:
&lt;a href=&#34;https://github.com/yaml/yamlscript-go&#34;&gt;Go&lt;/a&gt; and
&lt;a href=&#34;https://juliahub.com/ui/Packages/General/YAMLScript&#34;&gt;Julia&lt;/a&gt;.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2024-07-17/go-julia/</link>
      <pubDate>Wed, 17 Jul 2024 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2024-07-17/go-julia/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2024-07-17/go-julia.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Dr. StrangeYAML or How I Learned to Stop Worrying and Love the LLM</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>General</category>
        
      
      <description>&lt;p&gt;!!! quote &#34;&#34;&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Well now, what happened is, uh, one of our data scientists, uh, well, he
went a little funny in the head.
You know.
Just a little funny.
And uh, he went and did a silly thing.

Well, I&#39;ll tell you what he did.
He started chatting with computers... in YAML.

Well, let me finish, Elon.

Let me *finish*, Elon.

Well, listen, how do you think *I* feel about it?
&lt;/code&gt;&lt;/pre&gt;</description>
      <link>https://yamlscript.org/blog/2024-06-20/dr-strangeyaml-or-how-i-learned-to-stop-worrying-and-love-the-llm/</link>
      <pubDate>Thu, 20 Jun 2024 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2024-06-20/dr-strangeyaml-or-how-i-learned-to-stop-worrying-and-love-the-llm/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2024-06-20/dr-strangeyaml-or-how-i-learned-to-stop-worrying-and-love-the-llm.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Spring Update</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>General</category>
        
      
      <description>&lt;p&gt;It&#39;s been a while since I let you know what&#39;s been happening with YS.
I&#39;ve been busy working on it every day this year and I have a lot to tell you
about!&lt;/p&gt;
&lt;h3&gt;YS Activity in 2024&lt;/h3&gt;
&lt;p&gt;Let me start by telling you about some of the events that have happened in the
YS world recently.&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://www.youtube.com/watch?v=GajOBwBcFyA&#34;&gt;Seajure Talk&lt;/a&gt; -
  I gave a talk at the Seajure (Seattle Clojure) Meetup in March.&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://thenewstack.io/with-yamlscript-yaml-becomes-a-proper-programming-language/&#34;&gt;YS Article&lt;/a&gt; -
  The New Stack published an article about YS in March&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://www.therepl.net/episodes/52/&#34;&gt;YS Podcast&lt;/a&gt; -
  I was interviewed on the &#34;The REPL&#34; by Daniel Compton in April.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;Finally I&#39;m presenting a talk about &lt;a href=&#34;https://sched.co/1aBPY&#34;&gt;YS at the Open Source Summit North America&lt;/a&gt; this Thursday, April 18th.
Super excited about that!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2024-04-16/ys-spring-update/</link>
      <pubDate>Tue, 16 Apr 2024 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2024-04-16/ys-spring-update/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2024-04-16/ys-spring-update.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Firsts</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>General</category>
        
      
      <description>&lt;h3&gt;Remember Your First Time?&lt;/h3&gt;
&lt;p&gt;Do you remember the first time you wrote a program in a new language?
For YS, mine was yesterday!&lt;/p&gt;
&lt;p&gt;This is my first post of 2024.
I&#39;ve been working on YS non-stop since the last &lt;a href=&#34;2023-12-24.md&#34;&gt;YS Advent 2023&lt;/a&gt; post.
Too busy to write a blog post, I guess.&lt;/p&gt;
&lt;p&gt;Yesterday something awesome happened.&lt;/p&gt;
&lt;p&gt;Putting out a YS release is a complicated process.
It takes me about an hour to do it.
Of course I plan to automate it fully but I just haven&#39;t had the tuits.&lt;/p&gt;
&lt;p&gt;For the last several releases, I&#39;ve had a text file that listed all the steps
so that I wouldn&#39;t forget anything.
Yesterday I automated that list...&lt;/p&gt;
&lt;p&gt;...you guessed it...&lt;/p&gt;
&lt;p&gt;...in YS!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2024-03-14/ys-firsts/</link>
      <pubDate>Thu, 14 Mar 2024 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2024-03-14/ys-firsts/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2024-03-14/ys-firsts.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Wrapped and Ready</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;The Elves have everything wrapped up.&lt;/p&gt;
&lt;p&gt;Literally!&lt;/p&gt;
&lt;p&gt;Tonight&#39;s the big night.&lt;/p&gt;
&lt;p&gt;It&#39;s Time to Deliver!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-24/wrapped-and-ready/</link>
      <pubDate>Sun, 24 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-24/wrapped-and-ready/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-24/wrapped-and-ready.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Perl to Rust</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;When Santa is doing his job in the Luxembourg area, I&#39;ve always wondered how he
gets from Perl to Rust.&lt;/p&gt;
&lt;p&gt;Maybe he takes &lt;a href=&#34;https://oylenshpeegul.gitlab.io/from-perl-to-rust/introduction.html&#34;&gt;this route&lt;/a&gt;!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-23/perl-to-rust/</link>
      <pubDate>Sat, 23 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-23/perl-to-rust/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-23/perl-to-rust.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Flip Flops</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;Can you imagine Santa walking around in flip flops?
I&#39;ve never been up to the North Pole, but I&#39;m pretty sure there&#39;s no beaches.
I always pictured Santa wearing moon boots around the workshop.&lt;/p&gt;
&lt;p&gt;YS on the other hand, is all about flip flops!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-22/flip-flops/</link>
      <pubDate>Fri, 22 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-22/flip-flops/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-22/flip-flops.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YAML, Python and the Holy Graal</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;Which has a greater airspeed velocity... an unladen swallow or Santa&#39;s sleigh?&lt;/p&gt;
&lt;p&gt;Well, that depends... are we talking about an African or European swallow?&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;details&gt;&lt;summary&gt;&lt;strong style=&#34;color:red&#34;&gt;Huh?&lt;/strong&gt;&lt;/summary&gt;
&amp;nbsp;
&lt;iframe width=&#34;560&#34; height=&#34;315&#34;
  src=&#34;https://www.youtube.com/embed/uio1J2PKzLI?si=QA1x920QfN1GlkRs&#34;
  title=&#34;YouTube video player&#34;
  frameborder=&#34;0&#34;
  allow=&#34;accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share&#34;
  allowfullscreen&gt;&lt;/iframe&gt;
&lt;/details&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-21/yaml-python-and-the-holy-graal/</link>
      <pubDate>Thu, 21 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-21/yaml-python-and-the-holy-graal/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-21/yaml-python-and-the-holy-graal.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Godspeed</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;I wonder if Santa has a Hemi?
Supercharged, Turbocharged?
Maybe a Nitro Burning Funny Sleigh?
Dude&#39;s got to get around the world in one night.
Godspeed, my festive friend!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-20/godspeed/</link>
      <pubDate>Wed, 20 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-20/godspeed/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-20/godspeed.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Reindeer All The Way Down</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;Santa is in charge of Christmas.
He&#39;s the one who makes sure that all the children get presents.
But who is in charge of getting Santa his presents?
That&#39;s where the reindeer come in.
They are the ones who make sure that Santa gets his presents.
But who is in charge of getting the reindeer their presents?
More reindeer!
But who is in charge of getting the reindeer&#39;s reindeer their presents?
More reindeer!
It&#39;s reindeer all the way down.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-19/reindeer-all-the-way-down/</link>
      <pubDate>Tue, 19 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-19/reindeer-all-the-way-down/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-19/reindeer-all-the-way-down.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Santa&#39;s in d&#39;buggy</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;With one week to go, Santa&#39;s gotta get his sleigh in top shape.
Can&#39;t have any breakdowns on the big night.
His sleigh might look like a simple wooden buggy, but it&#39;s more temperamental
and buggy than a 2023 Tesla!&lt;/p&gt;
&lt;p&gt;But this is Santa we&#39;re talking about.
He&#39;s done this a few times, so he knows how to get the bugs out.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-18/santas-in-dbuggy/</link>
      <pubDate>Mon, 18 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-18/santas-in-dbuggy/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-18/santas-in-dbuggy.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Rosetta Code</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;How does Santa read all the signs in all the languages of the world?
That&#39;s a lot of languages to know on top of all the other things he has to do.
Luckily he has his trusty polyglot elf, Rosetta, at his side.
Bet you didn&#39;t know that!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-17/rosetta-code/</link>
      <pubDate>Sun, 17 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-17/rosetta-code/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-17/rosetta-code.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Let Lambda Come Over</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;We know the names of Santa&#39;s reindeer: Dasher, Dancer, Prancer, Vixen, Comet,
Cupid, Donner, Blitzen and Rudolph.
And his elves: Alabaster Snowball, Bushy Evergreen, Pepper Minstix, Shinny
Upatree, Sugarplum Mary, Wunorse Openslae, and the head elf, Bernard.&lt;/p&gt;
&lt;p&gt;But we don&#39;t know the names of Santa&#39;s lambda reindeer and elves.
Why would we?
They are anonymous!
They&#39;re also the hardest working of the bunch.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-16/let-lambda-come-over/</link>
      <pubDate>Sat, 16 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-16/let-lambda-come-over/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-16/let-lambda-come-over.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Naughty is Nice!</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;As the architect of a major world holiday, Santa Claus has hard design choices
to make.
What is Suki going to get this year?
He keeps it simple with the standard Naughty-Or-Nice algorithm.&lt;/p&gt;
&lt;p&gt;As architects of an aspiring new programming language, the YS folks have design
choices to make as well!&lt;/p&gt;
&lt;p&gt;Naughty-Or-Nice should not be discounted but what about Naughty-And-Nice?
Naughty-Xor-Nice???&lt;/p&gt;
&lt;p&gt;My personal favorite?&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Naughty-&lt;em&gt;Is&lt;/em&gt;-Nice!!&lt;/strong&gt;&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-15/naughty-is-nice/</link>
      <pubDate>Fri, 15 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-15/naughty-is-nice/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-15/naughty-is-nice.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Stocking Stuffers</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;It&#39;s always nice to get a little something extra in your stocking whilst waiting
for the big guy to show up on the big day.&lt;/p&gt;
&lt;p&gt;Learning eveything you need to know about YS in 24 days is a tall order.
I still have a quite a bit to learn about it myself! :-)&lt;/p&gt;
&lt;p&gt;It helps to learn the small stuff first.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-14/stocking-stuffers/</link>
      <pubDate>Thu, 14 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-14/stocking-stuffers/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-14/stocking-stuffers.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>History Lesson</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;Santa is Legend.
Legends have histories.
The histories of Santa are many and varied, some going back to the 4th century
AD.&lt;/p&gt;
&lt;p&gt;The history of YS is much shorter, but it&#39;s still a history.
Today I&#39;d like to tell you a little bit about it.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-13/history-lesson/</link>
      <pubDate>Wed, 13 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-13/history-lesson/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-13/history-lesson.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Future Proof</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;Santa has very little margin for error.
He has to get everything just right all in one night.&lt;/p&gt;
&lt;p&gt;YS is a work in progress, and will be for a long time.
I&#39;m trying to get it right, but I&#39;m no Santa!
In fact I&#39;m quite sure I&#39;ll get some things wrong.
That&#39;s just the nature of the beast when you&#39;re a programmer.&lt;/p&gt;
&lt;p&gt;Also, have you ever wondered why the magic YS starter tag has that &lt;code&gt;/v0&lt;/code&gt; at the
end?&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-12/future-proof/</link>
      <pubDate>Tue, 12 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-12/future-proof/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-12/future-proof.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>The YeS Express</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;Santa&#39;s got a lot of ground to cover in a short amount of time.
He doesn&#39;t have time to deal with confusing maps and directions.&lt;/p&gt;
&lt;p&gt;Lisp has other-worldly powers of abstraction, but when it comes to reading
syntax, most people prefer the familiarity of this world.&lt;/p&gt;
&lt;p&gt;YS fully embraces all that Clojure has to offer, but syntax-wise it
also offers a more familiar face.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-11/the-yes-express/</link>
      <pubDate>Mon, 11 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-11/the-yes-express/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-11/the-yes-express.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>States and Ladders</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;Santa is a busy guy.
He has a lot of work to do.
He has to make a list and check it twice.
He has to find out who&#39;s naughty and nice.
He has the monumental task of transforming wishes into happiness.&lt;/p&gt;
&lt;p&gt;YS only needs to transform YS code into Clojure code.
But it&#39;s a bit more involved than you might think.&lt;/p&gt;
&lt;p&gt;To make things easier the YS compiler breaks the transformation into eight
distinct States and seven distinct ~~Ladders~~ transformations.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-10/states-and-ladders/</link>
      <pubDate>Sun, 10 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-10/states-and-ladders/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-10/states-and-ladders.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Coding with Style</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;What&#39;s the best thing about Rudolph&#39;s nose?
Is it that lights the way for Santa&#39;s sleigh?
I&#39;m calling BS on that.
I&#39;d say it&#39;s the main thing that gives the whole &lt;strong&gt;Sanata Story some Serious
Style!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Good programmers do more than just get their solutions right.
They do the whole thing with style.
That makes the program easier to read, understand and maintain.
It also gives the code a certain je ne sais quoi.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-09/coding-with-style/</link>
      <pubDate>Sat, 09 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-09/coding-with-style/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-09/coding-with-style.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Going to the Library</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;Programming in YS is as easy as reading a book.
The only thing you really need is some good books!
For that let&#39;s go to the library.&lt;/p&gt;
&lt;p&gt;By books of course I mean YS functions.
And by library I mean the YS Standard Library!
There you&#39;ll find all-time best sellers like &lt;code&gt;map&lt;/code&gt;, &lt;code&gt;filter&lt;/code&gt;, &lt;code&gt;reduce&lt;/code&gt; and
&lt;code&gt;say&lt;/code&gt;.&lt;/p&gt;
&lt;p&gt;And Standard isn&#39;t the only Library in town...&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-08/going-to-the-library/</link>
      <pubDate>Fri, 08 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-08/going-to-the-library/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-08/going-to-the-library.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Sharpen Your Tools</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;Wanna make some fun toys with YS?
You&#39;ll need some sharp tools.
You think those elves make all those toys with dull tools?&lt;/p&gt;
&lt;p&gt;The CLI tool &lt;code&gt;ys&lt;/code&gt; is the main tool you&#39;ll use to work with YS.
Today we&#39;ll learn about all the things you can do with it.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-07/sharpen-your-tools/</link>
      <pubDate>Thu, 07 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-07/sharpen-your-tools/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-07/sharpen-your-tools.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Modes of Transportation</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;How do you get around?
Some people walk, some ride bikes, some drive cars (or the cars drive them),
some take trains, some in planes, so many ways, even some in sleighs.&lt;/p&gt;
&lt;p&gt;In YS, data gets around via various modes of transportation...  3 modes to be
exact.&lt;/p&gt;
&lt;p&gt;Rememeber back on December 3rd when we talked about the 2 different states that
a YS program can be in?
In one state &lt;code&gt;say&lt;/code&gt; is a function, and in the other it&#39;s just a plain string.&lt;/p&gt;
&lt;p&gt;We call these states &#34;modes&#34;, and there is actually three of them.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-06/modes-of-transportation/</link>
      <pubDate>Wed, 06 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-06/modes-of-transportation/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-06/modes-of-transportation.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Unwrapping Gifts</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;It&#39;s certainly a relief now that I&#39;ve told you the big secret about YS.
Now that you know that YS is really Clojure, I don&#39;t have to dance
around the subject anymore.
I didn&#39;t want to scare you away by going Full-Lisp on you from the start!&lt;/p&gt;
&lt;p&gt;Now we can just get into it.
We can write, run and load YS until the cows come home.&lt;/p&gt;
&lt;p&gt;But wait... How do we do that?
You don&#39;t even have YS installed yet!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-05/unwrapping-gifts/</link>
      <pubDate>Tue, 05 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-05/unwrapping-gifts/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-05/unwrapping-gifts.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Santa&#39;s Big Secret</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;I&#39;ve got a little secret to tell you.
I&#39;ve been hiding a little something from you.
Even that&#39;s a lie.
I&#39;ve actually been hiding something very very big something from you.&lt;/p&gt;
&lt;blockquote&gt;
&lt;h2&gt;*** YS is a Lisp! *****&lt;/h2&gt;
&lt;/blockquote&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-04/santas-big-secret/</link>
      <pubDate>Mon, 04 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-04/santas-big-secret/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-04/santas-big-secret.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Load em Up!</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;blockquote&gt;
&lt;p&gt;On the 3rd day of Advent, my YS code gave to me...&lt;br&gt;
A sequence in a map tree!&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Did you know that all JSON &lt;em&gt;is&lt;/em&gt; YAML?
You should, because I told you that &lt;a href=&#34;2023-12-02.md&#34;&gt;yesterday&lt;/a&gt;!&lt;/p&gt;
&lt;p&gt;It&#39;s true.
YAML is a superset of JSON.
Both in terms of syntax and data model.&lt;/p&gt;
&lt;p&gt;This means that any possible valid JSON input is also valid as a YAML input.
A proper YAML loader and a JSON loader should produce the same data structure
from the same JSON input.&lt;/p&gt;
&lt;p&gt;!!! note&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;Assuming a YAML 1.2 loader using the YAML 1.2 JSON Schema
&lt;/code&gt;&lt;/pre&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-03/load-em-up/</link>
      <pubDate>Sun, 03 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-03/load-em-up/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-03/load-em-up.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>Twas a Bit</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;p&gt;!!! quote&lt;/p&gt;
&lt;pre&gt;&lt;code&gt;&#39;Twas a bit before Hanukkah, and all through the igloo,  
not a creature was stirring, not even a frog.  
The stockings were hung by the window with care,  
In hopes that St. Krampus soon would be there.  
The offspring were nestled all snug in their bunks,  
While visions of spicy-cookies danced in their heads.  
And cuz in their &#39;kerchief, and I in my bonnet,  
Had just settled down for a long winter&#39;s snooze.  
When out on the lawn there arose such a clatter,  
I sprang from my bench to see what was the matter.  
Away to the window, I flew like a jet,  
Tore open the shutters and threw up the curtain.  
The asteroid on the breast of the new-fallen frost,  
Gave the lustre of mid-day to dirt below.  
When what to my wondering eyes should materialize?  
But a miniature car, and eight tiny elephants.
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Well that was a bit weird.
Let&#39;s try again.
Don&#39;t worry, it&#39;s not that hard to write Winter holiday poetry when you have
YS on your side!&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-02/twas-a-bit/</link>
      <pubDate>Sat, 02 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-02/twas-a-bit/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-02/twas-a-bit.png" type="image/png" length="0" />
      
    </item>
    
    <item>
      <title>YS Advent 2023</title>
      
      
        
      <author>Ingy döt Net</author>
        
      
      
      
        
      <category>Advent-2023</category>
        
      
      <description>&lt;h3&gt;Seasons Greetings, my YAML friends!&lt;/h3&gt;
&lt;p&gt;What if I told you that you could write a &lt;strong&gt;program in YAML&lt;/strong&gt; that would
generate a Christmas tree?&lt;/p&gt;
&lt;p&gt;Well, you can! Here&#39;s how:&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-12-01/ys-advent-2023/</link>
      <pubDate>Fri, 01 Dec 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-12-01/ys-advent-2023/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-12-01/ys-advent-2023.png" type="image/png" length="None" />
      
    </item>
    
    <item>
      <title>Welcome to the YS Blog</title>
      
      
      
      
        
      
      <description>&lt;p&gt;&lt;strong&gt;Greetings!&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Welcome to the YS blog.&lt;/p&gt;
&lt;p&gt;This is where we will introduce you to novel concepts about YS as the language
evolves.&lt;/p&gt;</description>
      <link>https://yamlscript.org/blog/2023-10-26/welcome-to-the-ys-blog/</link>
      <pubDate>Thu, 26 Oct 2023 00:00:00 +0000</pubDate>
      <source url="https://yamlscript.org/rss.xml">YS — YAML Done Wisely</source>
      
      <guid isPermaLink="true">https://yamlscript.org/blog/2023-10-26/welcome-to-the-ys-blog/</guid>
      
      <enclosure url="https://yamlscript.org/assets/images/social/blog/2023-10-26/welcome-to-the-ys-blog.png" type="image/png" length="0" />
      
    </item>
    
  </channel>
</rss>