Похоже, что почти все функции на С# были заимствованы из других языков (OOP из Java, generics (параметрический полиморфизм) и lambdas из семейства ML, LINQ из монахов Haskell и динамических с динамических языков), но я не знаю, происхождение атрибутов (аннотации в мире Java). Является ли С# первым языком, который ввел атрибуты?
На каком языке сначала появились атрибуты
Ответ 1
Я впервые увидел атрибуты в виде комментариев к методу или параметру в файлах интерфейса COM IDL (Interface Definition Language) в мире С++. Я не знаю, были ли они изобретены там или нет. http://msdn.microsoft.com/en-us/library/aa367042.aspx
Ответ 2
Я думаю, что это был UML со стереотипами.