Pytania otagowane jako haskell

Haskell to funkcjonalny język programowania z silnym typowaniem statycznym, leniwą oceną, szeroką obsługą równoległości i współbieżności oraz unikalnymi możliwościami abstrakcyjnymi.

5
Dobre przykłady Not a Functor / Functor / Applicative / Monad?
Wyjaśniając komuś, czym jest klasa X, staram się znaleźć dobre przykłady struktur danych, które są dokładnie X. Proszę o przykłady: Konstruktor typów, który nie jest Functorem. Konstruktor typów, który jest Functorem, ale nie ma zastosowania. Konstruktor typów, który jest aplikacyjny, ale nie jest monadą. Konstruktor typów, który jest Monadą. Myślę, …



4
Odczytywanie rdzenia GHC
Rdzeń jest językiem pośrednim GHC. Czytanie rdzenia może pomóc ci lepiej zrozumieć wydajność twojego programu. Ktoś poprosił mnie o dokumentację lub samouczki na temat czytania rdzenia, ale nie mogłem wiele znaleźć. Jaka dokumentacja jest dostępna do odczytu GHC Core? Oto, co znalazłem do tej pory: Napisz Haskell tak szybko, jak …


3
Jakich optymalizacji można oczekiwać, aby GHC działał niezawodnie?
GHC ma wiele optymalizacji, które może wykonać, ale nie wiem, jakie są one wszystkie, ani jak prawdopodobne jest ich wykonanie i w jakich okolicznościach. Moje pytanie brzmi: jakich przekształceń mogę się spodziewać za każdym razem, czy prawie tak? Jeśli często patrzę na fragment kodu, który będzie często wykonywany (oceniany), a …

1
soczewki, etykiety fc, akcesoria do danych - która biblioteka dostępu do struktury i mutacji jest lepsza
Istnieją co najmniej trzy popularne biblioteki umożliwiające dostęp do pól rekordów i manipulowanie nimi. Te, które znam, to: akcesorium do danych, etykiety fc i soczewki. Osobiście zacząłem od akcesora danych i używam ich teraz. Jednak ostatnio w haskell-cafe panowała opinia, że ​​fclabels są lepsze. Dlatego interesuje mnie porównanie tych trzech …



13
Jak podzielić ciąg znaków w Haskell?
Czy istnieje standardowy sposób dzielenia łańcucha w Haskell? linesi wordsdziała świetnie z dzieleniem na spację lub znak nowej linii, ale na pewno istnieje standardowy sposób dzielenia przecinkiem? Nie mogłem go znaleźć w Hoogle. Mówiąc konkretnie, szukam czegoś, co split "," "my,comma,separated,list"wraca ["my","comma","separated","list"].
163 string  haskell 

4
Dlaczego nie zostać wpisanym zależnie?
Widziałem kilka źródeł powtarzających opinię, że „Haskell stopniowo staje się językiem opartym na typach zależnych”. Wydaje się, że implikacja jest taka, że ​​przy coraz większej liczbie rozszerzeń języka Haskell dryfuje w tym ogólnym kierunku, ale jeszcze go tam nie ma. Zasadniczo chciałbym wiedzieć o dwóch rzeczach. Po pierwsze, po prostu, …


7
Jak zdefiniować funkcję w ghci w wielu wierszach?
Próbuję zdefiniować dowolną prostą funkcję, która obejmuje wiele linii w ghci, weźmy jako przykład: let abs n | n >= 0 = n | otherwise = -n Do tej pory próbowałem nacisnąć Enter po pierwszej linii: Prelude> let abs n | n >= 0 = n Prelude> | otherwise = …
161 haskell  ghci 


2
Rzeczywiste zastosowania prepromorfizmów zygohistomorficznych
Tak, te : {-#LANGUAGE TypeOperators, RankNTypes #-} import Control.Morphism.Zygo import Control.Morphism.Prepro import Control.Morphism.Histo import Control.Functor.Algebra import Control.Functor.Extras import Control.Functor.Fix import Control.Comonad.Cofree zygohistomorphic_prepromorphism :: Functor f => Algebra f b -> GAlgebra f (ZygoT (Cofree f) b) a -> (f :~> f) -> FixF f -> a zygohistomorphic_prepromorphism f = g_prepro …

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.