Pytania otagowane jako functional-programming

2
Jaka trwała struktura danych dla zestawu częściowo uporządkowanych elementów?
Muszę przechowywać zestawy elementów typu a. Typ a jest częściowo uporządkowany, więc porównanie i może zwrócić mniejsze, większe, równe lub nieporównywalne.a 2za1za1a_1za2)za2)a_2 Jednym z problemów z tablicami skrótów jest to, że dwa równe elementy mogą być reprezentowane w różny sposób i nie mam dostępu do funkcji haszującej zgodnej z równością. …


1
Dlaczego funkcjonalne języki programowania wymagają wyrzucania elementów bezużytecznych?
Co powstrzymuje ghc przed przetłumaczeniem Haskell na konkatenatywny język programowania, taki jak logika kombinacyjna, a następnie po prostu użycie alokacji stosu do wszystkiego? Według Wikipedii tłumaczenie z rachunku lambda na logikę kombinacyjną jest banalne, a także konkatenatywne języki programowania mogą polegać wyłącznie na stosie przy alokacji pamięci. Czy to możliwe, …

1
Matematyczny (kategoryczny) opis klas typów
Język funkcjonalny można postrzegać jako kategorię, w której jego obiektami są typy, a między nimi funkcjonują morfizmy. Jak pasują klasy w tym modelu? Zakładam, że powinniśmy brać pod uwagę tylko te implementacje, które spełniają ograniczenie większości klas typów, ale które nie są wyrażone w języku Haskell. Na przykład powinniśmy brać …


3
Asocjacyjne mieszanie skrótów
Rozważ mało pojedynczo połączoną listę w czysto funkcjonalnym otoczeniu. Jego pochwały śpiewano ze szczytów górskich i nadal będą śpiewane. Zajmę się tutaj jedną z wielu jego mocnych stron i pytaniem, w jaki sposób można ją rozszerzyć na szerszą klasę czysto funkcjonalnych sekwencji opartych na drzewach. Problem jest następujący: Chcesz przetestować …

2
Listy różnic w programowaniu funkcjonalnym
Pytanie Co nowego w czysto funkcjonalnych strukturach danych od czasu Okasaki? oraz epicka odpowiedź jbapple, wspomniana przy użyciu list różnic w programowaniu funkcjonalnym (w przeciwieństwie do programowania logicznego), co mnie ostatnio interesowało. To doprowadziło mnie do znalezienia implementacji listy różnic dla Haskell. Mam dwa pytania (wybacz mi / popraw, jeśli …



1
Co sprawia, że ​​język (i jego system typów) jest w stanie udowodnić twierdzenia o swoich terminach?
Niedawno próbowałem zaimplementować Cedille-Core Aarona , minimalistyczny język programowania zdolny do udowodnienia twierdzeń matematycznych na temat własnych terminów. Udowodniłem również indukcję dla typów danych zakodowanych na λ, co wyjaśniło, dlaczego jego rozszerzenia byłyby konieczne. Nie mówiąc już o tym, wciąż zastanawiam się, skąd pochodzą te rozszerzenia. Dlaczego są tacy, jacy …

2
Jakie są relacje między Alternative, MonadPlus (LeftCatch) i MonadPlus (LeftDistributive)?
Dalsze działania Jaki jest przykład Monady, która jest alternatywą, ale nie MonadPlus? : Załóżmy, że to monada. Jakie są stosunki betweem m bycia alternatywą , a MonadPlusCatch i MonadPlusDistr ? mmmmmmDla każdej z sześciu możliwych par chciałbym mieć albo dowód, że jedna implikuje drugą, lub kontrprzykład, że tak nie jest. …

2
Proste zrównoważone drzewa z concat O (1)?
W czysto funkcjonalnych najgorszych przypadkach sortowanych list o stałym czasie, Brodal i in. prezentuj czysto funkcjonalne zrównoważone drzewa z konkatenatem O (1) i wstawiaj, usuwaj i znajduj O (lg n). Struktura danych jest nieco skomplikowana. Czy istnieje prostsze zrównoważone drzewo wyszukiwania z konkatenacją O (1), funkcjonalne czy nie?


3
Jakie algorytmy można wyrazić za pomocą całkowitego języka funkcjonalnego z operatorami równoległych danych?
Wyobraź sobie funkcjonalny język programowania, którego jedynymi typami danych są skalary numeryczne i dowolne zagnieżdżenia tablic. W języku nie ma żadnych możliwości nieograniczonej iteracji, dlatego następujące elementy są niedozwolone: wyraźne pętle (i tak niewiele zużyć bez skutków ubocznych) rekurencja arbitralne funkcje pierwszej klasy (bez kombinatora y) Język ma jednak: funkcje …

1
Jak kodujesz abstrakcyjny algorytm Lampinga za pomocą kombinacji interakcji?
Kombinatory interakcji były wcześniej proponowane jako cel kompilacji dla rachunku λ. Ten papier implementuje pełny rachunek λ. Wiadomo również, że możliwe jest zoptymalizowanie kodowania sieci interakcji rachunku λ dla podzbioru terminów λ, który jest typowy dla EAL. W tym artykule zaimplementowano ten podzbiór rachunku λ, tłumacząc wyrażenia λ typu EAL …

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.