Perguntas com a marcação «haskell»

Haskell é uma linguagem de programação funcional com forte digitação estática, avaliação lenta, amplo suporte a paralelismo e simultaneidade e recursos exclusivos de abstração.

3
Como pode (-) aparentemente ter dois tipos diferentes?
Em ghci, quando digito :t (-) para descobrir o tipo de (-), ele retorna (-) :: Num a => a -> a -> a No entanto, quando escrevo, -1haskell retorna um número, o que parece implicar que (-)é do tipo Num a => a -> a. Como (-)aparentemente pode ter …
12 haskell 



1
Comportamento estranho de (^) em Haskell
Por que o GHCi fornece respostas incorretas abaixo? GHCi λ> ((-20.24373193905347)^12)^2 - ((-20.24373193905347)^24) 4.503599627370496e15 Python3 >>> ((-20.24373193905347)**12)**2 - ((-20.24373193905347)**24) 0.0 ATUALIZAÇÃO Eu implementaria a função de Haskell (^) da seguinte maneira. powerXY :: Double -> Int -> Double powerXY x 0 = 1 powerXY x y | y < 0 …



1
Use os módulos Haskell como Prelude em um módulo no raku
Estou escrevendo um pacote de desenho com algumas peças e tenho operadores e tipos de dados espalhados por toda parte. No entanto, eu não quero que os usuários adicionem os módulos correspondentes todas as vezes, pois seria muito complicado, por exemplo, eu teria uma Pointclasse, uma Monoidfunção e uma Styleclasse …
11 haskell  raku 

1
Digite papéis e comportamento confuso ao `coagir`
Eu tenho um tipo Id ae estou tentando evitar a coação acidental, por exemplo, um Id Doublepara um Id Int. Se eu entendo as funções de digitação corretamente, o seguinte não deve ser compilado. {-# LANGUAGE RoleAnnotations #-} import Data.Coerce (coerce) type role Id nominal newtype Id a = Id …
11 haskell  roles  coerce 

2
Somando listas de níveis arbitrários de aninhamento em F #
Estou tentando criar uma função F # que retornará a soma de uma lista de ints de aninhamento arbitrário. Ou seja. funcionará para a list<int>, a list<list<int>>e a list<list<list<list<list<list<int>>>>>>. Em Haskell, eu escreveria algo como: class HasSum a where getSum :: a -> Integer instance HasSum Integer where getSum = …
10 haskell  f# 

2
Esclarecimento sobre tipos existenciais em Haskell
Estou tentando entender os tipos existentes em Haskell e me deparei com um PDF http://www.ii.uni.wroc.pl/~dabi/courses/ZPF15/rlasocha/prezentacja.pdf Corrija meus entendimentos abaixo que tenho até agora. Tipos existentes não parecem estar interessados ​​no tipo que eles contêm, mas os padrões correspondentes dizem que existe algum tipo que não sabemos qual é o tipo …


1
Por que a função de colchete de Haskell funciona em executáveis, mas falha na limpeza nos testes?
Estou vendo um comportamento muito estranho, onde a bracketfunção de Haskell está se comportando de maneira diferente, dependendo de ser stack runou stack testnão usada. Considere o código a seguir, onde dois colchetes aninhados são usados ​​para criar e limpar contêineres do Docker: module Main where import Control.Concurrent import Control.Exception …

1
Existe uma maneira conveniente de usar um padrão como uma função predicada?
Recentemente, estive enfrentando situações em que preciso passar uma função predicada para outra função, e muitas vezes a lógica que estou procurando é essencialmente "esse valor corresponde a esse padrão?" A correspondência de padrões parece ser preferida em declarações, doblocos e compreensões de lista, mas há várias funções que usam …
10 haskell 

1
Criando uma concatenação completamente dependente
Um bom fato verdadeiro sobre concatenação é que, se eu conhecer duas variáveis ​​na equação: a ++ b = c Então eu conheço o terceiro. Gostaria de capturar essa ideia em minha própria concat, para usar uma dependência funcional. {-# Language DataKinds, GADTs, FlexibleContexts, FlexibleInstances, FunctionalDependencies, KindSignatures, PolyKinds, TypeOperators, UndecidableInstances …

4
Entendendo funções puras e efeitos colaterais em Haskell - putStrLn
Recentemente, comecei a aprender Haskell porque queria ampliar meu conhecimento em programação funcional e devo dizer que estou realmente amando isso até agora. O recurso que estou usando atualmente é o curso 'Haskell Fundamentals Part 1' sobre Pluralsight. Infelizmente, tenho dificuldade em entender uma citação específica do palestrante sobre o …
10 haskell 

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.