Als «functional-programming» getaggte Fragen

Funktionale Programmierung ist ein Paradigma, das versucht, Rechenprobleme durch die verkettete Bewertung von Funktionen zu lösen, deren Ausgabe eher durch ihre Eingaben als durch den Programmzustand bestimmt wird. Bei dieser Art der Programmierung sind Nebenwirkungen und veränderbare Daten veraltet und normalerweise streng isoliert.


2
Gibt es einen Grund, Optional nicht als Methodenargument zu verwenden, wenn Sie wissen, dass das Argument möglicherweise benötigt wird oder nicht?
Mit Java 8 habe ich immer mehr Artikel über die Verwendung von Option / Optional gesehen. Ich verstehe, was sie darstellen wollen, und ich sehe viele Beispiele dafür, wie sie als Rendite verwendet werden. Was ich jedoch nicht sehe, ist, dass sie als Methoden- / Funktionsargumente in Sprachen verwendet werden, …

3
Nebenwirkungen, die die referenzielle Transparenz beeinträchtigen
Die funktionale Programmierung in Scala erklärt die Auswirkungen eines Nebeneffekts auf die Aufhebung der referenziellen Transparenz: Nebeneffekt, der eine Verletzung der referenziellen Transparenz impliziert. Ich habe einen Teil von SICP gelesen , in dem die Verwendung des „Substitutionsmodells“ zur Bewertung eines Programms erörtert wird. Da ich das Substitutionsmodell mit referentieller …



2
Zustand ohne Zuordnung erhalten
Ich lerne funktionale Programmierung und habe Probleme zu verstehen, wie bestimmte Szenarien ohne Zuweisung implementiert werden. Das folgende einfache Problem fasst meine Verwirrung ziemlich gut zusammen. Schreiben Sie ein Programm, das Ereignisse über Änderungen in einer bestimmten Datenstruktur empfängt und Ereignisse ausgibt, wenn diese Datenstruktur einen bestimmten Zustand erreicht. Ich …

4
Wie heißt das funktionale Argument in Fold
In der Funktion höherer Ordnung falten / reduzieren Sie den Namen des Funktionsarguments, falls vorhanden? Ich arbeite an einer monadischen tabellarischen Verarbeitungsbibliothek, in der Zeilen gefaltet werden, um einfache Analysen zu erstellen (z. B. das Ermitteln des Minimums, Maximums und Durchschnitts einer Spalte). Ich suche daher nach einem soliden Namen …


2
Wo setzen wir den Code "Fragen an die Welt" ein, wenn wir die Berechnung von den Nebenwirkungen trennen?
Nach dem Prinzip der Trennung von Befehlen und Abfragen sowie dem Denken in Daten und DDD mit Clojure- Präsentationen sollten Nebenwirkungen (die die Welt verändern) von Berechnungen und Entscheidungen getrennt werden, damit beide Teile leichter zu verstehen und zu testen sind. Dies lässt eine unbeantwortete Frage offen: Wo sollten wir …

7
Wie können Sie Ihrem Team den funktionalen Codierungsstil vorstellen?
Ich habe eine Situation, in der die meisten Leute in meiner Gruppe aus einem objektorientierten Programmierhintergrund stammen und wenig bis gar kein Verständnis für funktionale Programmierung haben. Nicht einmal Grundlagen wie Verschlüsse. Irgendwelche Vorschläge, wie man sie in den funktionalen Codierungsstil einführen könnte? Viele Codierungen, die wir durchführen, können verkürzt …

3
Lange Parameterliste versus lange Statusvariablenliste
In einem C ++ - Buch sagt der Autor, dass wir keine Funktion mit einer langen Parameterliste mehr benötigen, da die meisten Parameter in Statusvariablen in einer Klasse umgestaltet werden können. Andererseits sagt ein funktionales Programmierbuch, dass Zustandsvariablen böse sind, weil sie Nebenwirkungen verursachen, die fehleranfällig und schwer zu parallelisierenden …

4
STDOUT und seine Verunreinigung
Ich habe viele Bücher und Artikel über funktionale Programmierung gelesen und schäme mich immer noch, einige sehr grundlegende Konzepte nicht sicher verstehen zu können. Eine der Hauptideen der funktionalen Programmierung ist, dass dieselbe Eingabe immer dieselbe Ausgabe erzeugen sollte. Daher könnte beispielsweise das Abfragen von Datenbanken oder das Schreiben von …

5
Wäre es in Ordnung, wenn ich beschließe, meinen gesamten Ruby so zu schreiben, als wäre es Haskell?
Angesichts der Tatsache, dass Ruby über gute Funktionen für den Listenbetrieb verfügt - Reduzieren, Zuordnen, Auswählen, Sammeln usw. Es verfügt über Procs, Blocks und Lambdas sowie eine gute Iterationsunterstützung (die eachFamilie). Wäre es eine schlechte Entwurfsentscheidung, wenn ich es versuche ? alle meine Ruby-Sachen so rein funktional wie möglich schreiben? …

3
Haben funktionale Programmiersprachen mehr Möglichkeiten zur Optimierung der Kompilierungszeit?
Ich las das Buch "Funktionale Programmierung für die reale Welt". Es begann mit dem Vergleich zwischen imperativen und funktionalen Programmiersprachen. Und es wurde angegeben, wie sich "Werte" und "Ausdrücke" in der funktionalen Programmierung von "Variablen" und "Funktionen" der imperativen Programmierung unterscheiden. Aus der Diskussion entwickelte ich eine Idee, dass - …


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.