metaclass: (Default)
[personal profile] metaclass
haskell datagrid

ocaml datagrid

Обратите внимание на количество найденных ссылок. И попытаться найти хотя бы одну из них которая соответствует искомому.

Я, конечно, понимаю, что заниматься мерянием производительности алгоритмов и разработкой сложной back-end логики это гораздо интереснее, чем делать GUI, но GUI тоже таки делать нужно.
У меня вот в последней сложной фиче, которую я делал, на back-end логику ушло пару дней, на ввод данных для нее - неделя и еще две недели на подгонку GUI чтобы это все было можно использовать как можно удобнее и быстрее.

Date: 2009-07-11 07:14 pm (UTC)
From: [identity profile] kkirsanov.livejournal.com
--можно ссылки на эти "умные книжки"?
Боюсь что уже не упомню. Помню что по-английски было.

Обосновывлось так: если у вас сплошные состояния то это уже к товарищу Тюрингу и всякой императивщине, всяческими костылями конечно запихнуть в ФП можно, но зачем?

--Монады State и gen_fsm в эрланге, наверное, не существует?
Конечно существуют.

Date: 2009-07-11 07:34 pm (UTC)
From: [identity profile] kurilka.livejournal.com
Я правильно понимаю, что эквивалентность лямбда исчисления и машины Тьюринга для вас пустой звук?
Про костыли интересен более полный ответ - что вы ими считаете и почему?

Date: 2009-07-11 09:10 pm (UTC)
From: [identity profile] kkirsanov.livejournal.com
--Я правильно понимаю, что эквивалентность лямбда исчисления и машины Тьюринга для вас пустой звук?
Неправильно.

--Про костыли интересен более полный ответ - что вы ими считаете и почему?
Деалю системы управления для мобильных роботов.
Ради интереса попробовал на хаскеле.
Получилась куча монад и почти императивно.

Date: 2009-07-11 09:32 pm (UTC)
From: [identity profile] kurilka.livejournal.com
Есть подозрение, что простая смена языка на функциональный не приводит перестройке подхода к проектированию с императивного на подход, базирующийся на функциональной композиции/декомпозиции.
Скепсис вещь хорошая, но по-моему лучше, когда он достаточно аргументирован.

Date: 2009-07-11 10:41 pm (UTC)
From: [identity profile] metaclass.livejournal.com
Кстати, насчет эквивалентности. Я не очень понимаю операционную семантику лямбда-исчисления. Если построить машину Тьюринга в железе и запрограмировать примерно понятно как, то как построить считалку на лямбдах - не очень :)

Date: 2009-07-12 06:27 am (UTC)
From: [identity profile] kurilka.livejournal.com
Как варианты - http://en.wikipedia.org/wiki/SECD http://en.wikipedia.org/wiki/Categorical_abstract_machine (оно же CAM из CAML), в хаскеле вроде G-machine (пока руки не дошли толком разобраться, у Simon Peyton Jones в книжках разбирается вроде как), у клина - ABC-machine, http://www.st.cs.ru.nl/papers/1993/plaseek93/Ch10.ABC.ps
По сути там переписывание графов, хотя не сказал бы что хорошо разбираюсь в теме.

Date: 2009-07-12 06:34 am (UTC)
From: [identity profile] metaclass.livejournal.com
Про G-машину я у SPJ читал, но только самую краткую часть, где они описывают, как это все прикручивают к обычному железу. А основные длинные книги осилить никак не могу - с экрана тяжело читать.
Но тут проблема в другом. Машина тьюринга от современных процов и языков программирования отличается очень сильно, хотя я примерно представляю, как можно ее преобразовать до проца с простейшим набором действий.
А вот для лямбда-исчисления я затрудняюсь такую же последовательность представить, а во всех практических реализациях ФП используют уже готовые команды существующих процессоров или языков низкого уровня на которых это реализовано. Т.е. формально, операцию сложения можно описать в нумералах черча, но никто ж этого делать практически не станет, а вместо этого используют операции от обычных процессоров, которые сами по себе ближе к тьюрингу, чем к лямбдам.

Date: 2009-07-12 06:47 am (UTC)
From: [identity profile] kurilka.livejournal.com
С чего это оно ближе к тьюрингу?
Как раз там есть лишь лента и таблица переходов, в отличие от ФП с лямбдами где ты можешь свободно заменять эквивалентные функции. Интересно было бы узнать, где в машине Тьюринга есть композиция/абстракция.

Date: 2009-07-12 06:54 am (UTC)
From: [identity profile] metaclass.livejournal.com
Ближе к тьюрингу - это я про процы классические. Там как раз лента(память) и таблица переходов(проц с его поведением).
Кстати, я сейчас почитал про SECD - там жеж тоже самое - список команд, и списки-регистры. По мне, так это тоже ближе к тьюрингу, чем к лямбда-исчислению, хотя там и добавлены операции конструирования и применения функций.

Date: 2009-07-12 07:01 am (UTC)
From: [identity profile] kurilka.livejournal.com
Ближе-дальше - какие-то неконкретные категории. На железе реализуется? Реализуется. Лямбды позволяет выполнять? Позволяет.
Что ещё собственно требуется?

Profile

metaclass: (Default)
metaclass

April 2017

S M T W T F S
      1
2345678
9101112 131415
16171819202122
23242526272829
30      

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jun. 13th, 2025 08:35 pm
Powered by Dreamwidth Studios