F# 5 Preview Focuses on Interactive Analytics

Microsoft is previewing F# 5, the latest iteration of its functional-first programming language, as it moves toward a unifying .NET 5 release in November.

While some may view F# as the neglected little cousin of C#, its popularity has risen along with use cases at which it's especially adept, such as data-oriented programming in financial, AI, data science and other analytics applications, among others.

In announcing the F# 5 preview, the team said it started this development cycle with the specific intention of improving interactive programming, to go along with related initiatives such as supporting .NET in Jupyter Notebooks in .NET Core.

"Interactive programming has historically been a strength of F#, but improving that aspect of F# has been neglected for a few years," said Phillip Carter, program manager, .NET and Languages, in a March 18 blog post. "With interactive programming becoming increasingly important as machine learning and data science rise in popularity, it was clear that improvements had to be made in the overall experience. Many of these improvements are language changes, and we plan on introducing more features in future preview that are aligned with this."

A few of the new features highlighted in the announcement include:

  • Enhanced slicing: The critical functionality of data slicing has been improved in three ways.
  • New nameof function: This helps with logging and validating parameters to functions.
  • Opening static classes: This provides the ability to "open" a static class just like a module or namespace, applicable to any static class in .NET (or any package), or in a coder's own F#-defined static class.

Going forward, the dev team plans to introduce new F# features in .NET 5 previews, the first of which just shipped.

As to what those new features will be, Carter pointed to three links for more information:

In that first category, the sole item reads: "[RFC FS-1071] Witnesses passing for trait-constraints w.r.t. quotations."

About the Author

David Ramel is an editor and writer for Converge360.

comments powered by Disqus


  • AI for GitHub Collaboration? Maybe Not So Much

    No doubt GitHub Copilot has been a boon for developers, but AI might not be the best tool for collaboration, according to developers weighing in on a recent social media post from the GitHub team.

  • Visual Studio 2022 Getting VS Code 'Command Palette' Equivalent

    As any Visual Studio Code user knows, the editor's command palette is a powerful tool for getting things done quickly, without having to navigate through menus and dialogs. Now, we learn how an equivalent is coming for Microsoft's flagship Visual Studio IDE, invoked by the same familiar Ctrl+Shift+P keyboard shortcut.

  • .NET 9 Preview 3: 'I've Been Waiting 9 Years for This API!'

    Microsoft's third preview of .NET 9 sees a lot of minor tweaks and fixes with no earth-shaking new functionality, but little things can be important to individual developers.

  • Data Anomaly Detection Using a Neural Autoencoder with C#

    Dr. James McCaffrey of Microsoft Research tackles the process of examining a set of source data to find data items that are different in some way from the majority of the source items.

  • What's New for Python, Java in Visual Studio Code

    Microsoft announced March 2024 updates to its Python and Java extensions for Visual Studio Code, the open source-based, cross-platform code editor that has repeatedly been named the No. 1 tool in major development surveys.

Subscribe on YouTube