Live data from Hacker News

Why F#?

batsov.com

11–20 of 424 posts

Re: Why F#?

#11
I have a few questions. Can it do GUIs well? How about mobile? And how does it compare to e.g. Scala?

Re: Why F#?

#12
> which is quite odd for what is supposed to be the flagship editor for F#

The flagship editor is Visual Studio, not vs code.

Re: Why F#?

#13
post #3

As far as I can tell F# is one of those things where every single user is extremely happy. This happens rarely and I really am curious about the thing but never had time to get into it. I'm also pretty well versed in the .net ecosystem so it's probably gonna be easy. Any tips? What kind of workflows might benefit the most if I were to incorporate it (to learn..)?

F# shines on the back end, where its functional-first style is very adept at crunching data. Think about data flows in your system: Any place where you use LINQ in C# today to select/filter/transform data might be even better in F#. Parsing is also a great F# use case (e.g. parser combinators), although a fairly narrow niche.

Re: Why F#?

#14
Why would Lispers feel at home with its (whitespace delimited) syntax? Quite the strange claim.

I know this isn't a common rant, but I hate so-called functional language still bowing to the "infix mathematical operator special case" dogma, when those are just binary (variadic in Lisp) functions.

Always found it pretty appealing, otherwise. And no ";;"!

Re: Why F#?

#16
post #11

I have a few questions. Can it do GUIs well? How about mobile? And how does it compare to e.g. Scala?

It can do GUIs well, although it takes some finesse to manage user state in an immutable-first language. Check out Fable for building web apps: https://fable.io/

I don't have much experience with Scala, but I think the two languages are pretty comparable in their respective ecosystems. The biggest difference I'm aware of is that Scala has typeclasses and F# does not.

Re: Why F#?

#20
post #5

Because it’s great, and people that think otherwise are dead to me.

Curried functions combined with that magnificent pipe operator, overlaid on the .NET runtime. Don Syme et al knocked it out of the park. It's the one programming language that changed how I think about programming. I'm only talking about the version before type providers. Then it got messy. Before that, we could (and I did) recompile fsi.exe to do some custom prompt manipulation. It was a slog, but it worked, but the…

F# is up to version 9 now, and has only improved over time, IMHO. Type providers are a very small part of the story and can be avoided entirely if you want.
Post reply on HN