Live data from Hacker News

F# for fun and profit: Terms and Conditions

fsharpforfunandprofit.com

31–40 of 55 posts

Re: F# for fun and profit: Terms and Conditions

#33

> presenting a talk at the International Conference on Functional Programming entitled “Why Visual Basic DESTROYS Haskell”. I would love to see that talk.

Loosely related: http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.72....

Tthat paper talks about bringing ideas from Haskell to C# and Visual Basic (!).

Re: F# for fun and profit: Terms and Conditions

#34
Any migrants from Haskell to F# who have used it for larger projects and can compare the two? I’ve used Haskell on and off for a number of years for a number of small projects, and I’m considering moving to F# for better IDE and debugger support, and I’m wondering whether there are any downsides in comparison to Haskell which I should consider. Any result-based advice would be appreciated.

Re: F# for fun and profit: Terms and Conditions

#35

Any migrants from Haskell to F# who have used it for larger projects and can compare the two? I’ve used Haskell on and off for a number of years for a number of small projects, and I’m considering moving to F# for better IDE and debugger support, and I’m wondering whether there are any downsides in comparison to Haskell which I should consider. Any result-based advice would be appreciated.

For larger F# projects you will probably use a bunch of .net libraries. It is of course an advantage of F# that you can, but it also makes the language feel like an uneasy hybrid. For example F# functions are called with a different syntax than .net functions/methods. Haskell feels much more consistent.

I prefer F# for larger projects because it makes a bunch of pragmatic compromises. IMHO languages which a singular vision (Scheme, Smalltalk, Haskell) are great for learning and expanding your mind, but when it comes to larger real-world projects, dogmatism just gets in the way.

Re: F# for fun and profit: Terms and Conditions

#36
post #35

Any migrants from Haskell to F# who have used it for larger projects and can compare the two? I’ve used Haskell on and off for a number of years for a number of small projects, and I’m considering moving to F# for better IDE and debugger support, and I’m wondering whether there are any downsides in comparison to Haskell which I should consider. Any result-based advice would be appreciated.

For larger F# projects you will probably use a bunch of .net libraries. It is of course an advantage of F# that you can, but it also makes the language feel like an uneasy hybrid. For example F# functions are called with a different syntax than .net functions/methods. Haskell feels much more consistent. I prefer F# for larger projects because it makes a bunch of pragmatic compromises. IMHO languages which a singular…

Thanks for the tips.

Re: F# for fun and profit: Terms and Conditions

#37
post #6

I only used F# on the side for a few casual projects but I'd really love for it to gain much more traction. Just like Clojure feels to me like a great pragmatic language on top of the JVM, F# feels like Ocaml on top of a really strong ecosystem.

It often gets compared to Scala, but, personally, I genuinely prefer F#. It has that ML feel, but without quite the same "I'm trying to be Haskell but I'm trapped inside a (relatively) weakly typed object-imperative universe" identity crisis.

It also does some nice things from a pragmatic perspective. It's true that computation expressions are nerfed monads, but they're done in a way that makes unfamiliar code easier to read. I find the tradeoff to be a net gain for the teamwork story. And, while pattern matching is everywhere these days, I still think F# wears it best.

Re: F# for fun and profit: Terms and Conditions

#38

What are some real world uses for this that people have used outside of their sandpit i.e. at work? I regularly see functional programming get voted to the top, but never any practical applications of such.

Jet.com is a great example.

https://youtu.be/FskIb9SariI?t=409

Re: F# for fun and profit: Terms and Conditions

#40
post #30
post #28

Earlier quoted context omitted.

The F# compiler seems to be written in F#. Therefore, you need to already have an F# compiler to build it. That GitHub repo mentions that "You will also need the latest .NET 5 SDK", which looks like it includes F#. (Presumably, when the language was first written, there existed a compiler written in some other language. However, that compiler is almost certainly not maintained anymore, so it wouldn't be able to compi…

So where's the issue with using a cloud hosted build environment for the builds?

None? That's not what they are arguing against. You can see and compile the F# code, but since you need for that to use an already built compiler provided by Microsoft, you need to trust it.

Even compiling the compiler and then use that compiler to compile your code doesn't help, because the first compiler that was compiled by someone's else might tamper the resulting compiler binary.

Post reply on HN