|
|
Другие темы раздела | |
Haskell Незапуск некоторых wxhaskell программ Все образцы программ из папки wxhaskell-0.11.1.2/samples/ я спокойно компилирую и запускаю в любых разновидностях Ubuntu (правда, пришлось отдельно скачать haskell98-2.0.0.1.tar.gz и подкладывать Directory.hs, List.hs, удалив из них упоминание про #if __GLASGOW_HASKELL__ >= 701 и #endif ), но это почему-то не относится ни к wxhnotepad-1.2.0, ни к GeBoP, ни к Arctic Slide. Скомпилировать,... https://www.cyberforum.ru/ haskell/ thread928036.html |
Haskell Совместим ли Haskell с другими языками? Очень заинтересовался функциональным программированием, даже несколько простых примеров разобрал. Считаю, что у каждого языка есть свои плюсы и надо их использовать, так сказать с миру по нитки. Назрел у меня такой вопрос: Возможно ли написать часть кода на Хаскеле, а часть например на С#? Например в С# я часто делаю графическое оформление, а логику и алгоритмы подключаю через dll другого... |
Haskell Монада State на примере Читал статью про монады Кирпичёва, в частности, застрял на монаде State (почти не понял) и программе с её участием. Рассмотрим, например, программу, реализующую метод Монте-Карло. Для этого ей понадобится датчик случайных чисел, обладающий состоянием. Тогда для этой программы «a» будет соответствовать типу результата – например, числу успешных экспериментов – а «s» будет представлять внутреннее... https://www.cyberforum.ru/ haskell/ thread922952.html |
Haskell Задача коммивояжера любым методом
https://www.cyberforum.ru/ haskell/ thread920375.html Реобходимо реализовать задачу коммивояжера любым удобным методом, может делал ктонибудь уже? |
FFI c/c++ импорт структур по человечески Haskell Меня интересует импорт С и С++ структур в Хаскель Я знаю 1 способ это сделать: struct a{ int f1; int f2; }; typedef struct a A; A* makeA(int f1, int f2){ |
Haskell Создание типов в Haskell Снова здравствуйте. Продолжаю разбирать статью о Haskell, поэтому продолжу раздражать радовать вас свои нубскими вопросами. Имеется код data Complex' = Num a => Complex' { real' :: a, imag' :: a} c = Complex' 2.0 3.5 z = Complex' { real' = 4.0, imag' = 8.0} Который не компилируется, ошибка в первой строке в трёх экземплярах Not in scope: type variable `a' Прошу объяснить, как это... https://www.cyberforum.ru/ haskell/ thread918790.html |
Haskell Правильная расстановка отступов Здравствуйте. Дан простой код, в котором я никак не могу правильно расставить отступы. GHCi возражает одной из этих ошибок parse error on input `xs' parse error on input `=' Вот сам код: evenSum :: -> Integer evenSum l = accumSum 0 l accumSum n l = if l == https://www.cyberforum.ru/ haskell/ thread918642.html |
Haskell Установка ghc 7.6.3 Решил установить новую версию платформы на убунту и тут же получил ошибку. Кто нибудь встречался с подобным? checking for path to top of build tree... utils/ghc-pwd/dist-install/build/tmp/ghc-pwd: error while loading shared libraries: libgmp.so.3: cannot open shared object file: No such file or directory configure: error: cannot determine current directory Вариант фикса с интернета ... |
Haskell Поиск цикла в графе Здравствуйте! У меня такой вопрос. Пишу на хаскеле программу, которая для деревьев производит поиск в глубину. Связь двунаправленная. Сам граф хранится в списке списков смежных вершин. Чтобы задать дерево, мне нужно сделать проверку на циклы. Подскажите пожалуйста алгоритм поиска цикла. https://www.cyberforum.ru/ haskell/ thread909746.html |
Haskell Класс ассоциативных массивов
https://www.cyberforum.ru/ haskell/ thread906927.html Как сделать класс для таких понятий, у которых должно быть два параметра, например, тип ключа и тип значения у ассоциативного массива? Не используя расширения языка. Наверняка же люди часто сталкиваются с такими понятиями и для этого уже придумано готовое решение. |
Списки на Хаскель Haskell даны списки L1,L2,L3. Если L1 является префиксом L2, а L3 - суффиксом L2, то ответ yes, иначе - no. Есть программы на прологе и лиспе. Работает или нет она не важно. Главное, что ее приняли. нужно переписать их на Хаскель. Помогите, пожалуйста! domains. list=integer* predicates. prefics(list,list). ;префикс sufics(list,list). ;суффикс yes(list,list,list). ;предикат определяющий ответ |
Haskell Списки на Хаскель даны списки L1,L2,L3. Если L1 является префиксом L2, а L3 - суффиксом L2, то ответ yes, иначе - no. Есть программы на прологе и лиспе. Работает или нет она не важно. Главное, что ее приняли. нужно переписать их на Хаскель. Помогите, пожалуйста! domains. list=integer* predicates. prefics(list,list). ;префикс sufics(list,list). ;суффикс yes(list,list,list). ;предикат определяющий ответ https://www.cyberforum.ru/ haskell/ thread903600.html |
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
|
||||||
03.08.2013, 20:55 | 0 | |||||
Упражнение про IO (игра в кости) - Haskell - Ответ 491243803.08.2013, 20:55. Показов 2462. Ответов 6
Метки (Все метки)
Ответ
Можно сделать и так, и так. Расскажу про второй вариант.
По сути, у нас в игре есть состояние — это номер хода, есть лог действий, есть неизменяемое состояние — это количество очков для победы. Под эти сущности подходят монады State, Writer и Reader, которые комбинируется с помощью Monad Transformers. Код достаточно сложен для первого понимания, бОльшую часть в нём занимают описания структур данных и вспомогательных функций, логика же игры осталась неизменной.
Грязную версию game с Monad Transformers можно получить из предыдущей, заменив WriterT [String] Identity на IO, а tell на putStrLn. Соответственно придется внести изменения в execGame. Вернуться к обсуждению: Упражнение про IO (игра в кости) Haskell
0
|
03.08.2013, 20:55 | |
Готовые ответы и решения:
6
Игра в кости Игра в кости Игра кости Игра в кости |
03.08.2013, 20:55 | |
03.08.2013, 20:55 | |
Помогаю со студенческими работами здесь
0
Игра в кости Игра в кости C++ Игра в кости Игра в кости |