What's the quick start for using F# on the Mac? Can I get a good native development environment? Am I better off running a Windows VM to get better tooling?
I'm very curious about F# on Mac. I tried it once but it seems disjointed: Ionide requires Mono but I was wanting to use dotnet Core. They didn't seem to agree on what libraries were actually available and I would see red squiggles in the IDE while the code actually compiled.
What's the difference between VSCode and Visual Studio for Mac, for developing F#? What's the reason that you find yourself using both? I thought it would be preferable to just have one IDE.
VS for Mac is a full-on IDE, is significantly larger, and comes with lots of stuff to build a variety of apps.
VSCode is a text editor that, combined with the Ionide plugins, gives you a great lightweight IDE-like experience. It requires a bit more setup, but it's great if you prefer a more lightweight experience but still want a bunch of great features.
I use both depending on what I'm doing or what I feel like using. Typically I'll use VSCode for smaller projects or one-off F# scripts, but you can use it for just about anything. Ionide itself is actually built using Ionide, so that's a great example of using it for something bigger.
I can't speak to Visual Studio for Mac, but the Ionide plugin for VSCode is very impressive. VSCode will fire up faster than Visual Studio for windows and use less resources, ionide has some features Visual Studio does not. There are pros and cons, some people hate Visual Studio, some people prefer it. I prefer Visual Studio but Ionide is not bad when I'm in Linux.
Visual Studio on Windows is good for F#, though it kind of needs the power tools plugin for F# to make it better. It's definitely not as awesome as the C# experience is, but still better than most!
Visual Code, this seems a highly preferred option, and a lot of Fsharpers seem to use it, even on windows. The learning curve is a bit higher as it's not an out of the box experience. The trend is to combine it with FAKE, Packet and .NET Core (which I'm finding hard to keep track of).
I'm using VS for windows for F# product development at the moment.
On my Mac I use both visual studio for Mac for just mucking about, and visual code to play around with the toolsets the trendy kids keep advocating.
Note that in VS2017, many of the Visual F# Power Tools features are in-box and use the same UI that C# and Visual Basic do. The folks behind the VFPT have been porting a lot of that code over and making many improvements along the way. There will be even more features and improvements in future VS 2017 updates, as well!
I'm really looking forward to VS2017 update 1. I've been following the activity in the visualfsharp github repo and some of the new Roslyn based tooling looks fantastic (albeit with alot of churn at the moment).
F# has always had good tooling 'for a functional language' but it looks like we're getting close to good tooling period.
VSCode plugin: https://marketplace.visualstudio.com/items?itemName=Ionide.I...
VS for mac: https://www.visualstudio.com/vs/visual-studio-mac/
There is a guide for VSCode + Ionide here: https://docs.microsoft.com/en-us/dotnet/articles/fsharp/tuto...