{"id":171037,"date":"2012-10-22T09:40:16","date_gmt":"2012-10-22T09:40:16","guid":{"rendered":"https:\/\/www.microsoft.com\/en-us\/research\/project\/f-at-microsoft-research\/"},"modified":"2017-06-09T08:52:06","modified_gmt":"2017-06-09T15:52:06","slug":"f-at-microsoft-research","status":"publish","type":"msr-project","link":"https:\/\/www.microsoft.com\/en-us\/research\/project\/f-at-microsoft-research\/","title":{"rendered":"F# at Microsoft Research"},"content":{"rendered":"<h3>F# is a succinct, expressive, and efficient functional and object-oriented language for Microsoft .NET that helps you write simple code to solve complex problems.<\/h3>\n<p>These pages are the historical home of F# at Microsoft Research. For the latest information on F# today, see the links to the right.<\/p>\n<p>F# brings you type safe, succinct, efficient, and expressive functional programming language. This simple and pragmatic language has particular strengths in data-oriented programming, parallel I\/O programming, parallel CPU programming, scripting, and algorithmic development. It enables you to access a huge library and tools base and comes with a strong set of development tools. F# combines the advantages of typed functional programming with high-quality, well-supported modern runtime systems. F# 3.0 incorporates ground-breaking features in integrating Internet-scale information sources and services into strongly typed programming languages. The active F# community contributes tools for Emacs, Vim, Linux, Mac, iOS, Windows, Android, JavaScript, and HTML5.<\/p>\n<p>Microsoft Research contributes to F# through the language design and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/tryfsharp.org\/\">Try F#<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>.<\/p>\n<p>F# is open source under an OSI-approved license (Apache 2.0) and is available across multiple platforms through the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.github.com\/\">F# Software Foundation<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>. You can contribute to F# in many ways, including through that organization.<\/p>\n<p>Microsoft make free <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.net\/\">Visual F# Tools<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> for Visual Studio and these tools are also included in Visual Studio Professional and Ultimate. This makes F# one of the few languages with both a strong\u00a0open source community and a supported, professional product from Microsoft.<\/p>\n<p>F# originated at <a href=\"https:\/\/www.microsoft.com\/en-us\/research\/lab\/microsoft-research-cambridge\/\">Microsoft Research, Cambridge<\/a>. The Microsoft Research team continues to partner with teams across Microsoft and with external open-source organizations, researchers, companies and users to break new ground in programming language systems, including F#. Microsoft Research staff continue to contribute to F#, its ecosystem and research based around F#.<\/p>\n<p>For more information on using F# today, see the links below.<\/p>\n\t<div data-wp-context='{\"items\":[]}' data-wp-interactive=\"msr\/accordion\">\n\t\t\t\t\t<div class=\"clearfix\">\n\t\t\t\t<div\n\t\t\t\t\tclass=\"btn-group align-items-center mb-g float-sm-right\"\n\t\t\t\t\tdata-bi-aN=\"accordion-collapse-controls\"\n\t\t\t\t>\n\t\t\t\t\t<button\n\t\t\t\t\t\tclass=\"btn btn-link m-0\"\n\t\t\t\t\t\tdata-bi-cN=\"Expand all\"\n\t\t\t\t\t\tdata-wp-bind--aria-controls=\"state.ariaControls\"\n\t\t\t\t\t\tdata-wp-bind--aria-expanded=\"state.ariaExpanded\"\n\t\t\t\t\t\tdata-wp-bind--disabled=\"state.isAllExpanded\"\n\t\t\t\t\t\tdata-wp-class--inactive=\"state.isAllExpanded\"\n\t\t\t\t\t\tdata-wp-on--click=\"actions.onExpandAll\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t>\n\t\t\t\t\t\tExpand all\t\t\t\t\t<\/button>\n\t\t\t\t\t<span aria-hidden=\"true\"> | <\/span>\n\t\t\t\t\t<button\n\t\t\t\t\t\tclass=\"btn btn-link m-0\"\n\t\t\t\t\t\tdata-bi-cN=\"Collapse all\"\n\t\t\t\t\t\tdata-wp-bind--aria-controls=\"state.ariaControls\"\n\t\t\t\t\t\tdata-wp-bind--aria-expanded=\"state.ariaExpanded\"\n\t\t\t\t\t\tdata-wp-bind--disabled=\"state.isAllCollapsed\"\n\t\t\t\t\t\tdata-wp-class--inactive=\"state.isAllCollapsed\"\n\t\t\t\t\t\tdata-wp-on--click=\"actions.onCollapseAll\"\n\t\t\t\t\t\ttype=\"button\"\n\t\t\t\t\t>\n\t\t\t\t\t\tCollapse all\t\t\t\t\t<\/button>\n\t\t\t\t<\/div>\n\t\t\t<\/div>\n\t\t\t\t<ul class=\"msr-accordion\">\n\t\t\t\t\t\t\t\t<li class=\"m-0\" data-wp-context='{\"id\":\"accordion-content-2\"}' data-wp-init=\"callbacks.init\">\n\t\t<div class=\"accordion-header\">\n\t\t\t<button\n\t\t\t\taria-controls=\"accordion-content-2\"\n\t\t\t\tclass=\"btn btn-collapse\"\n\t\t\t\tdata-wp-bind--aria-expanded=\"state.isExpanded\"\n\t\t\t\tdata-wp-on--click=\"actions.onClick\"\n\t\t\t\tid=\"accordion-button-1\"\n\t\t\t\ttype=\"button\"\n\t\t\t>\n\t\t\t\tF# Historical Acknowledgements\t\t\t<\/button>\n\t\t<\/div>\n\t\t<div\n\t\t\taria-labelledby=\"accordion-button-1\"\n\t\t\tclass=\"msr-accordion__content\"\n\t\t\tdata-wp-bind--inert=\"!state.isExpanded\"\n\t\t\tdata-wp-run=\"callbacks.run\"\n\t\t\tid=\"accordion-content-2\"\n\t\t>\n\t\t\t<div class=\"msr-accordion__body\">\n\t\t\t\t<h2>F# Historical Acknowledgements<\/h2>\n<p>These pages document F# as a research project. For further information on using F# today, see <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.fsharp.net\/\">The Visual F# Developer Center<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.github.com\/\">The F# Open Source Group<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>.<\/p>\n<p>F# was originally designed and implemented by <a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/dsyme\/\">Don Syme<\/a>. James Margetson then joined the team at Microsoft Research and has made many contributions to the design and implementation. Many other contributors, users and people helped with F# in its early days. Some particular people to mention are: Byron Cook, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/blogs.msdn.com\/dsyme\/archive\/2007\/03\/04\/for-jim-huddleston.aspx\">James Huddleston<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.dcooney.com\/\">Dominic Cooney<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.strangelights.com\/\">Robert Pickering<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/cs.jjbresearch.org\/blogs\/os\/\">optionsScalper<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/plas.fit.qut.edu.au\/metaphor\/\">Greg Neverov<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/tomasp.net\/\">Tomas Petricek<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/blogs.msdn.com\/joelpob\/\">Joel Pobar<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, Ralf Herbrich, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/rotor.di.unipi.it\/cisterni\/default.aspx\">Antonio Cisterni<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.intellifactory.com\/\">Adam Granicz<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>.<\/p>\n<p>F# is related to the design of Generics for .NET and thus owes a lot to Andrew Kennedy, who co-designed generics with Don Syme. Andrew is a co-designer of F#, being the designer and implementor of units-of-measure for F#.<\/p>\n<p>Many research projects and prior language designs contain work relevant to F#, much of which has directly or indirectly influenced its design. Although F# is a complete re-implementation of a Caml-like language, a special thanks go to the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/caml.inria.fr\/\">Caml team<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, in particular <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/pauillac.inria.fr\/~xleroy\/\">Xavier Leroy<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, who agreed that a &#8216;Caml.NET&#8217; was a good thing to do. Xavier and others also suggested we experiment with language design instead of just implementing OCaml, which ultimately led to many good things. Also thanks to <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.math.nagoya-u.ac.jp\/~garrigue\/\">Jacques Garrigue<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> who gave some helpful positive feedback. The OCaml team&#8217;s work on both the language and the core foundations of programming remains an ongoing inspiration for us.<\/p>\n<p>The F# team are especially grateful to members of other language communities who have been willing to give us advice about F# and to help us talk through aspects of the design. This includes Anders Hejlsberg, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.haskell.org\/~simonmar\/\">Simon Marlow<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/simonpj\/\">Simon Peyton-Jones<\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/homepages.inf.ed.ac.uk\/wadler\/\">Phil Wadler<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/blogs.msdn.com\/madst\">Mads Torgersen<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/lamp.epfl.ch\/~odersky\">Martin Odersky<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>. We&#8217;re also grateful for the support of colleagues in the Microsoft Research Programming Principles and Tools group.<\/p>\n<p>F# would not exist without the incredible work of the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/msdn.microsoft.com\/\">Microsoft Developer Division<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, especially the .NET Common Language Runtime team, the .NET Framework team, the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/msdn2.microsoft.com\/en-us\/vcsharp\/aa336719.aspx\">C# team<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/msdn2.microsoft.com\/en-gb\/vstudio\/default.aspx\">Visual Studio<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> team.<\/p>\n<p>Mads Torgorsen and Raj Pai were responsible for making the initial pitch to create Visual F# and the Microsoft Developer Division led by <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/blogs.msdn.com\/somasegar\">S. Somasegar<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> is responsible for the Visual F# tools. Luke Hoban was the program manager tasked with bringing the F# language and the Visual F# tools to market, including building on the initial momentum and success created by Microsoft Research and ensuring widespread industry adoption for analytical programming. Hoban gained widespread recognition at Microsoft for his work on F# and during 2009 and 2010 took on an increasing leadership role in the team. Tim Ng was engineering lead during this time.<\/p>\n<p>We have special memories of <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/blogs.msdn.com\/dsyme\/archive\/2007\/03\/04\/for-jim-huddleston.aspx\">James Huddleston<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> of Apress who took a lead in publishing activities related to F#, which has led to <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.apress.com\/book\/bookDisplay.html?bID=10240\">Foundations of F#<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/blogs.msdn.com\/dsyme\/archive\/2006\/12\/18\/DraftChaptersUpdateDec2006.aspx\">Expert F#<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>. James passed away in early 2007. <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.dcooney.com\/\">Dominic Cooney<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> was an enthusiastic early adopter, played a significant role in the design of the F# object system. <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.strangelights.com\/\">Robert Pickering<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> was one of the earliest external F# adopters, and now has his own <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.strangelights.com\/\">F# website<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and the <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/strangelights.com\/fsharp\/Wiki\/default.aspx\">F# Wiki<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>.<\/p>\n<p>Satnam Singh, David Langworthy and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/weblogs.asp.net\/cfranklin\/archive\/2004\/09\/06\/225994.aspx\">Dave Wecker<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> have been enthusiastic early adopters at Microsoft, as have Lars Nilsson, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/host-tracker.com\/\">Artem Prysyazhnuk<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, Julian Laugel, SooHyoung Oh, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/cs.jjbresearch.org\/blogs\/os\/\">optionsScalper<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, Dru Sellers, Martin Churchill and Adam Granicz externally, some of whom are now driving fantastic F# community initiatives of their own. <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/progtools.comlab.ox.ac.uk\/members\/mathieu\">Mathieu Verbaere<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/progtools.comlab.ox.ac.uk\/members\/rani\">Ran Ettinger<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/progtools.comlab.ox.ac.uk\/members\/oege\">Oege de Moor<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> at Oxford University used early versions of F# on a number of projects, including <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/progtools.comlab.ox.ac.uk\/projects\/jungl\/\">JunGL<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>. <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/blogs.msdn.com\/dsyme\/archive\/2005\/01\/16\/JackPalevichAndDirectX.aspx\">Jack Palevich<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> first took the dive into combining F# with DirectX, leading to many good things in the development of F#.<\/p>\n<p>Damien Watkins, Martin Szummer and Gavin Bierman were regular early co-conspirators in F#-related matters and have given talks and demonstrations on F# at several events. <a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/minka\/\">Tom Minka<\/a> has been a useful colleague (though still programs mostly in C#. <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/johnwinn.org\/\">John Winn<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>, <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/web.comlab.ox.ac.uk\/oucl\/people\/tom.melham.html\">Tom Melham<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/cs.anu.edu.au\/~Jim.Grundy\/\">Jim Grundy<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> helped inspire the design of F# quotations.<\/p>\n<p>For further information on using F# today, see <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.fsharp.net\/\">The Visual F# Developer Center<span class=\"sr-only\"> (opens in new tab)<\/span><\/a> and <a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.github.com\/\">The F# Open Source Group<span class=\"sr-only\"> (opens in new tab)<\/span><\/a>.<\/p>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/li>\n\t\t<li class=\"m-0\" data-wp-context='{\"id\":\"accordion-content-4\"}' data-wp-init=\"callbacks.init\">\n\t\t<div class=\"accordion-header\">\n\t\t\t<button\n\t\t\t\taria-controls=\"accordion-content-4\"\n\t\t\t\tclass=\"btn btn-collapse\"\n\t\t\t\tdata-wp-bind--aria-expanded=\"state.isExpanded\"\n\t\t\t\tdata-wp-on--click=\"actions.onClick\"\n\t\t\t\tid=\"accordion-button-3\"\n\t\t\t\ttype=\"button\"\n\t\t\t>\n\t\t\t\tF# Resources\t\t\t<\/button>\n\t\t<\/div>\n\t\t<div\n\t\t\taria-labelledby=\"accordion-button-3\"\n\t\t\tclass=\"msr-accordion__content\"\n\t\t\tdata-wp-bind--inert=\"!state.isExpanded\"\n\t\t\tdata-wp-run=\"callbacks.run\"\n\t\t\tid=\"accordion-content-4\"\n\t\t>\n\t\t\t<div class=\"msr-accordion__body\">\n\t\t\t\t<ul>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" href=\"http:\/\/www.tryfsharp.org\/\" target=\"_blank\">Try F#<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.fsharp.org\/\">The F# Software Foundation<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.org\/data-science\/\">F# for Data Science<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/www.fsharp.net\/\">Visual F# Developer Center<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<\/ul>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/li>\n\t\t<li class=\"m-0\" data-wp-context='{\"id\":\"accordion-content-6\"}' data-wp-init=\"callbacks.init\">\n\t\t<div class=\"accordion-header\">\n\t\t\t<button\n\t\t\t\taria-controls=\"accordion-content-6\"\n\t\t\t\tclass=\"btn btn-collapse\"\n\t\t\t\tdata-wp-bind--aria-expanded=\"state.isExpanded\"\n\t\t\t\tdata-wp-on--click=\"actions.onClick\"\n\t\t\t\tid=\"accordion-button-5\"\n\t\t\t\ttype=\"button\"\n\t\t\t>\n\t\t\t\tF# Downloads\t\t\t<\/button>\n\t\t<\/div>\n\t\t<div\n\t\t\taria-labelledby=\"accordion-button-5\"\n\t\t\tclass=\"msr-accordion__content\"\n\t\t\tdata-wp-bind--inert=\"!state.isExpanded\"\n\t\t\tdata-wp-run=\"callbacks.run\"\n\t\t\tid=\"accordion-content-6\"\n\t\t>\n\t\t\t<div class=\"msr-accordion__body\">\n\t\t\t\t<ul>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.org\/use\/windows\">F# for Windows<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.org\/use\/mac\">F# for Mac<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.org\/use\/android\">F# for Android apps<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.org\/use\/ios\">F# for iOS apps<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.org\/use\/linux\">F# for Linux<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.org\/use\/html5\/\">F# for HTML5 apps<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.org\/use\/gpu\/\">F# for GPU programming<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<\/ul>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/li>\n\t\t<li class=\"m-0\" data-wp-context='{\"id\":\"accordion-content-8\"}' data-wp-init=\"callbacks.init\">\n\t\t<div class=\"accordion-header\">\n\t\t\t<button\n\t\t\t\taria-controls=\"accordion-content-8\"\n\t\t\t\tclass=\"btn btn-collapse\"\n\t\t\t\tdata-wp-bind--aria-expanded=\"state.isExpanded\"\n\t\t\t\tdata-wp-on--click=\"actions.onClick\"\n\t\t\t\tid=\"accordion-button-7\"\n\t\t\t\ttype=\"button\"\n\t\t\t>\n\t\t\t\tCommunity\t\t\t<\/button>\n\t\t<\/div>\n\t\t<div\n\t\t\taria-labelledby=\"accordion-button-7\"\n\t\t\tclass=\"msr-accordion__content\"\n\t\t\tdata-wp-bind--inert=\"!state.isExpanded\"\n\t\t\tdata-wp-run=\"callbacks.run\"\n\t\t\tid=\"accordion-content-8\"\n\t\t>\n\t\t\t<div class=\"msr-accordion__body\">\n\t\t\t\t<ul>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/x.com\/fsharporg\">The F# Software Foundation\u00a0on Twitter<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/blogs.msdn.com\/b\/fsharpteam\/\">Visual Studio F# Team Blog<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"https:\/\/x.com\/VisualFSharp\">Visual F# Team on Twitter<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"http:\/\/fsharp.github.com\/\">The F# Open Source Group @ GitHub<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<\/ul>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/li>\n\t\t<li class=\"m-0\" data-wp-context='{\"id\":\"accordion-content-10\"}' data-wp-init=\"callbacks.init\">\n\t\t<div class=\"accordion-header\">\n\t\t\t<button\n\t\t\t\taria-controls=\"accordion-content-10\"\n\t\t\t\tclass=\"btn btn-collapse\"\n\t\t\t\tdata-wp-bind--aria-expanded=\"state.isExpanded\"\n\t\t\t\tdata-wp-on--click=\"actions.onClick\"\n\t\t\t\tid=\"accordion-button-9\"\n\t\t\t\ttype=\"button\"\n\t\t\t>\n\t\t\t\tTechnologies\t\t\t<\/button>\n\t\t<\/div>\n\t\t<div\n\t\t\taria-labelledby=\"accordion-button-9\"\n\t\t\tclass=\"msr-accordion__content\"\n\t\t\tdata-wp-bind--inert=\"!state.isExpanded\"\n\t\t\tdata-wp-run=\"callbacks.run\"\n\t\t\tid=\"accordion-content-10\"\n\t\t>\n\t\t\t<div class=\"msr-accordion__body\">\n\t\t\t\t<ul>\n<li><a title=\"\" href=\"http:\/\/www.microsoft.com\/visualstudio\/\" target=\"_self\">Visual Studio<\/a><\/li>\n<li><a href=\"http:\/\/www.microsoft.com\/net\" target=\"_self\">.NET Framework<\/a><\/li>\n<\/ul>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/li>\n\t\t<li class=\"m-0\" data-wp-context='{\"id\":\"accordion-content-12\"}' data-wp-init=\"callbacks.init\">\n\t\t<div class=\"accordion-header\">\n\t\t\t<button\n\t\t\t\taria-controls=\"accordion-content-12\"\n\t\t\t\tclass=\"btn btn-collapse\"\n\t\t\t\tdata-wp-bind--aria-expanded=\"state.isExpanded\"\n\t\t\t\tdata-wp-on--click=\"actions.onClick\"\n\t\t\t\tid=\"accordion-button-11\"\n\t\t\t\ttype=\"button\"\n\t\t\t>\n\t\t\t\tRelated Links\t\t\t<\/button>\n\t\t<\/div>\n\t\t<div\n\t\t\taria-labelledby=\"accordion-button-11\"\n\t\t\tclass=\"msr-accordion__content\"\n\t\t\tdata-wp-bind--inert=\"!state.isExpanded\"\n\t\t\tdata-wp-run=\"callbacks.run\"\n\t\t\tid=\"accordion-content-12\"\n\t\t>\n\t\t\t<div class=\"msr-accordion__body\">\n\t\t\t\t<ul>\n<li><a class=\"msr-external-link glyph-append glyph-append-open-in-new-tab glyph-append-xsmall\" rel=\"noopener noreferrer\" target=\"_blank\" href=\"https:\/\/www.dreamspark.com\/\">Software for Students and Academics<span class=\"sr-only\"> (opens in new tab)<\/span><\/a><\/li>\n<li><a href=\"https:\/\/www.microsoft.com\/en-us\/research\/lab\/microsoft-research-cambridge\/\">Microsoft Research Cambridge<\/a><\/li>\n<li><a href=\"https:\/\/www.microsoft.com\/en-us\/research\/research-area\/computer-systems-and-networking\/\">Computer Science at Microsoft Research Connections<\/a><\/li>\n<\/ul>\n\t\t\t<\/div>\n\t\t<\/div>\n\t<\/li>\n\t\t\t\t\t\t<\/ul>\n\t<\/div>\n\t\n","protected":false},"excerpt":{"rendered":"<p>F# is a succinct, expressive, and efficient functional and object-oriented language for Microsoft .NET that helps you write simple code to solve complex problems. These pages are the historical home of F# at Microsoft Research. For the latest information on F# today, see the links to the right. F# brings you type safe, succinct, efficient, [&hellip;]<\/p>\n","protected":false},"featured_media":0,"template":"","meta":{"msr-url-field":"","msr-podcast-episode":"","msrModifiedDate":"","msrModifiedDateEnabled":false,"ep_exclude_from_search":false,"_classifai_error":"","footnotes":""},"research-area":[13560],"msr-locale":[268875],"msr-impact-theme":[],"msr-pillar":[],"class_list":["post-171037","msr-project","type-msr-project","status-publish","hentry","msr-research-area-programming-languages-software-engineering","msr-locale-en_us","msr-archive-status-active"],"msr_project_start":"2012-10-22","related-publications":[161116,385982,385973,385967,385961,385946,385940,166722,166721,166720,164745,163578,145172,161115,161114,157198,157197,157196,157194,153080,152819,151822,151821,145180],"related-downloads":[],"related-videos":[185304,185508,185510,185512,185514,185519,185521,185523,186344,186352],"related-groups":[],"related-events":[],"related-opportunities":[],"related-posts":[3331,306191],"related-articles":[],"tab-content":[],"slides":[],"related-researchers":[{"type":"user_nicename","value":"dsyme","display_name":"Don Syme","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/dsyme\/\" aria-label=\"Visit the profile page for Don Syme\">Don Syme<\/a>","is_active":false,"user_id":31693,"last_first":"Syme, Don","people_section":0,"alias":"dsyme"},{"type":"user_nicename","value":"kenjitak","display_name":"Kenji Takeda","author_link":"<a href=\"https:\/\/www.microsoft.com\/en-us\/research\/people\/kenjitak\/\" aria-label=\"Visit the profile page for Kenji Takeda\">Kenji Takeda<\/a>","is_active":false,"user_id":32522,"last_first":"Takeda, Kenji","people_section":0,"alias":"kenjitak"}],"msr_research_lab":[],"msr_impact_theme":[],"_links":{"self":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-project\/171037","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-project"}],"about":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/types\/msr-project"}],"version-history":[{"count":1,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-project\/171037\/revisions"}],"predecessor-version":[{"id":274989,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-project\/171037\/revisions\/274989"}],"wp:attachment":[{"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/media?parent=171037"}],"wp:term":[{"taxonomy":"msr-research-area","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/research-area?post=171037"},{"taxonomy":"msr-locale","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-locale?post=171037"},{"taxonomy":"msr-impact-theme","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-impact-theme?post=171037"},{"taxonomy":"msr-pillar","embeddable":true,"href":"https:\/\/www.microsoft.com\/en-us\/research\/wp-json\/wp\/v2\/msr-pillar?post=171037"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}