Yes escher is amazing thanks :)<p>&quot;more natural for general purpose modeling of data than, say, Python&#x27;s classes&quot;<p>Can you elaborate? In most cases single dispatch does just fine.  Then class = type except much slower