Als «functional-programming» getaggte Fragen

2
Welche persistente Datenstruktur für eine Menge von teilweise geordneten Elementen?
Ich muss Sätze von Elementen vom Typ a speichern. Typ a ist teilweise geordnet, sodass der Vergleich von und kleiner, größer, gleich oder unvergleichbar sein kann.a 2ein1ein1a_1ein2ein2a_2 Ein Problem mit Hashtabellen besteht darin, dass zwei gleiche Elemente unterschiedlich dargestellt werden können und ich keinen Zugriff auf eine mit Gleichheit konsistente …


1
Warum erfordern funktionale Programmiersprachen die Garbage Collection?
Was hindert ghc daran, Haskell in eine verkettete Programmiersprache wie kombinatorische Logik zu übersetzen und dann einfach die Stapelzuweisung für alles zu verwenden? Laut Wikipedia ist die Übersetzung von Lambda-Kalkül in kombinatorische Logik trivial, und auch verkettete Programmiersprachen können sich bei der Speicherzuweisung ausschließlich auf einen Stapel stützen. Ist es …

1
Eine mathematische (kategoriale) Beschreibung von Typklassen
Eine funktionale Sprache kann als eine Kategorie angesehen werden, in der ihre Objekte Typen sind und Morphismen zwischen ihnen funktionieren. Wie passen Typklassen in dieses Modell? Ich gehe davon aus, dass wir nur die Implementierungen berücksichtigen sollten, die die Bedingungen der meisten Typklassen erfüllen, aber nicht in Haskell ausgedrückt werden. …





2
Differenzlisten in der funktionalen Programmierung
Die Frage Was ist neu in rein funktionalen Datenstrukturen seit Okasaki? und die epische Antwort von jbapple, die anhand von Differenzlisten in der funktionalen Programmierung (im Gegensatz zur logischen Programmierung) erwähnt wurde, woran ich mich in letzter Zeit interessiert habe. Dies führte mich dazu, die Implementierung der Differenzliste für Haskell …

1
Was macht eine Sprache (und ihr Typensystem) in der Lage, Theoreme über ihre eigenen Begriffe zu beweisen?
Ich habe kürzlich versucht, Aarons Cedille-Core zu implementieren , eine minimalistische Programmiersprache, die mathematische Theoreme zu ihren eigenen Begriffen beweisen kann. Ich habe auch eine Induktion für λ-codierte Datentypen darauf nachgewiesen, was klarer machte, warum seine Erweiterungen notwendig wären. Trotzdem frage ich mich immer noch, woher diese Erweiterungen stammen. Warum …

2
Welche Beziehungen bestehen zwischen Alternative, MonadPlus (LeftCatch) und MonadPlus (LeftDistributive)?
Follow up Was ist ein Beispiel für eine Monade, die eine Alternative ist, aber keine MonadPlus? : Angenommen, ist eine Monade. Was sind die Beziehungen betweem ein Wesen Alternative , eine MonadPlusCatch und MonadPlusDistr ? mmmmmmFür jedes der sechs möglichen Paare hätte ich gerne entweder einen Beweis, dass eines ein …


1
Was genau bedeutet "semantisch beobachtbare" Nebenwirkung?
Ich habe Fragen zu reinen Funktionen. Laut Wikipedia-Seite ist eine der Voraussetzungen für eine reine Funktion: Die Auswertung des Ergebnisses verursacht keine semantisch beobachtbaren Nebenwirkungen oder Ausgaben, wie z. B. die Mutation veränderlicher Objekte oder die Ausgabe an E / A-Geräte. Was bedeutet das nun wirklich? Oder wie kann ich …

3
Welche Algorithmen können mit einer Gesamtfunktionssprache mit datenparallelen Operatoren ausgedrückt werden?
Stellen Sie sich eine funktionale Programmiersprache vor, deren einzige Datentypen numerische Skalare und beliebige Verschachtelungen von Arrays sind. Der Sprache fehlen alle Mittel zur unbegrenzten Iteration, daher sind die folgenden nicht zulässig: explizite Schleifen (ohne Nebenwirkungen sowieso nicht viel zu gebrauchen) Rekursion beliebige erstklassige Funktionen (kein y-Kombinator) Die Sprache hat …

1
Wie codiert man den abstrakten Algorithmus von Lamping mithilfe von Interaktionskombinatoren?
Interaktionskombinatoren wurden zuvor als Kompilierungsziel für den λ-Kalkül vorgeschlagen. Dieses Papier implementiert den vollständigen λ-Kalkül. Es ist auch bekannt, dass es möglich ist, Interaktionsnetzcodierungen des λ-Kalküls für die Teilmenge von λ-Termen zu optimieren , die EAL-typisierbar ist. In diesem Artikel wird diese Teilmenge des λ-Kalküls implementiert, indem EAL-typisierbare λ-Terme in …

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.