Jakie przyzwoite ramy internetowe istnieją dla programowania funkcjonalnego? [Zamknięte]
26
Chciałbym programować w sieci za pomocą programowania funkcjonalnego. Jakie przyzwoite ramy internetowe istnieją dla funkcjonalnych języków programowania?
Jest o wiele więcej (nawet rozwijam jeden w F #), ale myślę, że te (i Lift, już wspomniane) są najbardziej kompletne / popularne / udokumentowane. Nie mogę komentować ram Erlanga.
Noir jest piękny, funkcjonalny i prosty (w sensie Rich Hickey „ Simple Made Easy ”):
(defpage "/welcome" []
"Welcome to Noir!")
(server/start 8080)
Szczególnie podoba mi się sposób, w jaki możesz zbudować całą aplikację internetową za pomocą kompozycji funkcji, obsługiwanej przez kilka makr, aby umożliwić ładną deklaratywną DSL.
Narzędzia sieciowe F # rozszerzają dystrybucję F # o narzędzia do tworzenia jednorodnych aplikacji internetowych klient / serwer / baza danych w jednym projekcie z kontrolą typu. Modalne rozróżnienia między klientem a serwerem są sprawdzane za pomocą przepływów pracy F #, a LINQ może być używany do dostępu do bazy danych. W pierwszej wersji części aplikacji są dynamicznie obsługiwane jako JavaScript. Planowane rozszerzenia obejmują podawanie części po stronie klienta jako kodu Silverlight.
Naprawiono, od teraz będę pisać>, ponieważ przycisk nie działa poprawnie.
Tamara Wijsman,
2
Polecam zajrzeć w Erlanga i ziewać . Erlang to lekki funkcjonalny język programowania z doskonałym zestawem funkcji, dobrymi bibliotekami i aktywną społecznością programistów. Ziewanie jest wydajne i dobrze utrzymane.
Tak, lubię Erlanga i Yawsa, ale szukam przyzwoitych ram.
Jonas
1
Snap to przyjemna i bardzo szybka platforma internetowa dla Haskell.
prosta platforma programistyczna dla systemów uniksowych napisana w języku programowania Haskell. Snap ma wysoki poziom pokrycia testowego i jest dobrze udokumentowany. Dodatki zawarte:
Szybka biblioteka serwerów HTTP
Rozsądna i czysta monada do programowania w Internecie
System szablonów oparty na HTML do generowania stron ...
Nie grałem ze wszystkimi wymienionymi tam ramami, więc nie chcę oceniać, ale w moim obecnym projekcie dość często korzystam z Zotonic i mogę go z całego serca polecić. O ile mi wiadomo, jest to jedyna platforma Erlang, która jest nie tylko platformą, ale także pełnowymiarowym systemem CMS. Możesz więc łatwo rozpocząć korzystanie z funkcji CMS, a następnie rozwinąć witrynę, dodając niestandardową funkcjonalność za pomocą własnych modułów. W moim przypadku używam go wyłącznie jako ramy, ponieważ w tej chwili funkcje CMS działają tylko z PostgreSQL i nie mogę używać osobnej bazy danych. Ale nawet jako framework oferuje wiele funkcji, które nie zawsze znajdują się w innych frameworkach.
Bardzo fajne jest to, że projekt jest bardzo aktywnie rozwijany, ponieważ osoby odpowiedzialne za Zotonic projektują i wdrażają strony internetowe i używają go jako preferowanego CMS.
Gdybym miał dokonać wyboru, prawdopodobnie dałbym Zotonic pierwszą szansę, potem ChicagoBoss, a potem Nitrogen.
Odpowiedzi:
Lift to ciekawa platforma dla Scali. Praktyczną zaletą Scali jest to, że może korzystać z dowolnych istniejących bibliotek Java.
źródło
Jest o wiele więcej (nawet rozwijam jeden w F #), ale myślę, że te (i Lift, już wspomniane) są najbardziej kompletne / popularne / udokumentowane. Nie mogę komentować ram Erlanga.
źródło
Dla Erlanga dostępna jest lista frameworków internetowych. Podsumowując tę listę tutaj:
Z tych dwóch, które wydają mi się najbardziej interesujące, są maszyny sieciowe i azot . YMMV.
źródło
Noir jest piękny, funkcjonalny i prosty (w sensie Rich Hickey „ Simple Made Easy ”):
Szczególnie podoba mi się sposób, w jaki możesz zbudować całą aplikację internetową za pomocą kompozycji funkcji, obsługiwanej przez kilka makr, aby umożliwić ładną deklaratywną DSL.
źródło
Compojure to platforma internetowa typu open source dla języka programowania Clojure.
http://en.wikibooks.org/wiki/Compojure
źródło
Ponieważ nie ma mowy o żadnym języku, myślę, że akceptujesz wiele języków ...
Tak więc dla języka F # istnieje FSharp.WebTools .
źródło
Polecam zajrzeć w Erlanga i ziewać . Erlang to lekki funkcjonalny język programowania z doskonałym zestawem funkcji, dobrymi bibliotekami i aktywną społecznością programistów. Ziewanie jest wydajne i dobrze utrzymane.
źródło
Snap to przyjemna i bardzo szybka platforma internetowa dla Haskell.
źródło
Istnieje porównanie frameworków internetowych Erlang na Github:
https://github.com/evanmiller/ChicagoBoss/wiki/Comparison-of-Erlang-Web-Frameworks
Nie grałem ze wszystkimi wymienionymi tam ramami, więc nie chcę oceniać, ale w moim obecnym projekcie dość często korzystam z Zotonic i mogę go z całego serca polecić. O ile mi wiadomo, jest to jedyna platforma Erlang, która jest nie tylko platformą, ale także pełnowymiarowym systemem CMS. Możesz więc łatwo rozpocząć korzystanie z funkcji CMS, a następnie rozwinąć witrynę, dodając niestandardową funkcjonalność za pomocą własnych modułów. W moim przypadku używam go wyłącznie jako ramy, ponieważ w tej chwili funkcje CMS działają tylko z PostgreSQL i nie mogę używać osobnej bazy danych. Ale nawet jako framework oferuje wiele funkcji, które nie zawsze znajdują się w innych frameworkach.
Bardzo fajne jest to, że projekt jest bardzo aktywnie rozwijany, ponieważ osoby odpowiedzialne za Zotonic projektują i wdrażają strony internetowe i używają go jako preferowanego CMS.
Gdybym miał dokonać wyboru, prawdopodobnie dałbym Zotonic pierwszą szansę, potem ChicagoBoss, a potem Nitrogen.
źródło