I’d love to hear more about it. I’m a new grad who’s done a bunch of internships using functional programming languages but didn’t find a new grad position that does
Almost exclusively. Was doing Scala for 5+ years, followed by F# now for the past 5 years. But im also doing React and sometimes node.js etc when needed.
I really love FP, although i tend to write more pragmatic code, and follow the principle of “functional core, imperative shell” rather than using imo overly complicated free monads and the likes.
I use Haskell at work. At my current job it’s my teams primary language, and almost all code we write is in Haskell. I’ve been using Haskell at work for years now, but more often as a secondary or tertiary language along side others.
Haskell, and FP generally, work well for everyday industrial programming. In my experience I’ve never found there to be an issue that was a dealbreaker- although there are tradeoffs.
That said, whenever I’ve looked for work I’ve always looked at non-FP roles in addition to FP roles because there are just fewer FP jobs out there.
I have written a bunch of Clojure in previous positions. But it has undergone the same fate that almost all functional code bases I have knowledge of (in corporate product settings): Colleagues have hard times getting into the functional mindset, and it becomes hard to maintain. Over the years it gets replaced with some more pragmatic hybrid- og OO language.
I have seen the same with projects written in Haskell, Erlang, and Elixir.
It’s all a really nice idea, but in practical reality it runs into issues with “social scaling”
EDIT: Realizing this was not super helpful. If you want to look for positions where fp can be employed I think something academia related, or a startup where there is greater technical flexibility is something to look for
Not OP, but on the contrary, I think your remark about social scaling of FP code bases was very insightful!
I’ve introduced Clojure to my employer (very large gaming company), so I get to work with it a good amount. Some folks are using Scala on another team, too. Most folks are using Java or Go. Bringing FP to a company is tough, unless you’re already senior and have a good amount of push.
I think a lot of the more senior devs who want FP have spent years writing OOP and procedural code. They did their time, so to speak. As a new grad coming in, you’ll need to have reasonable expectations here. You’ll likely need to do your time.
Android development has transitioned to Kotlin. In Android it’s not 100% functional, but you could do most of your work that way if you choose to.
Sorry, not an answer to your question, but I am interested in what functional language is the go to as a grad student? Thanks!
I’m not too familiar with the state of research but I’ve seen a lot of papers that use Haskell