4 ms·
Today I would say Java/Scala mostly because of jvm access to huge numbers of libraries. But also because of things like Akka. There may be other options depe
by anthonyskipper 9y ago
Today I would say Java/Scala mostly because of jvm access to huge numbers of libraries. But also because of things like Akka.
There may be other options depending on whether you consider JavaScript or Go to be a functional language.
- dtech 9y agoScala has a number of good HTTP frameworks, Play, spray/akka-http and Lift come to mind. Spring boot (Java) is also very decent, and Play and akka-http have both first-class Java and Scala API's. Kotlin has the same JVM advantage.
- neverminder 9y agoAnother one for Scala. Between Play which is a full blown framework and bare bones akka-http you have every possible scenario covered. Also Slick for database access is a great library to make a full combo. Put on top of all that access to every imaginable library that exists in JVM ecosystem and you have a clear winner.
- twic 9y agoThe OP specifically asked for a functional language, though. Java and Kotlin have adopted some ideas from functional languages, but they aren't themselves functional languages, and their HTTP frameworks certainly aren't designed along functional lines. Scala is, amongst other things, a functional language. How much to its HTTP frameworks embrace that?
- owlmusic 9y agohttps://github.com/http4s/http4s https://github.com/http4s/http4s Is a a good example of a HTTP Framework in Scala providing idiomatic FP interfaces
- kleiba 9y agoThere may be other options depending on whether you consider JavaScript or Go to be a functional language. Do you consider Java a functional language?
- jerf 9y agoThe only circumstance under which I can imagine someone calling Go "functional" is that, yes, it has first-class functions and closures. But if that's your definition of functional, the term is almost useless because in the modern language landscape, there's pretty much just two or three languages that would not qualify as functional. Sure, they happen to still be the top 3 languages (Java, C, C++), but that would make the entire rest of the landscape functional. Java of course recently grew closures, and C++ has... things... you can do if you really want closures, which would really leave only C as not having closures. Though if you're willing to go so far as to call Go functional, you're not that far from calling C functional because it has function pointers. (In 2018, that may not sound that impressive, but in the 1970s that put it at "at least modestly functional" by the standards of the time.)
- xstartup 9y agoI gave Scala a try today. After coming from F#, I feel like I am dragging my feet. So, Scala definitely doesn't work for me.