The F# language is kind of wierd (in a good way). Born out of Microsoft Research and initially sold to the world by Microsoft as a part of Visual Studio, it now has a vibrant open source community and ecosystem around it. This puts it in a funny place. A great way to illustrate that is to visit the following links:
F# homepage on the Microsoft .NET site Homepage for F# and the F# Software Foundation The first link a page on the Microsoft marketing site for .
I love using Visual Studio Code (VSCode) as my main editor whenever I can, and because I’m an F# developer, I get to use the amazing Ionide plugin .
But to get specific, the main thing I use F# and VSCode for is F# scripting. F# scripts are the best tool for doing ad-hoc computing work, such as:
Trying out a library Writing a utility to process some stuff, like transforming markdown files Testing out someone’s code when they’re asking for help in the F# Slack , F# Forums , or pretty much anywhere Etc.
Note: this post does not apply to Jetbrains Rider. Rider uses its own engine for representing F# syntax expressions and has its own strongly-typed API for traversing and manipulating F# expressions.
F# tooling in Visual Studio and Visual Studio Code supports a variety quick fixes for fixing an error in your code. Here’s an example of one:
Wrap Expression in Parentheses Quick Fix Pretty neat, right? This post will walk through the essentials of implementing a quick fix like this in either Visual Studio or VSCode.
As of the time of writing (2020-06-06), I will have been employed at Microsoft for 5 years. I joined the .NET team when I was 24 years old. Now at 29, I’m still here and thoroughly enjoying it. It’s been a great time overall. I’ve learned so much more than I ever would have imagined, met so many wonderful people, and helped make some things that people enjoy. Here’s what I remember the most in those years.
Every once in a while, you’ll want to compare to performance of two or more routines, algorithms, types, etc. This is called benchmarking and it’s a lot of fun to do in F#. Here’s how you do it.
How to install BenchmarkDotNet First, make sure you’ve got the latest .NET SDK . Then create a new console app:
dotnet new console -lang F# -o BasicExperiment Navigate to the BasicExperiment directory and add the package: