what about try cases? it's not match but it's not a partial function either