Maybe look into Inko[1]. It is has good pattern matching (but perhaps not on function/method signatures).
[1] https://docs.inko-lang.org/manual/latest/getting-started/pat...