5 ms·
What do the other half say? (Honest question. I'm very interested in the question of the approachability of functional languages)
by cannam 11y ago
What do the other half say?
(Honest question. I'm very interested in the question of the approachability of functional languages)
- smoothdeveloper 11y agoMy hypothesis is that other half says: * Code is less clear than C style (type inference, not used to some pervasive operators like function composition or piping) * Code is terse and short names are more prevalent (Lost the way to kingdom of nouns) * There is no Resharper support, and Visual Studio (the main IDE with F# support) tooling is not as advanced as for C#, which is impairing to some extent if you look use the language like a glorified C# and not too used to F# way (tooling is great compared to many other languages IMHO) * There is no do/while or goto or break
- jackfoxy 11y agoFSharp Power Tools is about all the IDE tooling I care about. I think coming from the OO world developers just expect a whole bunch of add-on tooling. Once you are comfortable with the functional-first way of doing things you find almost all of this unnecessary, except perhaps for some rather basic refactoring support, which FSPT provides.
- smoothdeveloper 11y agohttps://fsprojects.github.io/VisualFSharpPowerTools/ https://fsprojects.github.io/VisualFSharpPowerTools/
- MichaelGG 11y agoThe other half aren't negative per-se, but they don't seem to care as much (view it as just a job). Or one guy moved to Haskell and then sorta looked down on F#. There's also some frustration sometimes when something hasn't clicked and "should" be easy. Often this is because F# is taught at a high level, without showing the simple primitives that built it up from scratch. The non-programmers are less positive. From them, I hear "Yeah but it's so concise no one can understand it"[1]. I once got a "If we use F#, then when we exit for (huge figure) we might get less money.[2] Or the general "but this isn't mainstream" (MS's fault for shitty F# marketing.) And there's also the "ok but we can't find hires". Which is the second worst one. Because on anything that's not some boring CRUD like app, the work to learn the domain and everything about the app dwarfs learning a new language. (The worst excuse is the nonsense "best tool for the job" as if F# didn't out-class C# in essentially every single aspect. I find this excuse is pulled out a lot, as a way to handwave away real criticism or discussion.) 1: This is just unfamiliarity. In general, less code = less bugs, less work to understand. 2: True if you're selling a business that's a simple website. Not true if you're selling a business that revolves around all your code does.