Запитання з тегом «haskell»

Haskell - це функціональна мова програмування, яка відрізняється сильним статичним введенням тексту, лінивою оцінкою, широкою підтримкою паралелізму та одночасності та унікальними можливостями абстрагування.

10
Склад Haskell (.) Проти оператора передачі труб F # (|>)
У F # використання оператора трубопровідного руху |>досить поширене. Однак у Haskell я лише коли-небудь бачив склад функції (.), який використовується. Я розумію, що вони пов'язані між собою , але чи є мовна причина того, що в Haskell не використовується pipe-forward або це щось інше?

10
Чисто в функціональних мовах існує алгоритм отримання зворотної функції?
Чи існує в чистих функціональних мовах, як Haskell, алгоритм отримання зворотної функції (редагування), коли вона бієктивна? І чи є певний спосіб запрограмувати свою функцію так, як це?

1
Взаємодія з структурами та анонімними спілками з c2hs
Як можна було б кодувати цей фрагмент коду С у файлі .chs, щоб c2hs міг перетворити його на щось порівняно приємне? typedef enum { MONOME_BUTTON_UP = 0x00, MONOME_BUTTON_DOWN = 0x01, MONOME_ENCODER_DELTA = 0x02, MONOME_ENCODER_KEY_UP = 0x03, MONOME_ENCODER_KEY_DOWN = 0x04, MONOME_TILT = 0x05, /* update this if you add event types …
100 haskell  c2hs 

1
Компілятор Elm працює вічно, комп'ютер просто нагрівається
Я не впевнений, що викликає цю проблему, але в проекті, який я будую, компілятор займає години, щоб скласти модуль. Загальний розмір моєї кодової бази становить 352 Кб, але жоден з модулів не перевищує 10 КБ. Я використовую Native порт, але це дуже банально; Я просто добираюся Date.now()з цим. Чи є …

2
Засіб перевірки типів дозволяє дуже неправильно замінити тип, і програма все ще компілюється
Під час спроби налагодити проблему в моїй програмі (2 кола з рівним радіусом малюються до різних розмірів за допомогою Gloss *), я натрапив на дивну ситуацію. У моєму файлі, який обробляє об'єкти, у мене є таке визначення для Player: type Coord = (Float,Float) data Obj = Player { oPos :: …
99 haskell  types 

5
Хтось може пояснити траверсну функцію в Хаскелі?
Я намагаюся і не можу переглядати цю traverseфункцію Data.Traversable. Я не можу зрозуміти його сенс. Оскільки я походжу з імперативного походження, чи може хтось пояснити мені це термінами імперативного циклу? Псевдокод був би дуже вдячний. Дякую.

5
Що таке індексована монада?
Що таке індексована монада та мотивація цієї монади? Я читав, що це допомагає відстежувати побічні ефекти. Але підпис і документація типу не ведуть мене нікуди. Що може бути прикладом того, як це може допомогти відслідковувати побічні ефекти (чи будь-який інший дійсний приклад)?
98 haskell  monads 


6
Для чого корисна абсурдна функція в Data.Void?
absurdФункція Data.Voidмає такий підпис, де Voidє логічно нежилим типом експортованого цього пакетом: -- | Since 'Void' values logically don't exist, this witnesses the logical -- reasoning tool of \"ex falso quodlibet\". absurd :: Void -> a Я знаю достатньо логіки, щоб отримати зауваження документації про те, що це відповідає відповідно …

3
Який сенс на карті в Хаскелі, коли є fmap?
Скрізь, де я намагався використовувати map, fmapпрацював також. Чому творці Haskell відчули потребу у mapфункції? Хіба це не може бути просто те, що наразі відомо як fmapі яке fmapможна видалити з мови?
97 haskell 

3
Як грати з Control.Monad.Writer в haskell?
Я новачок у функціональному програмуванні і нещодавно навчався в Learn You a Haskell , але коли я пройшов цей розділ , я застряг у програмі нижче: import Control.Monad.Writer logNumber :: Int -> Writer [String] Int logNumber x = Writer (x, ["Got number: " ++ show x]) multWithLog :: Writer [String] …
97 haskell  monads 


1
Haskell експортує поточний модуль з додатковим імпортованим модулем
Чи можна написати модуль у Haskell, який реекспортує модуль на додаток до експорту всього видимого всередині? Давайте розглянемо наступний модуль: module Test where import A f x = x Цей модуль експортує все визначене всередині, тому експортує, fале не реекспортує нічого, що імпортується A. З іншого боку, якщо я хочу …
96 haskell  module  export 

9
Документація Haskell в автономному режимі?
Які існують можливості отримання офлайн-документів для основних бібліотек Haskell (а може і більше)? Іноді я беру свій ноутбук у кав’ярню, де немає wifi, і було б непогано мати щось на зразок Hoogle, але для використання в автономному режимі.

1
Винятки в Єсоді
Я створив демон, який використовував дуже примітивну форму ipc(telnet і надіслати рядок, який містив певні слова в певному порядку). Я вирвався з нього і зараз використовую JSONдля передачі повідомлень на Yesodсервер. Однак, деякі речі мені дуже сподобались у моєму дизайні, і я не впевнений, який вибір зараз я маю. Ось …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.