- Доклад
-
"Nemerle must die" «Nemerle deep dive» («Глубокое погружение в Nemerle»).
- Докладчик
- Чистяков Владислав, текущий maintainer, архитектор и идеолог языка Nemerle.
Рассказ о языке:
- Ядро языка;
- Вывод типов;
- Мимикрия под C# в области поддержки ООП;
- Поддержка функционального программирования:
- Функции как первоклассные значения;
- Алгебраические типы;
- Сопоставление с образцом;
- Гигиенические (LISP) макросы в Nemerle:
- Что такое? С чем едят?
- Как сочетаются с IDE и прочими технологиями?
- Сложности разработки, отладки, сопровождения.
- Развечание мифов;
- Ограничения версии 1.0;
- Что будет в Nemerle 2.0?
- Примеры практического использования макросов, прикладные макро-библиотеки:
- Nemerle.Xml — XML-литералы;
- Nemerle.Peg — быстрый и гибкий генератор парсеров шаговой доступности;
- ComputationExpressions:
- Асинхронное программирование;
- Yield внутри выражения;
- Другие применнения.
- Nemerle on Rails — миграции, автоматизация формирования ViewModel, движок рендеренга HTML «Spark»;
- Nemerle.WUI.Reactive — реактивный Web-интерфейс на основе статически типизированного языка вместо скриптов;
- Мелкие полезняшки:
- Автоматизация реализации зависимых свойств в WPF
- Record — автоматизация создания конструкторов
- Автоматизация паттернов проектирования ООП (Abstract factory, Aggregate, Proxy, Singleton)
- Late-binding — позднее связывание
- Surroundwith — создание аналогов using и lock в мгновение ока.
- Memoize
- $-строки
- Assertions
- ListComprehension
- Regexp match
- StructuralEquality, LexicographicCompareTo, StructuralHashCode
- .. и многое другое.
Видеозапись