
Reflecting on F# in 2017 - dustinmoris
https://medium.com/@_cartermp/reflecting-on-f-in-2017-5ac67fb138ff
======
DanielBMarkham
On a related note, I'm a long, long time HN'er and huge F# fan. A few weeks
ago I received an invitation from Uncle Bob to visit him and do a case study
using F#.

It wasn't a training video, much more of a fun coder-to-coder week where Bob
and I went through a few sample problems. I tried to show him how thinking in
F# is different from the C#/Java most of his viewers are familiar with. I also
tried to share some of my excitement with where the language is and how cool
it is to have fun coding again.

You can see more about this on the F# reddit group. There's a post where I
asked the community what to go over [1], and a post detailing how things went
[2].

1\.
[https://www.reddit.com/r/fsharp/comments/7i7ssp/tips_for_int...](https://www.reddit.com/r/fsharp/comments/7i7ssp/tips_for_introducing_f_to_a_large_oop_audience/)

2\.
[https://www.reddit.com/r/fsharp/comments/7k3chx/update_on_th...](https://www.reddit.com/r/fsharp/comments/7k3chx/update_on_the_uncle_bob_f_introduction_videos/)

------
jackfoxy
I like the topics Phillip lists at the end he especially wants to focus on in
terms of delivery from Microsoft. Achieving all of these as well as a 4.2
version of the language would be a great win for the F# community.

------
melling
How is F# development on the Mac? Visual Studio Code with Ionide is mentioned:
[http://ionide.io](http://ionide.io)

How does this compare with native Visual Studio on a PC? My impression that
you’d be a lot more productive in Visual Studio:
[https://www.visualstudio.com/en-
us/news/releasenotes/vs2017-...](https://www.visualstudio.com/en-
us/news/releasenotes/vs2017-relnotes#a-idfsharpnetcoreimprovements-a-f-
tooling-improvements)

~~~
dustinmoris
For F# development I would choose VS Code with Ionide over VS for PC (haven't
tried the Mac version yet) any time.

~~~
bsaul
Does ionide for vscode still requires installing mono in addition to .net core
?

~~~
piaste
Running on pure NET Core has been available for about a month as an
experimental toggle ("Fsharp.Fsacruntime" : "netcore"). I mostly use VS so I
don't know if it's become stable yet.

------
pimeys
I've always been interested about F#. How are the effects done in the
language? If using monads, does it have something similar to Haskell's do
notation or Scala's for notation? What are the good resources to read how to
start F# development on Linux?

~~~
lkitching
F# has syntactic support for monads called computation expressions
([https://docs.microsoft.com/en-us/dotnet/fsharp/language-
refe...](https://docs.microsoft.com/en-us/dotnet/fsharp/language-
reference/computation-expressions)). There are a couple of these included in
the standard library (seq and async). However the language is impure so you
are free to put side-effects anywhere you want without encoding it in your
types.

------
cube2222
I can't wait to get type providers on net core! Great to hear it's a priority.

For those of you who don't know F# type providers, check them out, they really
are amazing. Providing type inference from HTML web sites, json payloads, SQL
Databases amongst others.

