λ-Kalkül ist ein formales System zur Funktionsdefinition, Funktionsanwendung und Rekursion, das die mathematische Grundlage der funktionalen Programmierung bildet.
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, …
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, …
Gibt es Techniken zum Lösen von Funktionsgleichungen für unbekannte Funktionen in der Lambda-Rechnung? Angenommen, ich habe die Identitätsfunktion ausführlich als solche definiert: Ix=xichx=xI x = x (das heißt, durch das Schreiben eine Gleichung für das erwartete Verhalten dieser Funktion nach unten) , und jetzt will ich es lösen durch eine …
Ich lese beim Schreiben einer Implementierung etwas über den Hindley-Milner-Typisierungsalgorithmus und sehe, dass Sie, solange jede Variable gebunden ist, immer entweder atomare Typen oder Typen erhalten, bei denen die Argumente den endgültigen Typ bestimmen, z. B. t1 -> t1oder (t1 -> t2) -> (t1 -> t2)wo t1und t2ist vom Typ …
Kann mich jemand auf von Experten begutachtete Artikel verweisen, in denen die Vor- oder Nachteile des Schreibens von Code in einem funktionalen Stil untersucht werden? Gibt es Papiere, in denen die Anwendungen von Lambda Calculus in Bereichen wie Maschinelles Lernen, Sprachdesign usw. erörtert werden?
Die meisten Tutorials zu Lambda Calculus bieten Beispiele, in denen positive Ganzzahlen und Boolesche Werte durch Funktionen dargestellt werden können. Was ist mit -1 und ich?
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, …
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 …
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, …
Funktionale Programmierung hat den sehr eleganten Lambda-Kalkül und seine Varianten als Backup-Theorie. Gibt es so etwas für OOP? Was ist eine Abstraktion für das objektorientierte Modell?
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 …
Erstens möchte ich darauf hinweisen, dass mein nachstehender Text Fehler enthalten kann. Sie können also jederzeit auf Fehler bei der Formulierung der Frage hinweisen. Betrachten Sie einen nicht typisierten Lambda-Kalkül mit Booleschen Werten und if-Anweisungen, deren Terme durch diese Syntax gegeben sind: t ::= v | t t | if …
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 …
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 …
We use cookies and other tracking technologies to improve your browsing experience on our website,
to show you personalized content and targeted ads, to analyze our website traffic,
and to understand where our visitors are coming from.
By continuing, you consent to our use of cookies and other tracking technologies and
affirm you're at least 16 years old or have consent from a parent or guardian.