<?xml version="1.0" encoding="UTF-8"?>
<!-- generator="FeedCreator 1.8" -->
<?xml-stylesheet href="https://docs.tlapl.us/lib/exe/css.php?s=feed" type="text/css"?>
<rdf:RDF
    xmlns="http://purl.org/rss/1.0/"
    xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
    xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
    xmlns:dc="http://purl.org/dc/elements/1.1/">
    <channel rdf:about="https://docs.tlapl.us/feed.php">
        <title>TLA+ Wiki - creating</title>
        <description></description>
        <link>https://docs.tlapl.us/</link>
        <image rdf:resource="https://docs.tlapl.us/_media/logo.png" />
       <dc:date>2026-05-19T07:43:57+00:00</dc:date>
        <items>
            <rdf:Seq>
                <rdf:li rdf:resource="https://docs.tlapl.us/creating:jlists?rev=1762277569&amp;do=diff"/>
                <rdf:li rdf:resource="https://docs.tlapl.us/creating:safety?rev=1762211727&amp;do=diff"/>
                <rdf:li rdf:resource="https://docs.tlapl.us/creating:actions?rev=1762211304&amp;do=diff"/>
            </rdf:Seq>
        </items>
    </channel>
    <image rdf:about="https://docs.tlapl.us/_media/logo.png">
        <title>TLA+ Wiki</title>
        <link>https://docs.tlapl.us/</link>
        <url>https://docs.tlapl.us/_media/logo.png</url>
    </image>
    <item rdf:about="https://docs.tlapl.us/creating:jlists?rev=1762277569&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-04T17:32:49+00:00</dc:date>
        <dc:creator>ahelwer (ahelwer@undisclosed.example.com)</dc:creator>
        <title>jlists - Further simplified instanceof code</title>
        <link>https://docs.tlapl.us/creating:jlists?rev=1762277569&amp;do=diff</link>
        <description>Conjunction &amp; Disjunction Lists

Chapter 9 of Crafting Interpreters covers control flow - if, while, for, and all that.
TLA⁺ doesn&#039;t really have that, because TLA⁺ specifications aren&#039;t imperative programs.
However, TLA⁺ does have something similar.
When specifying a system&#039;s actions, we commonly need to do two things: write preconditions or &quot;guards&quot; controlling whether an action can be taken, and specify the set of possible next-state transitions.
For the former we use conjunction (aka logical …</description>
    </item>
    <item rdf:about="https://docs.tlapl.us/creating:safety?rev=1762211727&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-03T23:15:27+00:00</dc:date>
        <dc:creator>ahelwer (ahelwer@undisclosed.example.com)</dc:creator>
        <title>safety - Use instanceof-cast syntax and new switch syntax</title>
        <link>https://docs.tlapl.us/creating:safety?rev=1762211727&amp;do=diff</link>
        <description>Model-Checking Safety Properties

This has been a long journey.
We learned scanning, then parsing, then how to interpret basic constant expressions.
Statements were added next, then we mastered the difficult art of parsing conjunction &amp; disjunction lists.
Finally, we learned how to apply operators and move between states.
Everything is in place; it is time to write a TLA⁺ model-checker.</description>
    </item>
    <item rdf:about="https://docs.tlapl.us/creating:actions?rev=1762211304&amp;do=diff">
        <dc:format>text/html</dc:format>
        <dc:date>2025-11-03T23:08:24+00:00</dc:date>
        <dc:creator>ahelwer (ahelwer@undisclosed.example.com)</dc:creator>
        <title>actions - One more instanceof-cast</title>
        <link>https://docs.tlapl.us/creating:actions?rev=1762211304&amp;do=diff</link>
        <description>Variables, States, and Actions

Currently, our implementation is not significantly different from any other ordinary programming language.
However, TLA⁺ is not an ordinary language - it isn&#039;t even a programming language!
TLA⁺ specifications are not programs.
Properly speaking, a TLA⁺ specification is a predicate over an infinite sequence of states, where states are an assignment of values to variables.
TLA⁺ specs&#039; closest analogue to program execution is enumerating the set of all unique reachab…</description>
    </item>
</rdf:RDF>
