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

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

1
Спеціалізація з обмеженнями
У мене виникають проблеми з отриманням GHC для спеціалізації функції з обмеженням класу. У мене є мінімальний приклад моєї проблеми тут: Foo.hs і Main.hs . Два файли компілюються (GHC 7.6.2, ghc -O3 Main) і запускаються. ПРИМІТКА: Foo.hs дійсно позбавлений. Якщо ви хочете зрозуміти, для чого потрібне обмеження, ви можете побачити …
156 haskell  ghc 

7
Наслідки foldr vs. foldl (або foldl ')
По-перше, справжній світ Хаскелл , який я читаю, говорить, що ніколи не використовувати, foldlа замість цього використовувати foldl'. Тож я їй довіряю. Але я туманно, коли використовувати foldrпроти foldl'. Хоча я бачу структуру того, як вони працюють по-різному, викладену переді мною, я занадто дурний, щоб зрозуміти, коли "що краще". Я …

6
Чому GHC настільки великий / великий?
Є проста відповідь: Чому GHC настільки великий? OCaml: 2 Мб Пітон: 15 Мб SBCL: 9 Мб OpenJRE - 26 Мб GHC: 113 Мб Не цікавиться євангелізацією "Чому я не повинен дбати про розмір, якщо Haskell - це правильний інструмент"; це технічне питання.
147 haskell  ghc 

1
Обробка типів списку за допомогою Esqueleto
У мене типи даних визначені як: data ComitteeView = CommitteeView { committeeId :: CommitteeId , committeeMembers :: [Person] } data CommitteesView = CommitteesView { committeeView :: [CommitteeView] } Тепер я маю стійку модель, визначену як: Person name Text Committee name Text CommitteePerson personId PersonId committeeId CommitteeId Я можу досить легко …
144 sql  list  haskell  esqueleto 

2
Чи повинен GHC-мод використовувати повні назви для типів?
Я намагаюся використовувати ghc-modплагін vim для перевірки типу / синтаксису і т. Д. Однак я виявив, що ghc-modзавжди використовується повний шлях типів у повідомленнях про помилки, наприклад: test.hs|71 col 13 error| Couldn't match type ‘Data.Text.Internal.Text’ || with ‘[GHC.Types.Char]’ || Expected type: containers-0.5.6.2:Data.Map.Base.Map || [GHC.Types.Char] || ([(integer-gmp-1.0.0.0:GHC.Integer.Type.Integer, || integer-gmp-1.0.0.0:GHC.Integer.Type.Integer)], || containers-0.5.6.2:Data.Set.Base.Set …
143 haskell  ghc  ghc-mod 

1
Правильне використання API HsOpenSSL для впровадження сервера TLS
Я намагаюся розібратися, як правильно використовувати API OpenSSL.Session у паралельному контексті Наприклад, припускаю, що я хочу реалізувати stunnel-style ssl-wrapper, я би сподівався мати таку основну структуру скелета, яка реалізує наївнуfull-duplex tcp-port-forwarder: runProxy :: PortID -> AddrInfo -> IO () runProxy localPort@(PortNumber lpn) serverAddrInfo = do listener <- listenOn localPort forever …
141 haskell  openssl  ssl 

5
Що таке "підйом" в Haskell?
Я не розумію, що таке "підйом". Чи варто спочатку зрозуміти монади, перш ніж зрозуміти, що таке "підйомник"? (Я теж зовсім не знаю про монади) Або хтось може мені це пояснити простими словами?

1
Як відправити виконуваний файл з Language.Haskell.Interpreter?
Я сподівався вставити інтерпретатора Haskell, використовуючи, hintщоб я міг писати плагіни в Haskell, щоб використовуватись із моєю програмою. Мені не хочеться доставляти всю платформу Haskell для своїх виконуваних файлів. Зазвичай виконувані файли Haskell досить автономні. Наприклад, стирання знака PATHне викликає проблем: $ PATH=. Hello Hello world Однак проста програма тестування …

8
Пам'ятка в Haskell?
Будь-які вказівки на те, як ефективно вирішити наступну функцію в Haskell, для великої кількості (n > 108) f(n) = max(n, f(n/2) + f(n/3) + f(n/4)) Я бачив приклади запам'ятовування в Haskell для вирішення чисел, які включали обчислення (ліниво) всіх цифр на рівні до потрібної n. Але в цьому випадку для …

2
Чому оптимальні оцінювачі λ-числення здатні обчислювати великі модульні експоненції без формул?
Церковні числа - це кодування натуральних чисел як функцій. (\ f x → (f x)) -- church number 1 (\ f x → (f (f (f x)))) -- church number 3 (\ f x → (f (f (f (f x))))) -- church number 4 Ви можете акуратно викласти 2 церковних …

5
Багаторядкові команди в GHCi
У мене виникають проблеми з введенням багаторядкових команд в ghci. Наступний дворядковий код працює з файлу: addTwo :: Int -> Int -> Int addTwo x y = x + y Але коли я входжу в ghci, я отримую помилку: <interactive>:1:1: error: Variable not in scope: addTwo :: Int -> Int …
135 haskell  ghci 

5
Які основні відмінності між Haskell та F #? [зачинено]
Закрито . Це питання має бути більш сфокусованим . Наразі відповіді не приймаються. Закрито 6 років тому . Заблоковано . Це запитання та відповіді на нього заблоковані, оскільки це питання не стосується теми, але має історичне значення. Наразі він не приймає нових відповідей або взаємодій. Я шукав в Інтернеті порівняння …


5
Скорочення часу паузи на збирання сміття в програмі Haskell
Ми розробляємо програму, яка отримує та передає "повідомлення", зберігаючи тимчасову історію цих повідомлень, щоб вона могла повідомити вам історію повідомлень за запитом. Повідомлення ідентифікуються чисельно, зазвичай мають розмір близько 1 кілобайт, і нам потрібно зберігати сотні тисяч цих повідомлень. Ми хочемо оптимізувати цю програму за затримкою: час між відправленням та …

4
Різниця між `mod` і` rem` в Haskell
Яка саме різниця між Хаскеллом modта remв ньому? Обидва, здається, дають однакові результати *Main> mod 2 3 2 *Main> rem 2 3 2 *Main> mod 10 5 0 *Main> rem 10 5 0 *Main> mod 1 0 *** Exception: divide by zero *Main> rem 1 0 *** Exception: divide by …
130 haskell 

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