Pytania otagowane jako lambda-calculus

Rachunek λ jest formalnym systemem do definiowania funkcji, stosowania funkcji i rekurencji, który stanowi matematyczną podstawę programowania funkcjonalnego.

7
Rachunek lambda nie wydawał się abstrakcyjny. I nie widzę sensu
Podstawowe pytanie: Co robi dla nas rachunek lambda , czego nie możemy zrobić z podstawowymi właściwościami funkcji i notacją ogólnie przyswojoną w algebrze gimnazjalnej? Przede wszystkim, co oznacza streszczenie w kontekście rachunku lambda? Moje rozumienie słowa abstrakcja jest czymś oddzielonym od maszynerii, konceptualnym streszczeniem pojęcia. Jednak funkcje lambda, usuwając nazwy …

3
Studiowanie teorii języka programowania
Ostatnio bardzo się zainteresowałem zrozumieniem i sprawdzeniem aspektów (funkcjonalnych) języków programowania. Jednak gdy zagłębiam się głębiej, rzeczy takie jak rachunek , teoria kategorii i semantyka denotacyjna są nieco trudne do odczytania bez odpowiedniego wyjaśnienia.λλ\lambda Czytam SICP (całkiem pouczającą książkę), ale chcę zagłębić się w teorię programowania funkcjonalnego. Czy są jakieś …

2
Rozwiązywanie równań funkcyjnych dla nieznanych funkcji w rachunku lambda
Czy są jakieś techniki rozwiązywania równań funkcyjnych dla nieznanych funkcji w rachunku lambda? Załóżmy, że mam funkcję tożsamości zdefiniowaną jako taką: Ix=xjax=xI x = x (czyli przez spisanie równanie dla oczekiwanego zachowania tej funkcji), a teraz chcę go rozwiązać za wykonując jakąś transformację algebraicznym uzyskać intensional formułę dla tej funkcji:IjaI …



2
„Kolejność aplikacji” i „Normalna kolejność” w rachunku lambda
Kolejność aplikacji: Zawsze w pełni oceniaj argumenty funkcji przed oceną samej funkcji, na przykład - (λx.x2(λx.(x+1) 2)))→(λx.x2(2+1))→ (λx.x2(3))→ 32 → 9(λx.x2(λx.(x+1) 2)))→(λx.x2(2+1))→ (λx.x2(3))→ 32 → 9(\lambda x. x^2(\lambda x.(x+1) \ \ 2))) \rightarrow (\lambda x. x^2(2+1))\rightarrow \ (\lambda x. x^2(3)) \rightarrow \ 3^2 \ \rightarrow \ 9 Normalna kolejność: wyrażenie …


3
Jaka jest różnica między rachunkiem a językiem programowania?
Myślę, że jestem dość zdezorientowany tym, co nazywa się rachunkiem różniczkowym i językiem programowania. Zwykle myślę, i można było powiedzieć, że rachunek różniczkowy jest formalnym systemem rozumowania na temat równoważności programów. Programy mają semantykę operacyjną określoną przez maszynę, która powinna (myślę?) Być deterministyczna. W ten sposób (poprawny) rachunek różniczkowy dla …


3
Quine w rachunku różnym lambda
Chciałbym przykład quine w czystym rachunku lambda . Byłem dość zaskoczony, że nie znalazłem go przez google. Strona quine zawiera listę quinów dla wielu „prawdziwych” języków, ale nie dla rachunku lambda. Oczywiście oznacza to zdefiniowanie, co mam na myśli przez quine w rachunku lambda, co robię poniżej. (Proszę o coś …


2
Czy funkcje wyższego rzędu zapewniają większą moc programowaniu funkcjonalnemu?
Zadałem podobne pytanie na cstheory.SE . Zgodnie z tą odpowiedzią na Stackoverflow istnieje algorytm, który w nieliniowym czystym funkcjonalnym języku programowania ma złożoność , podczas gdy tym samym algorytmem w programowaniu imperatywnym jest Ω ( n ) . Dodanie lenistwa do języka FP spowodowałoby, że algorytm Ω ( n ) …


4
Czy ktoś może podać prosty, ale nie zabawkowy przykład gramatyki kontekstowej?
Próbuję zrozumieć gramatyki kontekstowe. Rozumiem, dlaczego języki lubią { w w ∣ w ∈ A∗}{ww∣w∈ZA∗}\{ww \mid w \in A^*\} { anbndon∣ n ∈ N }{zanbndon∣n∈N.}\{a^n b^n c^n \mid n\in\mathbb{N}\} nie są wolne od kontekstu, ale co chciałbym wiedzieć, jeśli język podobny do niepisanego rachunku lambda jest wrażliwy na kontekst. Chciałbym …

1
Co to jest w rachunku konstrukcji?
Patrzę na Rachunek Konstrukcji i jego miejsce w Kostce Lambda . Jeśli dobrze rozumiem, każdą oś sześcianu można uznać za dodanie innej operacji obejmującej typy do rachunku zwykłego, . Pierwsza oś dodaje operatory typu „typ do terminu”, drugie operatory typu „typ do typu”, a trzecia zależna typowanie, czyli operatory typu …

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.