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.
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."
David Ramel is an editor and writer for Converge360.