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?

Jonas
źródło
1
Wiem, że nie o to pytałeś, ale JavaScript w połączeniu z Underscore.js bardzo dobrze obsługuje funkcjonalny styl programowania.
user16764

Odpowiedzi:

6

Lift to ciekawa platforma dla Scali. Praktyczną zaletą Scali jest to, że może korzystać z dowolnych istniejących bibliotek Java.

Matt Olenik
źródło
11

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.

Mauricio Scheffer
źródło
9

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.

PO PROSTU MOJA poprawna OPINIA
źródło
Czy „[lista]” miała być linkiem?
Adam Lear
Ups Tak, było. Naprawię to.
PO PROSTU MOJA poprawna OPINIA,
8

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.

mikera
źródło
3

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 .

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.

Tamara Wijsman
źródło
Link do kodu
Robert Harvey
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.

lambmj
źródło
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 ...
Tikhon Jelvis
źródło
0

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.

Greg
źródło