Als «lambda-calculus» getaggte Fragen

λ-Kalkül ist ein formales System zur Funktionsdefinition, Funktionsanwendung und Rekursion, das die mathematische Grundlage der funktionalen Programmierung bildet.

7
Lambda-Kalkül schien nicht abstrakt zu sein. Und ich kann den Sinn nicht erkennen
Die zugrunde liegende Frage: Was macht die Lambda-Rechnung für uns, was wir mit den in der Mittelschulalgebra allgemein erlernten Grundfunktionseigenschaften und der Notation nicht anfangen können? Was bedeutet abstrakt im Zusammenhang mit der Lambda-Rechnung? Mein Verständnis des Wortes abstrakt ist etwas, das von der Maschinerie, der konzeptuellen Zusammenfassung eines Konzepts, …

3
Theorie der Programmiersprache studieren
In letzter Zeit habe ich großes Interesse daran, Aspekte von (funktionalen) Programmiersprachen zu verstehen und zu beweisen. Wenn ich jedoch tiefer in die Materie eintauche, sind Dinge wie Berechnung, Kategorietheorie und Denotationssemantik ohne angemessene Erklärung etwas schwierig zu verstehen.λλ\lambda Ich habe SICP gelesen (ein ziemlich aufschlussreiches Buch), aber ich versuche, …




2
"Anwendbare Ordnung" und "Normale Ordnung" in der Lambda-Rechnung
Anwendbare Reihenfolge: Bewerten Sie die Argumente einer Funktion immer vollständig, bevor Sie die Funktion selbst bewerten, wie z. (λ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 …


3
Was ist der Unterschied zwischen einem Kalkül und einer Programmiersprache?
Ich glaube, ich bin ziemlich verwirrt darüber, was als Kalkül und was als Programmiersprache bezeichnet wird. Ich neige dazu, zu denken und könnte gesagt worden sein, dass ein Kalkül ein formales System ist, um über die Gleichwertigkeit von Programmen zu argumentieren. Programme haben eine von einer Maschine festgelegte operationale Semantik, …

1
Welche Funktionen können Kombinatorberechnungsausdrücke berechnen?
Ein Kombinatorausdruck (zum Beispiel auf SK-Basis) kann als eine Funktion betrachtet werden, die Kombinatorberechnungsausdrücke auf Kombinatorberechnungsausdrücke abbildet. Das heißt, man kann sich einen Ausdruck XXX als eine Funktion , wobei die Menge aller syntaktisch gültigen Kombinatorausdrücke in der SK-Basis ist. Diese Zuordnung wird durchgeführt, indem die Eingabe auf den Ausdruck …

3
Ein Quine in reinem Lambda
Ich hätte gerne ein Beispiel für ein Quin in reinem Lambda-Kalkül . Ich war ziemlich überrascht, dass ich durch googeln keinen finden konnte. Die Quine-Seite listet Quines für viele "echte" Sprachen auf, jedoch nicht für die Lambda-Rechnung. Dies bedeutet natürlich, zu definieren, was ich mit einem Quin im Lambda-Kalkül meine, …


2
Bieten Funktionen höherer Ordnung der funktionalen Programmierung mehr Leistung?
Ich habe eine ähnliche Frage zu cstheory.SE gestellt . Laut dieser Antwort auf Stackoverflow gibt es einen Algorithmus, der auf einer nicht faulen reinen funktionalen Programmiersprache eine -Komplexität aufweist, während derselbe Algorithmus in der imperativen Programmierung . Das Hinzufügen von Faulheit zur FP-Sprache würde den Algorithmus zu .Ω ( n …


4
Kann jemand ein einfaches, aber nicht spielerisches Beispiel für eine kontextsensitive Grammatik geben?
Ich versuche, kontextsensitive Grammatiken zu verstehen. Ich verstehe, warum Sprachen mögen {ww∣w∈A∗}{ww∣w∈A∗}\{ww \mid w \in A^*\} {anbncn∣n∈N}{anbncn∣n∈N}\{a^n b^n c^n \mid n\in\mathbb{N}\} sind nicht kontextfrei, aber was würde ich gerne wissen, wenn eine Sprache, die der untypisierten Lambda-Rechnung ähnelt, kontextsensitiv ist? Ich würde gerne ein Beispiel für ein einfaches, aber nicht-spielerisches …

1
Was ist
Ich betrachte die Konstruktionsrechnung und ihren Platz im Lambda-Würfel . Wenn ich das richtig verstehe, kann man sich vorstellen, dass jede Achse des Würfels eine weitere Operation mit Typen zum einfach typisierten Kalkül hinzufügt λ→λ→\lambda_\to. Die erste Achse fügt Typ-zu-Term-Operatoren, die zweiten Typ-zu-Typ-Operatoren und die dritte abhängige Typisierung oder Term-zu-Typ-Operatoren …

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.