Я пытаюсь схватить Монаду состояния, и с этой целью я хотел написать одноместный код, который генерирует последовательность случайных чисел с помощью Линейного Генератора Congruential (вероятно, не хороший...
Я решил довольно простую задачу: генерация всех убывающих последовательностей длины L, состоящих из натуральных чисел от 1 до M в лексикографическом порядке. Тем не менее, я столкнулся с довольно странным ...
Изучая Haskell, я понимаю, что нотация do - это просто синтаксический сахар: a = do x <- [3..4] [1..2] return ( x, 42) Переводится в a = [3..4] >> = (\ x -> [1..2]> & ...
Скажем, в блоке do-notation в Haskell я хочу иметь переменную is_root, указывающую, являюсь ли я пользователем root: import System.Posix.User main = do uid < - getRealUserID is_root < - return $ uid == 0 That ...
I ' У нас есть серия сетевых запросов, каждый из которых занимает> 10 секунд.
Чтобы пользователь знал, что происходит, я даю обновления: main = do putStr "Загрузка первым делом ..." {- Сетевой запрос ...
Я не могу понять, как сделать краткая работа с условными обозначениями if-then-else, упомянутая на [http://hackage.haskell.org/trac/haskell-prime/wiki/DoAndIfThenElse]. Это работает, импортируйте System.Environment
main ...
Что ж, вопрос очевиден. Предположим, я хочу реализовать какой-то специальный синтаксис просто для удовольствия. Является ли это возможным? Какие инструменты мне следует использовать?