This is pretty incredible and playful. Probability and state would be fascinating; I wonder if this wouldn&#x27;t be best achieved by having &#x27;Type&#x27; actually be thought of as &#x27;Attribute&#x27;, so you could have a &quot;beautiful(simple(plant)))&quot; turn into &quot;dead(simple(plant)))&quot;, having the attribute itself perform as a state.