Long ago I proposed an attribute for code language because I was unhappy with all the class="language-whatever" thing. I proposed @lang because I thought there could be an issue with speech synthesis and languages, but it was effectively pointed out that such attribute does not fit this case.
+1 for @type, it is widely consistent to use that for MIME types. But I guess that it will bring nowhere (as usual) unless vendors show any interest for this issue.