<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Part II — The Disciplines on</title><link>https://tyu.lexbytes.org/en/docs/latest/part-2/</link><description>Recent content in Part II — The Disciplines on</description><generator>Hugo</generator><language>en-US</language><atom:link href="https://tyu.lexbytes.org/en/docs/latest/part-2/index.xml" rel="self" type="application/rss+xml"/><item><title>Chapter 3 — Types: Making Illegal Values Unrepresentable</title><link>https://tyu.lexbytes.org/en/docs/latest/part-2/ch03-types/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyu.lexbytes.org/en/docs/latest/part-2/ch03-types/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;Every value is a claim about the world.&#10;A type is the claim written where the machine can read it.&lt;/p&gt;&#10;&lt;p&gt;— workshop wall&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="31-the-practice"&gt;&#10; &lt;a class="docs-heading-anchor" href="#31-the-practice" aria-label="Link to 3.1 The Practice"&gt;#&lt;/a&gt;&#10; 3.1 The Practice&#10;&lt;/h2&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&lt;strong&gt;The Practice.&lt;/strong&gt; &lt;em&gt;Every value has a type, and the type says which values&#10;make sense and which words may touch them. The checker rejects programs&#10;that break the promise before they exist — and when a value breaks it at&#10;run time anyway, the runtime traps with a name, not a shrug.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Chapter 4 — Contracts: Promises the Machine Reads</title><link>https://tyu.lexbytes.org/en/docs/latest/part-2/ch04-contracts/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyu.lexbytes.org/en/docs/latest/part-2/ch04-contracts/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;A type says what a value &lt;em&gt;is&lt;/em&gt;.&#10;A contract says what must be &lt;em&gt;true&lt;/em&gt;.&#10;Only one of them fits in a comment.&lt;/p&gt;&#10;&lt;p&gt;— workshop wall&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="41-the-practice"&gt;&#10; &lt;a class="docs-heading-anchor" href="#41-the-practice" aria-label="Link to 4.1 The Practice"&gt;#&lt;/a&gt;&#10; 4.1 The Practice&#10;&lt;/h2&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&lt;strong&gt;The Practice.&lt;/strong&gt; &lt;em&gt;A contract is a checked program about a claim: the&#10;checker verifies the claim&amp;rsquo;s shape at compile time, the runtime verifies&#10;the claim&amp;rsquo;s truth at the boundary, and both verifications apply to every&#10;caller, present and future.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Chapter 5 — Effects and Capabilities: The Two-Sided Law</title><link>https://tyu.lexbytes.org/en/docs/latest/part-2/ch05-effects-and-capabilities/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyu.lexbytes.org/en/docs/latest/part-2/ch05-effects-and-capabilities/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;A signature can say what arrives and what leaves.&#10;The interesting question is what happens &lt;em&gt;in between&lt;/em&gt;.&lt;/p&gt;&#10;&lt;p&gt;— workshop wall&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="51-the-practice"&gt;&#10; &lt;a class="docs-heading-anchor" href="#51-the-practice" aria-label="Link to 5.1 The Practice"&gt;#&lt;/a&gt;&#10; 5.1 The Practice&#10;&lt;/h2&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&lt;strong&gt;The Practice.&lt;/strong&gt; &lt;em&gt;Declare what a word does; the caller decides. A word&amp;rsquo;s&#10;effects are checked against the context that calls it, and a context&amp;rsquo;s&#10;capabilities belong to the code lexically inside it — so the reviewer&#10;reads the label on the tin, and the compiler checks that the contents&#10;match.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Chapter 6 — The Stack Has a Shape</title><link>https://tyu.lexbytes.org/en/docs/latest/part-2/ch06-the-stack-has-a-shape/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyu.lexbytes.org/en/docs/latest/part-2/ch06-the-stack-has-a-shape/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;Every phrase has a height.&#10;Most languages measure it at 3 a.m., in the field, with a broken device.&#10;Tyu measures it at compile time, on paper.&lt;/p&gt;&#10;&lt;p&gt;— workshop wall&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="61-the-practice"&gt;&#10; &lt;a class="docs-heading-anchor" href="#61-the-practice" aria-label="Link to 6.1 The Practice"&gt;#&lt;/a&gt;&#10; 6.1 The Practice&#10;&lt;/h2&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&lt;strong&gt;The Practice.&lt;/strong&gt; &lt;em&gt;Every phrase has a shape — what it adds, what it&#10;removes, and how high it reaches. The checker computes the reach for&#10;every word, composes it through every call, and refuses programs whose&#10;reach cannot be bounded.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Chapter 7 — Places, Borrowing, Ownership</title><link>https://tyu.lexbytes.org/en/docs/latest/part-2/ch07-places-borrowing-ownership/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyu.lexbytes.org/en/docs/latest/part-2/ch07-places-borrowing-ownership/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;Copying is a decision someone made.&#10;Ownership is a decision someone has to answer for.&lt;/p&gt;&#10;&lt;p&gt;— workshop wall&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="71-the-practice"&gt;&#10; &lt;a class="docs-heading-anchor" href="#71-the-practice" aria-label="Link to 7.1 The Practice"&gt;#&lt;/a&gt;&#10; 7.1 The Practice&#10;&lt;/h2&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&lt;strong&gt;The Practice.&lt;/strong&gt; &lt;em&gt;A place has one address and a rule: one writer or many&#10;readers, never both. A pointer borrows a place and lives exactly as long&#10;as its block. Custody moves — it is never cloned. The checker keeps the&#10;ledger, and the ledger has no rounding errors.&lt;/em&gt;&lt;/p&gt;</description></item><item><title>Chapter 8 — Touching Hardware: MMIO</title><link>https://tyu.lexbytes.org/en/docs/latest/part-2/ch08-touching-hardware/</link><pubDate>Mon, 01 Jan 0001 00:00:00 +0000</pubDate><guid>https://tyu.lexbytes.org/en/docs/latest/part-2/ch08-touching-hardware/</guid><description>&lt;blockquote&gt;&#10;&lt;p&gt;The datasheet is a specification.&#10;Most languages make you retype it as comments.&#10;Tyu makes you retype it as a contract.&lt;/p&gt;&#10;&lt;p&gt;— workshop wall&lt;/p&gt;&#10;&lt;/blockquote&gt;&#10;&lt;h2 id="81-the-practice"&gt;&#10; &lt;a class="docs-heading-anchor" href="#81-the-practice" aria-label="Link to 8.1 The Practice"&gt;#&lt;/a&gt;&#10; 8.1 The Practice&#10;&lt;/h2&gt;&#10;&lt;blockquote&gt;&#10;&lt;p&gt;&lt;strong&gt;The Practice.&lt;/strong&gt; &lt;em&gt;Hardware is described once, in a platform descriptor —&#10;devices named, registers placed, access rules stated. The source&amp;rsquo;s&#10;register-map is checked against that description row by row, and every&#10;access the source writes is checked against the rules. The datasheet&#10;becomes a compiler input.&lt;/em&gt;&lt;/p&gt;</description></item></channel></rss>