5 ms·
F# sounds like it fits the bill. ADT, pattern matching, performant, great tooling (multiple amazing IDEs, a REPL, etc.), and a huge ecosystem of software packa
by Nelkins 9y ago
F# sounds like it fits the bill. ADT, pattern matching, performant, great tooling (multiple amazing IDEs, a REPL, etc.), and a huge ecosystem of software packages to use with it (all of .NET). It's my favorite general purpose programming language (can be used for frontend programming, server, mobile apps, etc.).
- trumpsamerica 9y agoDo you have a good learning guide and a development guide (setting up ide, vim, tools etc)? I want to jump start into f#
- Nelkins 9y agoFor learning the language, there is no better guide than F# for fun and profit. Start here[1], then maybe check out this series[2] and this one[3]. If you want to learn about monads and such, go through this series[4]. Look through this[5] page for other good stuff. Unfortunately, the fsharp.org site is kind of out of date. I think that's mostly a function (heh) of the MS F# docs becoming much better (can be found here[6]). These instructions for getting a dev environment set up are pretty good[7]. If you hunt around, you can also find blog posts which may be a little more comprehensive[8][9][10]. [1] https://fsharpforfunandprofit.com/why-use-fsharp/ https://fsharpforfunandprofit.com/why-use-fsharp/ [2] https://fsharpforfunandprofit.com/series/designing-with-types.html https://fsharpforfunandprofit.com/series/designing-with-type... [3] https://fsharpforfunandprofit.com/series/thinking-functionally.html https://fsharpforfunandprofit.com/series/thinking-functional... [4] https://fsharpforfunandprofit.com/series/map-and-bind-and-apply-oh-my.html https://fsharpforfunandprofit.com/series/map-and-bind-and-ap... [5] https://fsharpforfunandprofit.com/site-contents/ https://fsharpforfunandprofit.com/site-contents/ [6] https://docs.microsoft.com/en-us/dotnet/fsharp/ https://docs.microsoft.com/en-us/dotnet/fsharp/ [7] https://docs.microsoft.com/en-us/dotnet/fsharp/get-started/ https://docs.microsoft.com/en-us/dotnet/fsharp/get-started/ [8] https://atlemann.github.io/fsharp/2018/01/13/fsharp-on-ubuntu-16-04.html https://atlemann.github.io/fsharp/2018/01/13/fsharp-on-ubunt... [9] http://www.prigrammer.com/?p=363 http://www.prigrammer.com/?p=363 [10] https://medium.com/@edgarsanchezg/four-easy-steps-for-installing-f-in-ubuntu-linux-88122323f12b https://medium.com/@edgarsanchezg/four-easy-steps-for-instal...
- Nelkins 9y agoAlso a weekly roundup of F# news can be found here[1]. [1] https://sergeytihon.com/tag/newsf-weekly/ https://sergeytihon.com/tag/newsf-weekly/
- andendau 9y agoF# has hit a huge sweet spot for me in productivity, strong typing, inferred typing, multi-paradigm and syntactic sugar. The tooling just gets better and better. I struggle to think of a language that's so well rounded.
- carlmr 9y agoCouldn't agree more. My only wish is more people would use it.
- eggy 9y agoMy wish too! I have no issues with F# on Windows or Linux using .NET Core I use F# as my general high-level language and Zig as my C replacement/Rust alternative for low-level work. I can gradually re-write C stuff in Zig, and be productive. [1] - ziglang.org
- marmaduke 9y agoI wanted to get into f# but had a hard time with tooling, cross platform. For example, I'd see a great library and the instructions assume VS while I'm on Linux. There are a variety of build tools and package managers. As Python dev since 10 years I can't point fingers -- Python is probably worse though I've memorized the idiosyncrasies -- but I couldn't justify my way up the tooling learning curve in addition to the language curve.
- phillipcarter 9y ago(I work on F# at MS) Do you remember the library? The landscape has changed dramatically in the past ~6 months with .NET Core 2.0 support. For example, I can use Fable[0] and Giraffe[1] with the .NET CLI[2] to build full-stack F# apps on my machine which runs .NET Core. The big remaining blocker for most people to just jump wholesale onto .NET Core and forget anything Windows-based is the lak of Type Provider support, but we're quite close to finishing that. [0] http://fable.io http://fable.io [1] https://github.com/giraffe-fsharp/Giraffe https://github.com/giraffe-fsharp/Giraffe [2] http://dot.net/core http://dot.net/core
- e12e 9y ago> The big remaining blocker for most people to just jump wholesale onto .NET Core and forget anything Windows-based is the lak of Type Provider support, but we're quite close to finishing that. Is there a viable cross platform ui option for f# on core?
- phillipcarter 9y agoYup! Fable. In fact, a web app written in fable will even run in more places than a .NET Core app due to the reach of browsers.
- Nelkins 9y agoCheck out https://github.com/AvaloniaUI/Avalonia https://github.com/AvaloniaUI/Avalonia
- 9y ago