Я немного искал Mr. Блог Skeet о том, как повторно реализовать LINQ.
В частности, он утверждает, что код:
var list = (from person in people
where person.FirstName.StartsWith("J")
orderby person.Age
select person.LastName)
.ToList();
переводится в методы, которые являются методами расширения, предоставляемыми библиотекой LINQ:
people.Where(person => person.FirstName.StartsWith("J"))
.OrderBy(person => person.Age)
.Select(person => person.LastName)
Мой вопрос в том, как сделать так, чтобы большие значки с библиотекой позволяли им изменять язык для поддержки библиотеки? Или были ли эти слова уже зарезервированы до появления LINQ?