![[personal profile]](https://www.dreamwidth.org/img/silk/identity/user.png)
haskell datagrid
ocaml datagrid
Обратите внимание на количество найденных ссылок. И попытаться найти хотя бы одну из них которая соответствует искомому.
Я, конечно, понимаю, что заниматься мерянием производительности алгоритмов и разработкой сложной back-end логики это гораздо интереснее, чем делать GUI, но GUI тоже таки делать нужно.
У меня вот в последней сложной фиче, которую я делал, на back-end логику ушло пару дней, на ввод данных для нее - неделя и еще две недели на подгонку GUI чтобы это все было можно использовать как можно удобнее и быстрее.
ocaml datagrid
Обратите внимание на количество найденных ссылок. И попытаться найти хотя бы одну из них которая соответствует искомому.
Я, конечно, понимаю, что заниматься мерянием производительности алгоритмов и разработкой сложной back-end логики это гораздо интереснее, чем делать GUI, но GUI тоже таки делать нужно.
У меня вот в последней сложной фиче, которую я делал, на back-end логику ушло пару дней, на ввод данных для нее - неделя и еще две недели на подгонку GUI чтобы это все было можно использовать как можно удобнее и быстрее.
no subject
Date: 2009-07-11 12:26 pm (UTC)Но в ту сторону я полез именно за тем, чтобы придумать способ описания этого конечного автомата с участием пользователя, т.к. в FP как раз это все более математизировано, чем в привычных языках программирования.
no subject
Date: 2009-07-11 03:50 pm (UTC)В умных книжках пишут что ФП и автоматы - две вещи несовместные, т.к. у автоматов состояния есть, а в ФП их быть не должно.
no subject
Date: 2009-07-11 05:16 pm (UTC)Монады State и gen_fsm в эрланге, наверное, не существует?
no subject
Date: 2009-07-11 07:14 pm (UTC)Боюсь что уже не упомню. Помню что по-английски было.
Обосновывлось так: если у вас сплошные состояния то это уже к товарищу Тюрингу и всякой императивщине, всяческими костылями конечно запихнуть в ФП можно, но зачем?
--Монады State и gen_fsm в эрланге, наверное, не существует?
Конечно существуют.
no subject
Date: 2009-07-11 07:34 pm (UTC)Про костыли интересен более полный ответ - что вы ими считаете и почему?
no subject
Date: 2009-07-11 09:10 pm (UTC)Неправильно.
--Про костыли интересен более полный ответ - что вы ими считаете и почему?
Деалю системы управления для мобильных роботов.
Ради интереса попробовал на хаскеле.
Получилась куча монад и почти императивно.
no subject
Date: 2009-07-11 09:32 pm (UTC)Скепсис вещь хорошая, но по-моему лучше, когда он достаточно аргументирован.
no subject
Date: 2009-07-11 10:41 pm (UTC)no subject
Date: 2009-07-12 06:27 am (UTC)По сути там переписывание графов, хотя не сказал бы что хорошо разбираюсь в теме.
no subject
Date: 2009-07-12 06:34 am (UTC)Но тут проблема в другом. Машина тьюринга от современных процов и языков программирования отличается очень сильно, хотя я примерно представляю, как можно ее преобразовать до проца с простейшим набором действий.
А вот для лямбда-исчисления я затрудняюсь такую же последовательность представить, а во всех практических реализациях ФП используют уже готовые команды существующих процессоров или языков низкого уровня на которых это реализовано. Т.е. формально, операцию сложения можно описать в нумералах черча, но никто ж этого делать практически не станет, а вместо этого используют операции от обычных процессоров, которые сами по себе ближе к тьюрингу, чем к лямбдам.
no subject
Date: 2009-07-12 06:47 am (UTC)Как раз там есть лишь лента и таблица переходов, в отличие от ФП с лямбдами где ты можешь свободно заменять эквивалентные функции. Интересно было бы узнать, где в машине Тьюринга есть композиция/абстракция.
no subject
Date: 2009-07-12 06:54 am (UTC)Кстати, я сейчас почитал про SECD - там жеж тоже самое - список команд, и списки-регистры. По мне, так это тоже ближе к тьюрингу, чем к лямбда-исчислению, хотя там и добавлены операции конструирования и применения функций.
no subject
Date: 2009-07-12 07:01 am (UTC)Что ещё собственно требуется?
no subject
Date: 2009-07-11 06:41 pm (UTC)no subject
Date: 2009-07-11 10:38 pm (UTC)no subject
Date: 2009-07-12 02:47 am (UTC)no subject
Date: 2009-07-12 06:49 am (UTC)no subject
Date: 2009-07-12 06:55 am (UTC)no subject
Date: 2009-07-12 06:58 am (UTC)no subject
Date: 2009-07-12 02:38 am (UTC)Это какие-то неправильные умные книжки. Или вы их как-то неправильно поняли. Вот, например, конечный автомат на два состояния - Пыщь и Адын:
никакие монады для его реализации не понадобились, и за исключением побочного эффекта печатания - вполне функционально. Стейт, заметим, есть, но при этом все остается в рамках концепции.
заметим еще, что сделать такой автомат на императивном языке "где есть состояния" c++ - будет несколько более громоздко.
no subject
Date: 2009-07-12 10:49 am (UTC)Всякое бывает
no subject
Date: 2009-07-12 10:57 am (UTC)Что бы, так сказать, на живых примерах учиться.
no subject
Date: 2009-07-12 11:05 am (UTC)http://learnyouahaskell.com/ и http://book.realworldhaskell.org/read/
не то, что бы там были типичные задачи, но какие-то задачи в процессе изучения языка разбираются.
По поводу задач лично мне понравился курс вот этого вот товарища: http://andrej.com/plzoo/
по написанию трансляторов языков. Много маленьких примеров имплементация языков программирования на ocaml