Proposal: Interfaces for more generic code

Crystal has interfaces in Java sense: