Pytania otagowane jako functional-programming

Programowanie funkcjonalne jest paradygmatem programowania, który wykorzystuje funkcje głównie jako środki do tworzenia abstrakcji i wyrażania obliczeń składających się na program komputerowy.

6
Czy teoria kategorii jest przydatna do nauki programowania funkcjonalnego?
Uczę się języka Haskell i fascynuje mnie język. Nie mam jednak żadnego poważnego doświadczenia matematycznego ani CS. Ale jestem doświadczonym programistą. Chcę nauczyć się teorii kategorii, abym mógł stać się lepszy w Haskell. Których tematów z teorii kategorii powinienem nauczyć się zapewniać dobrą podstawę do zrozumienia Haskell?

3
Typy zależne a typy wyrafinowania
Czy ktoś mógłby wyjaśnić różnicę między typami zależnymi a typami wyrafinowania? W moim rozumieniu typ uściślenia zawiera wszystkie wartości typu spełniającego predykat. Czy istnieje cecha typów zależnych, która je odróżnia? Jeśli to pomoże, natknąłem się na typy rafinowane za pośrednictwem projektu Liquid Haskell, a typy zależne za pośrednictwem Coq i …

3
Jak modeluje się złożoność algorytmu dla języków funkcjonalnych?
Złożoność algorytmu została zaprojektowana w taki sposób, aby była niezależna od szczegółów niższego poziomu, ale opiera się na modelu imperatywnym, np. Dostęp do tablicy i modyfikowanie węzła w drzewie zajmuje O (1). Nie dotyczy to wyłącznie języków funkcjonalnych. Dostęp do listy Haskell zajmuje liniowy czas. Modyfikowanie węzła w drzewie wymaga …

3
Jakie jest krótkie, ale pełne wyjaśnienie czystego / zależnego systemu typów?
Jeśli coś jest proste, powinno być całkowicie wyjaśnione kilkoma słowami. Można to zrobić dla rachunku λ: Rachunek λ jest gramatyką składniową (w zasadzie strukturą) z regułą redukcji (co oznacza, że ​​procedura wyszukiwania / zamiany jest wielokrotnie stosowana do każdego wystąpienia określonego wzorca, dopóki taki wzorzec nie istnieje). Gramatyka: Term = …

2
Jak funkcjonalne programowanie reaktywne i model aktora odnoszą się do siebie?
FRP dotyczy przesyłania strumieniowego zdarzeń i zachowań za pomocą czystych funkcji. Model aktora - przynajmniej taki, jak zaimplementowany w Akce - dotyczy przesyłania strumieniowego niezmiennych komunikatów (które można uznać za zdarzenia dyskretne) przez potencjalnie nieczyste obiekty, zwane aktorami. Na pozór wydają się spokrewnione. Co jeszcze możemy powiedzieć o ich związku? …

2
Czy Lambda Calculus jest czysto składniowy?
Czytałem od kilku tygodni o rachunku Lambda, ale jeszcze nie widziałem niczego, co różni się materialnie od istniejących funkcji matematycznych i chcę wiedzieć, czy to tylko kwestia notacji, czy też są jakieś nowe właściwości lub reguły utworzone przez aksjomaty rachunku lambda, które nie mają zastosowania do każdej funkcji matematycznej. Na …

2
Jak wdrożyć tłumacza prologu w czysto funkcjonalnym języku?
Czy istnieje wyraźne odniesienie, z pseudo-kodem, dotyczące sposobu wdrażania interpretera Prolog w czysto funkcjonalnym języku? To, co do tej pory znalazłem, wydaje się dotyczyć wyłącznie języków imperatywnych, jest jedynie demonstracją samego Prologu zaimplementowanego lub nie oferuje żadnego konkretnego algorytmu do zastosowania w interpretacji. Byłbym bardzo wdzięczny za odpowiedź.


2
Czy wyrażenie obliczeniowe jest takie samo jak monada?
To pytanie zostało przeniesione z Przepełnienia stosu, ponieważ można na nie odpowiedzieć na Computer Science Stack Exchange. Migrował 5 lat temu . Wciąż uczę się programowania funkcjonalnego (z f #) i ostatnio zacząłem czytać o wyrażeniach obliczeniowych. Nadal nie rozumiem w pełni tego pojęcia, a jedną rzeczą, która nie daje …


2
Co rozumie teoria kategorii, nie wie jeszcze, jak radzić sobie z funkcjami wyższego rzędu?
Czytając Uday Reddy za odpowiedź na Jaka jest relacja między funktorów w SML i teorii kategorii? Stwierdza Uday Teoria kategorii nie wie jeszcze, jak radzić sobie z funkcjami wyższego rzędu. Pewnego dnia to zrobi. Ponieważ myślałem, że teoria kategorii może służyć jako podstawa matematyki, powinna istnieć możliwość uzyskania wszystkich funkcji …

2
Teoria kategorii (nie) dla programowania?
Po nauce języka Haskell i innych niezbyt czystych języków FP postanowiłem przeczytać o teorii kategorii. Po dobrym zrozumieniu teorii kategorii zacząłem myśleć o tym, jak pojęcia teorii kategorii można wykorzystać do projektowania programów, ale bez względu na to, jak bardzo się starałem, nie jest to dobra droga. Po wielu nieudanych …

5
Rachunek lambda poza programowaniem funkcjonalnym?
Jestem studentem uniwersytetu i obecnie studiujemy rachunek Lambda Calculus. Nadal jednak trudno mi zrozumieć, dlaczego jest to dla mnie przydatne. Zdaję sobie sprawę, że jeśli wykonujesz mnóstwo programowania funkcjonalnego, może to być przydatne, ale uważam, że tak naprawdę nie jest ono potrzebne do nauki programowania funkcjonalnego, co myślisz? Po drugie, …

1
Dlaczego programowanie funkcjonalne nie badało dynamicznych drzew?
Drzewa dynamiczne odgrywają ważną rolę w rozwiązywaniu problemów, takich jak przepływy sieciowe, wykresy dynamiczne, problemy kombinatoryczne („Drzewa dynamiczne w praktyce” Tarjana i Wernecka) oraz ostatnio łączone słowniki („Prosty słownik łączący” Adama Karczmarza), Przez drzewa dynamiczne odwołuję się do definicji podanej w dokumencie Sleator & Tarjan zatytułowanym „Struktura danych dla drzew …

1
Jakie klasy struktur danych można utrwalić?
Trwałe struktury danych to niezmienne struktury danych. Operacje na nich zwracają nową „kopię” struktury danych, ale zmienioną przez operację; stara struktura danych pozostaje jednak niezmieniona. Wydajność jest na ogół osiągana przez dzielenie się niektórymi danymi bazowymi i unikanie pełnego kopiowania struktury danych. Pytania: Czy istnieją wyniki dotyczące klas struktur danych, …

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.