Learning Ada 3: exploring types