<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"><channel><title>Thomas Greco</title><description>TypeScript, functional programming, and the things I build on weekends.</description><link>https://tgrecojs.com/</link><language>en</language><item><title>Prevent Impossible States Pt. 1 - Union Types</title><link>https://tgrecojs.com/posts/union-types-are-the-typescript-feature-i-should-have-learned-first/</link><guid isPermaLink="true">https://tgrecojs.com/posts/union-types-are-the-typescript-feature-i-should-have-learned-first/</guid><description>Use TypeScript discriminated unions to require the right fields, narrow object types, and catch unhandled cases.</description><pubDate>Tue, 27 Oct 2026 00:00:00 GMT</pubDate><category>typescript</category><category>union-types</category><category>category-theory</category><category>series</category></item><item><title>Fun with Functors</title><link>https://tgrecojs.com/posts/fun-with-functors/</link><guid isPermaLink="true">https://tgrecojs.com/posts/fun-with-functors/</guid><description>JavaScript arrays are functors. What that means, the two laws they follow, and how to build a Box of your own.</description><pubDate>Tue, 01 May 2018 00:00:00 GMT</pubDate><category>javascript</category><category>functional-programming</category><category>functors</category></item></channel></rss>