actually I noticed scala has pattern matching as a first class control construct. Its pretty amazing. Just right there in the language (which is not surprising, given the functional influence in it).