Inspiriert von einer Frage von SO: /programming/6623391/how-to-gain-control-of-a-5gb-heap-in-haskell
Es kann eine lange Debatte über die zahlreichen Vor- und Nachteile von FP sein, aber im Moment möchte ich den Anwendungsbereich auf die Haupteffizienz von FP für moderne Hardware beschränken.
These:
Das Funktionsparadigma impliziert Unveränderlichkeit und Zustandslosigkeit (?), Aber die Hardware, auf der wir Funktionsprogramme ausführen, sind zustandsbehaftete endliche Automaten. Die Übersetzung von 'rein funktionalem' Programm in eine 'zustandsbehaftete Hardware'-Darstellung überlässt dem Programmierer wenig Kontrolle, bringt Overhead (?) Und schränkt die Verwendung von Hardware-Funktionen (?) Ein.
Habe ich in den fraglichen Aussagen Recht oder Unrecht?
Kann nachgewiesen werden, dass FP für die moderne Allzweck-Computerarchitektur wesentliche Leistungseinbußen mit sich bringt / nicht mit sich?
EDIT: Wie ich bereits zu einigen Kommentaren ausgeführt habe, geht es bei der Frage nicht um die Implementierungsleistung und Details. Es geht um das Vorhandensein oder Nichtvorhandensein von Hauptaufwand , den das Ausführen von FP auf statusbehafteten Automaten mit sich bringen kann.
running FP on stateful automata
.