Re[10]: Метапрограммисты надоели
От: WolfHound  
Дата: 07.10.14 16:06
Оценка:
Здравствуйте, Evgeny.Panasyuk, Вы писали:

EP>Хотелось бы увидеть пример подобной функции apply. Допустим что библиотека реализована — как оно будет выглядеть?

Примерно так:
tempalte apply(f : auto, g : auto, xs : list[auto]) : auto 
{
    def z = zip(xs, transform(xs, compose(g, g)));
    for_each(x in z)
    {
        f(x);
    }
}


EP>Это практически такой же сферический конь.

В твоём примере вообще задачи нет. Те совсем. Никакой.

EP>Для меня реальная задача — это какой-нибудь прикладной алгоритм,

Для меня тоже. Только у меня всё на макросах.
Размер Nitra.Grammar и Nitra.Compiler можешь посмотреть сам.

EP>Уже читал, и как я уже писал — Nemerle реально впечатляет Особенно определение своего синтаксиса для макросов, а также кооперация IDE и строк-DSL'ей.

Ты плохо читал.

Вторая итерация была сильно позже (2009г) и умели мы гораздо больше, но понимали всё ещё столько же . Ну правильно, макросов же ещё не писали толком. А главное, пока было оплачиваемое время между первой и второй итерациями, — лепили фреймворк. И не то чтобы он оказался совсем не нужен, просто наше представление о программирование было всё ещё сильно искажено призмой C# и даже C++.

А теперь ДЗЕН вынесенный из этого проекта:
Ближе к концу мы уже не стремились лепить библиотечные навороты и расширять фреймворк, а скорее старались заменять макросами рукопашный код насовсем но локально. Т.е. гораздо проще разработать какую-то феньку нужную в 5 местах и без параметров, и какую-то очень похожую феньку (даже внешне точно такую-же) для 5 других мест, чем лепить универсальную, конфигурируемую через кучу параметров мега-фень, способную покрыть все эти 10 мест и ещё 20 гипотетических похожих.

Это ключевые моменты.
Остальное это просто пояснение, почему это именно так.
Ты тут просишь слепить фреймворк. А он не нужен.
Уж поверь практикам.

EP>Полного рабочего кода на Nemerle не было,

А это что?
http://rsdn.ru/forum/philosophy/5342142.1
Автор: VladD2
Дата: 24.10.13


EP>точно также как и ответа на сообщение по ссылке

А на что там вообще отвечать то?
... << RSDN@Home 1.2.0 alpha 5 rev. 62>>
Пусть это будет просто:
просто, как только можно,
но не проще.
(C) А. Эйнштейн
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.