Cω
Диалект языка программирования C#Cω (также Cw или Comega) — экспериментальное расширение C#, разработанное командой WebData Microsoft SQL Server в сотрудничестве с Microsoft Research. Cω объединил в себе два более ранних проекта — Polyphonic C#, реализующий асинхронную многопоточность, и X#, или Xen, предназначенный для работы с XML и базами данных как с традиционными встроенными коллекциями, без использования отдельных API или библиотек.
Cω не планируется выпускать как отдельный коммерческий проект; его компилятор находится в свободном доступе, а идеи, опробованные в нем, используются для создания расширений LINQ. Кроме того, конструкции, обеспечивающие многопоточность, выделены в библиотеку Joins Concurrency Library, предназначенную для C# и других .NET языков.
Система типов Cω является гибридом объектной, реляционной (структурированной) и XML (частично структурированной):
- в язык добавлены потоки (аналог последовательностей в XQuery и XPath) — упорядоченные коллекции нуля или большего количества однотипных элементов.
-
тип данных
choice
позволяет объявлять набор взаимозаменяемых полей класса (в каждом экземпляре класса присутствует только одно из полей набора). - анонимные структуры позволяют моделировать некоторые элементы модели XML, например, порядок документов и то, что у элемента может быть несколько вложенных элементов с одинаковым именем, но разными значениями.
- добавлены контентные классы, члены которых сгруппированы в отдельные именованные структуры.
Cω добавляет в язык два принципиально новых класса операторов — операторы типа XPath, запрашивающие переменные класса по имени или по типу, и операторы типа SQL, выполняющие множественные операции над данными одного или нескольких объектов.
Логотип Cω
Комментарии
]]>blog comments powered by Disqus
]]>