haskell- все статьи тега ➜ страница 2
Что такое ответ Haskell на узел.Джей?
Я считаю, что сообщество Erlang не завидует Node.js, поскольку он не блокирует ввод-вывод изначально и имеет способы легко масштабировать развертывания до более чем одного процессора (что-то даже не встроенное в узел.js). Подробнее на http://journal.dedasys.com/2010/04/29/erlang-vs-node-js и узел.js или Erlang а как же Хаскелл? Может ли Haskell предоставить некоторые преимущества Node.js, а именно чистое решение, чтобы избежать блокировки ввода / вывода без обращения к многопоточное программи ...
Почему побочные эффекты моделируются как монады в Haskell?
может ли кто - нибудь дать некоторые указания на то, почему нечистые вычисления в Haskell моделируются как монады? Я имею в виду, что монада-это просто интерфейс с 4 операциями, так что было рассуждение о моделировании побочных эффектов в нем? ...
Почему в Haskell есть "data" и "newtype"? [дубликат]
этот вопрос уже есть ответ здесь: разница между 'data' и 'newtype' в Haskell 1 ответ кажется, что a newtype определение-это просто data определение, которое подчиняется некоторым ограничениям (например, только один конструктор), и что из-за этих ограничений система выполнения может справиться newtypes более эффективно. И обработка сопоставления шаблонов для неопределенных значений немного отличается. н ...
Как разделить строку в Haskell?
есть ли стандартный способ разделить строку в Haskell? lines и words отлично работает от разбиения на пробел или новую строку, но, конечно, есть стандартный способ разбить на запятую? Я не мог найти его в Хугле? чтобы быть конкретным, я ищу что-то где split "," "my,comma,separated,list" возвращает ["my","comma","separated","list"] спасибо. ...
Руководство для начинающих в Хаскелл? [закрытый]
Я искал приличный гид по Хаскеллу в течение некоторого времени, но не смог найти тот, который кажется достаточно интересным для чтения и/или имеет смысл. У меня был предыдущий контакт с Хаскеллом несколько лет назад, но я не могу вспомнить много об этом. Я помню "Ага!"- чувство было невероятным, когда я, наконец, получил его, и это было действительно весело играть, поэтому я ищу, чтобы заново открыть потерянное искусство Хаскелла. Я знаком с Ruby и его функциональные программные трюки, поэтому ...
Что такое "подъем" в Haskell?
Я не понимаю, что такое "лифтинг". Должен ли я сначала понять монады, прежде чем понять, что такое "лифт"? (Я тоже совершенно не знаю о монадах:) или кто-то может объяснить мне это простыми словами? ...
Мемуаризация в Хаскелле?
любые указатели на то, как эффективно решить следующую функцию в Haskell, для больших чисел (n > 108) f(n) = max(n, f(n/2) + f(n/3) + f(n/4)) Я видел примеры мемоизация в Haskell для решения Фибоначи числа, которые включали вычисление (лениво) всех чисел Фибоначчи до требуемого n. но в этом случае для данного n нам нужно только вычислить очень мало промежуточных результатов. спасибо ...
Как вы представляете график в Haskell?
достаточно легко представить дерево или список в haskell, используя алгебраические типы данных. Но как бы вы идете по поводу типографским способом, представляющий собой график? Кажется, что вам нужно иметь указатели. Я предполагаю, что вы могли бы иметь что-то вроде type Nodetag = String type Neighbours = [Nodetag] data Node a = Node a Nodetag Neighbours и это было бы осуществимо. Однако он чувствует себя немного развязанным; связи между различными узлами в структуре на самом деле не "чувству ...
Почему ленивая оценка полезна?
Мне уже давно интересно, почему ленивая оценка полезна. Мне еще нужно, чтобы кто-нибудь объяснил мне, что имеет смысл; в основном это заканчивается тем, что "доверяет мне". примечание: Я не имею в виду memoization. ...
Рабочий процесс тестирования Haskell
Я только что начал новый проект Haskell и хотел создать хороший рабочий процесс тестирования с самого начала. Похоже, что у Haskell есть много отличных и уникальных инструментов тестирования и множество различных способов их интеграции. Я бы посмотрел в: HUnit быстрая проверка жим лежа HPC сложности которые все, кажется, работают очень хорошо в своих областях, но я ищу комплексный подход к тестированию и задавался вопросом, что хорошо работает для других людей. ...
Инструменты для анализа производительности программы на Haskell
при решении некоторых проблем проекта Эйлера, чтобы узнать Haskell (так что в настоящее время я полностью новичок) я пришел 13. Я написал это (наивное) решение: --Get Number of Divisors of n numDivs :: Integer -> Integer numDivs n = toInteger $ length [ x | x<-[2.. ((n `quot` 2)+1)], n `rem` x == 0] + 2 --Generate a List of Triangular Values triaList :: [Integer] triaList = [foldr (+) 0 [1..n] | n <- [1..]] --The same recursive triaList2 = go 0 1 where go cs n = (cs+n):go (cs+n) ( ...
Какие части реального мира Haskell теперь устарели или считаются плохой практикой?
в главе 19 Реальный Мир Хаскелл многие примеры теперь терпят неудачу из-за изменения Control.Exception. узнать Хаскелл Для Великого Добра, хотя это отличная книга, это гораздо более простой по сравнению с RWH. может кто-нибудь, кто читал книгу раньше, пожалуйста дайте несколько советов о том, какие его части больше не актуальны? Особенно главы во второй половине книги, например, программное обеспечение транзакционной памяти, параллельное программирование, Программирование сокетов и т. д. EDI ...
Есть ли функция haskell для объединения списка с разделителем?
есть ли функция для объединения элементов списка с разделителем? Например: > foobar " " ["is","there","such","a","function","?"] ["is there such a function ?"] Спасибо за любой ответ! ...
Почему минимализм, пример быстрой сортировки на Haskell не является "истинным" быстрой сортировки?
сайт Haskell представляет очень привлекательный 5-line функция quicksort, как показано ниже. quicksort [] = [] quicksort (p:xs) = (quicksort lesser) ++ [p] ++ (quicksort greater) where lesser = filter (< p) xs greater = filter (>= p) xs Они также включают в себя "True quicksort in C". // To sort array a[] of size n: qsort(a,0,n-1) void qsort(int a[], int lo, int hi) { int h, l, p, t; if (lo < hi) { l = lo; h = hi; p = a[hi]; do { ...
Хаскелл: где против пусть
Я новичок в Haskell, и я очень смущен здесь и пусть. Они оба, кажется, обеспечивают аналогичную цель. Я прочитал несколько сравнений между здесь и пусть но у меня возникли проблемы лишь когда использовать каждый. Может ли кто-нибудь предоставить некоторый контекст или, возможно, несколько примеров, которые демонстрируют, когда использовать один над другим? где и пусть A where предложение может быть определено только на уровне определения функции. Обычно это совпадает с областью let опр ...
Каковы точки строгости Хаскелла?
мы все знаем (или должны знать), что Haskell ленив по умолчанию. Ничто не оценивается, пока оно не должно быть оценено. Так когда же нужно что-то оценивать? Есть моменты, где Хаскелл должен быть строгим. Я называю это "точками строгости", хотя этот конкретный термин не так широко распространен, как я думал. По моим словам: сокращение (или оценка) в Haskell только происходит в точках строгости. Итак, вопрос: что, точно, являются ли точки строгости Хаскелла? моя интуиция говорит, что main,se ...
Хаскелл:как произносится? [закрытый]
Как вы произносите эти функции в прикладном типе: (<*>) :: f (a -> b) -> f a -> f b (*>) :: f a -> f b -> f b (<*) :: f a -> f b -> f a (то есть, если бы они не были операторами, как бы они назывались?) в качестве примечания, если бы вы могли переименовать pure к чему-то более дружественному к нематематикам, как бы вы это назвали? ...
Как работает этот кусок запутанного кода Хаскелла?
во время чтения http://uncyclopedia.wikia.com/wiki/Haskell (и игнорируя все "оскорбительные" вещи), я наткнулся на следующий кусок запутанного кода: fix$(<$>)<$>(:)<*>((<$>((:[{- thor's mother -}])<$>))(=<<)<$>(*)<$>(*2)) когда я запускаю этот кусок кода ghci (после импорта Data.Function и Control.Applicative),ghci выводит список всех степеней 2. как работает этот кусок кода? ...
Написать переводчик Haskell в городе Haskell
классика программирования-написать интерпретатор Scheme Лиспа/схемы сюсюкать/. Мощность полного языка может быть использована для создания интерпретатора для подмножества языка. есть ли подобное упражнение для Хаскелла? Я хотел бы реализовать подмножество Haskell, используя Haskell в качестве движка. Конечно, это можете будет сделано, но есть ли какие-либо онлайн-ресурсы, доступные для просмотра? Вот предыстория. I я изучаю идею использования Haskell в качестве языка для изучения некоторых ...
Разница между State, ST, IORef и MVar
Я работаю через напишите себе схему за 48 часов (Я до 85 часов), и я добрался до части о добавление переменных и задания. В этой главе есть большой концептуальный скачок, и я хотел бы, чтобы это было сделано в два этапа с хорошим рефакторингом между ними, а не прыгать прямо к окончательному решению. В любом случае... Я заблудился с несколькими различными классами, которые, кажется, служат одной и той же цели: State, ST,IORef и MVar. Первые три упоминаются в тексте, в то время как последний, по- ...