haskell

Haskell: jak wymawia się<*>? [zamknięte]

Jak wymawiać te funkcje w typach aplikacyjnych: (<*>) :: f (a -> b) -> f a -> f b (*>) :: f a -> f b ... się nazywać?) Na marginesie, gdybyś mógł zmienić nazwę pure na coś bardziej przyjaznego nie-matematykom, jak byś to nazwał?

Czym jest programowanie symboliczne?

Jestem wielkim fanem Stephena Wolframa, ale na pewno nie wstydzi się za swój róg. W wielu odniesieniach wychwala Mathematica ... . Moje pytania brzmią: czym jest to programowanie symboliczne? A jak to się ma do języków funkcyjnych (takich jak Haskell)?

Czy funkcje Haskella można udowodnić/sprawdzić / zweryfikować z poprawnością właściwości?

Kontynuując od idei w: Czy istnieją jakieś udowodnione języki świata rzeczywistego? Nie wiem jak wy, ale mam dość pisania ko ... asuje? Jeśli sugerujesz inny język, upewnij się, że przeszedł test "has-a-web-framework" i przeczytaj oryginalne pytanie :-)

Jaki jest ekosystem dla Haskell web development? [zamknięte]

Obecnie pytanie to nie pasuje do naszego formatu pytań i odpowiedzi. Oczekujemy, że odpowiedzi będą poparte faktami, referenc ... kflow często używane w tworzeniu stron internetowych? Czy istnieją przykłady istniejących aplikacji internetowych Haskell?

Czym są paramorfizmy?

Czytając Ten klasyczny Artykuł , utknąłem na paramorfizmach. Niestety sekcja jest dość cienka, a strona Wikipedii nic nie mó ... amorfizmy bezpośrednio i tylko wskazują na zasoby , które mogą być pomocne jako odniesienia, ale nie jako materiały do nauki.

Monady vs. Arrows

Jestem szeroko zaznajomiony z pojęciamimonad istrzałek stosowanych w programowaniu funkcyjnym. Rozumiem również, że można j ... jestem trochę zdezorientowany, jak wybrać, który z nich użyć w danej sytuacji. Kiedy należy używać monad, a kiedy strzałek?

Czy Haskell wymaga śmieciarza?

Jestem ciekaw dlaczego Haskell używa GC. Nie przychodzi mi do głowy przypadek, w którym GC byłoby konieczne w czystym języku ... ograniczenia kopiowania, czy jest to rzeczywiście konieczne? Szukam przykładowego kodu, który wyciekłby, gdyby nie było GC.

Wywołanie Haskell z kodu C++

Obecnie piszę aplikację w C++ i okazało się, że niektóre z jej funkcjonalności byłyby lepiej napisane w Haskell. Widziałem In ... ktowym z C++. UPDATE: umieściłem poniżej działający przykład dla każdego innego zainteresowany (również, więc nie zapomnę).

Pisanie foldl za pomocą foldr

W Real World Haskell, Rozdział 4. Programowanie Funkcjonalne Zapisz foldl za pomocą foldr: -- file: ch04/Fold.hs myFoldl : ... lementacji myFoldl używa 3 parametrów, jestem całkowicie zdezorientowany! Czy jest ktoś, kto może mi pomóc? Wielkie dzięki!

Dlaczego w Haskell są "dane" i "newtype"? [duplikat]

To pytanie ma już odpowiedź tutaj: różnica między 'data' i 'newtype' w Haskell ... ograniczenia i automatycznie traktuje je bardziej efektywnie? Jestem pewien, że coś mi umyka, musi być jakiś głębszy powód.

Pamięć typów danych Haskell

Jak mogę znaleźć rzeczywistą ilość pamięci wymaganą do przechowywania wartości jakiegoś typu danych w Haskell (głównie z GHC) ... m opcję :set +s w GHCi, aby zobaczyć statystyki pamięci, ale nie jest jasne, jak oszacować ślad pamięci pojedynczej wartości.

Co to jest Typeklasa Comonad w Haskell?

Co to jest Typeklasa Comonad w Haskell? Jak w Comonad z kontroli.Comonad w pakiecie comonad (mile widziane są również wyjaśn ... ści do return :: a -> m a monady. Punkty bonusowe za Zauważenie "prawdziwych" zastosowań Comonad w kodzie "rzeczywistym".

Proste przykłady do zilustrowania kategorii, Monoid i Monad?

Zaczynam się bardzo mylić z tymi trzema pojęciami. Czy są jakieś proste przykłady ilustrujące różnice między Kategoria, Monoid i Monada ? Byłoby bardzo pomocne, gdyby istniała ilustracja tych abstrakcyjnych pojęć.

Jakie są podstawowe różnice między Haskell i F#? [zamknięte]

zamknięte . To pytanie musi być bardziej skoncentrowane . Obecnie nie przyjmuje odpowiedzi. ... ale nie znalazłem niczego naprawdę definitywnego. Jakie są podstawowe różnice i Dlaczego chciałbym wybrać jeden nad drugim?

Napisz tłumacza Haskell w Haskell

Klasycznym ćwiczeniem programistycznym jest napisanie interpretera Lisp / Scheme w Lisp / Scheme. Moc pełnego języka może być ... topę, podczas gdy wciąż opanowują składnię i pojęcia, których próbujesz nauczyć. Możesz oferować lepsze komunikaty o błędach.

Monada pauzy

Monady potrafią robić wiele niesamowitych, szalonych rzeczy. Mogą tworzyć zmienne, które posiadają superpozycję wartości. Mog ... dzienniku. (Oczywiście wyklucza to zmianę stanu między stopniami, ponieważ tak naprawdę nie" wstrzymujemy " niczego teraz.)

Które rozszerzenia Haskell (GHC)należy używać/unikać?

Miałem doświadczenie kilka razy teraz o GHC powiedzieć mi używać rozszerzenia, tylko odkryć, że podczas korzystania z tego ro ... przed podjęciem decyzji o użyciu tego rozszerzenia? (patrz również Czy powinienem używać rozszerzeń GHC Haskell czy nie?)

Polimorfizm parametryczny vs polimorfizm Ad hoc

Chciałbym zrozumieć kluczową różnicę między parametrycznym polimorfizmem, takim jak polimorfizm klas/funkcji generycznych w j ... / Scali, ale nie może być napisane w Haskell (zgodnie z modułowymi cechami tych platform też), i vice-versa. Z góry dzięki.

mtl, transformatory, monady-fd, monadLib i paradoks wyboru

Hackage ma kilka pakietów dla monad transformers: mtl : biblioteka transformatorów Monad transformatory : transformator ... azem w jakiś sposób? A czy Andy i Ross uważają jakieś własne pakiety za przestarzałe? który z nich ty i ja powinniśmy użyć?

Kiedy wyższe typy są przydatne?

[[5]] od jakiegoś czasu zajmuję się dev w F# i podoba mi się. Jednak jeden buzzword, który wiem, że nie istnieje w F#, to ty ... zykład, gdzie typy o wyższym pokrewieństwie naprawdę ratują Cię albo w naciśnięciach klawiszy, albo w bezpieczeństwie typu?