Der Quellcode von gut gestalteten funktionalen Web-Anwendungen?
-
13-09-2019 - |
Frage
Was sind Beispiele für gut funktional gestaltet (im Gegensatz orientiert Objekt) Web-Anwendungen, die ihren Quellcode zur Verfügung stellen? Ich lerne im Moment der Hacker News Quelle aber ich möchte einige andere nicht-triviale Beispiele sehen, idealerweise in clojure .
Für MVC gibt es viele Rails und PHP-Anwendungen, Frameworks und Tutorials zu studieren - was gibt es für die funktionale Programmierung
?Lösung
Es gibt:
- Compojure (clojure)
- PLT Scheme Webserver (PLT Scheme)
- Erlyweb (erlang)
- Meer (smalltalk)
Diese Liste ist genug, um Sie beschäftigt eine Stichprobe von funktionalen Sprachen mit unterschiedlichen Eigenschaften geben:
- Clojure: Multi-Paradigma ?, flexibel? es ist keine reine funktionale Sprache und obwohl es bevorzugt ist, dass Sie in einem funktionalen Stil programmieren, ist es nicht unbedingt erforderlich ist. Sie können Java-Stil OOP durch das Java-Interop, oder Sie können abstrakte weg von ihm mit mehreren Methoden schreiben. Es gibt eine Menge an Flexibilität gibt, obwohl es immer noch ein wenig zu früh zu sagen, ob es nur „flexibel“ oder „Multiparadigmen“ in der Art und Weise Common Lisp ist. Entwickelt, teilweise ein Lispeln sein, die Gleichzeitigkeit leicht behandelt, schießt es tatsächlich eine Menge Ziele, damit die flexible oder Multiparadigmen Bezeichnung.
- Schema: Näher an eine reine funktionale Sprache als Clojure ist, drückt er den Programmierer ein bisschen energischer in einem funktionalen Stil als Clojure tut.
- Erlang: Funktionale Programmierung für zuverlässige Gleichzeitigkeit gebaut. Erlyweb ist auf einer Plattform gebaut, die sehr gleichzeitig sein entworfen.
- Smalltalk: Highly OO funktionale Programmierung (auch Kontrollstrukturen Objekte innerhalb des Objektsystems, und nicht die syntaktische Konstrukte) .
Wenn Sie sehen wollen, wie Webapps in einer Sprache suchen, die „unter allen Umständen“ funktionell ist, dann Vorschlag der jrockway der ist derjenige, zu betrachten.
Andere Tipps
Weblocks ist ein bewährter objektorientierter funktionaler Rahmen, inspiriert von Meer nimmt.
Es ist in Common Lisp geschrieben, und zwei einfache Beispiele (Weblocks-Demo, einfaches Blogging) finden Sie hier: http://bitbucket.org/S11001001/weblocks-dev/src/tip/examples/
Wenn Sie auf der Suche nach dem realen Welt offen Projekten Quelle in einer rein funktionalen Sprache implementiert, könnte dieser Link helfen: http://haskell-news.blogspot.com/2008/01/top-10-most-popular-haskell-programs.html
Wenn Sie sehr spezifisch über Web-Anwendungen sind, schauen Sie bitte auf diese: http: //www.haskell .org / haskellwiki / RPC