Close
  • Latest News
  • Artificial Intelligence
  • Big Data and Analytics
  • Cloud
  • Networking
  • Cybersecurity
  • Applications
  • IT Management
  • Storage
  • Sponsored
  • Mobile
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
Read Down
Sign in
Close
Welcome!Log into your account
Forgot your password?
Read Down
Password recovery
Recover your password
Close
Search
Logo
Logo
  • Latest News
  • Artificial Intelligence
  • Big Data and Analytics
  • Cloud
  • Networking
  • Cybersecurity
  • Applications
  • IT Management
  • Storage
  • Sponsored
  • Mobile
  • Small Business
  • Development
  • Database
  • Servers
  • Android
  • Apple
  • Innovation
  • Blogs
  • PC Hardware
  • Reviews
  • Search Engines
  • Virtualization
More
    Home Applications
    • Applications
    • Development

    F# to Join VB and C# in Microsoft Language Stable

    By
    Darryl K. Taft
    -
    September 11, 2008
    Share
    Facebook
    Twitter
    Linkedin

      NEW YORK-Microsoft plans to deliver a new general-purpose programming language to developers, known as F# (pronounced F Sharp), that takes advantage of the functional programming model.

      Speaking at the VSLive New York conference here on Sept. 8, Luke Hoban, the F# program manager at Microsoft, said F# is a functional programming language for .NET, which will join C# and Visual Basic as core .NET languages.

      Functional programming is a programming paradigm that treats computation as the evaluation of mathematical functions and avoids state and mutable data. It emphasizes the application of functions, in contrast with the imperative programming style that emphasizes changes in state.

      “Functional programming means functions are very important,” Hoban said. “With F# we pass around functions like any kind of data.”

      Hoban further explained that “F# is a functional, object-oriented, imperative and explorative programming language for .NET.” And, “F# makes an inference that a language should be good at doing explorative development,” he said.

      However, “by no means is F# a replacement for C# or Visual Basic, which are great for mainstream development,” Hoban said. “F# is meant to go out and extend the reach of .NET to new developers and new types of developers.”

      F# started as a research project in Microsoft’s research lab in Cambridge, England. “And about eight months ago Microsoft decided there was an audience we could target more aggressively” with the language, Hoban said.

      Although Hoban described F# as a general-purpose language, he said it is particularly suited to doing technical algorithms and explorative tests, financial modeling and analysis, data mining, scientific data analysis, domain specific modeling, and academic uses. In fact, Hoban said many of the early adopters of F# are financial services companies in New York on Wall Street.

      Hogan also noted that F# borrows from other languages and is strongly typed, has a succinct syntax, is scalable, has libraries, and is explorative, interoperable and efficient. Other characteristics early users have listed as benefits of F# are that it is quick coding, supports scripting, has good performance, is symbolic and has .NET integration.

      At the end of August, Microsoft released the September CTP (Community Technology Preview) of F#. That CTP features improved integration with Visual Studio 2008 and was co-developed by Microsoft Research in Cambridge and Hoban’s group in Redmond, Wash. The September CTP of F# also features improvements to the F# language and libraries to make them simpler and more regular. And there is also a new language feature, Units of Measure, which extends F#’s inference and strong typing to floating-point data.

      Don Syme, the Microsoft researcher who devised F#, in a blog post, said:

      ““F# is a simple, type-safe, efficient, scalable language for the .NET platform that supports both functional and object-oriented programming. One of the key things about F# is that it spans the spectrum from interactive, explorative scripting to component and large-scale software development. In this release we’ve made major improvements to the language, libraries and tools across this spectrum.”“

      Along with the CTP, Microsoft also launched “a new F# Developer Center on MSDN [Microsoft Developer Network],” said S. “Soma” Somasegar, senior vice president of Microsoft’s Developer Division, in a blog post. “This developer center provides resources for F# developers and links to F# user communities.”

      Hoban said Microsoft will deliver in 2009 the first supported release of F# that will be aligned with the next version of Visual Studio. However, Hoban said it is not yet clear whether F# will be delivered as an add-in or “out of the box.”

      Because F# supports immutability, it is good for parallel programming, Hoban said. “We treat things as being immutable, and immutability comes up when we get to more parallel applications. … What immutability means for F# is if you define a value you can’t change it-it’s not mutable.”

      F# has “the static typing of C# with the succinctness of a scripting language,” Hoban said. The language also features a type inference capability, where the compiler can tell what type the developer intended to use. Indeed, Hoban demonstrated the integration of F# with Visual Studio, where he hovered the cursor over a piece of code and a pop-up displayed what type the code was. “On the language side, some of the consistent feedback we get about F# is that the combination of type-inferred programming and interactive exploration allows you to develop correct algorithms and objects quickly and with a very low error rate,” Syme said.

      F# also supports pattern matching, functional collections and scripting via the Script.fsx extension, said Hoban said, who showed a demonstration in which he used DirectX and F# to do visualization of data.

      Regarding performance, “in F# you get really good performance,” Hoban said. “F# can probably run 10 to 20 times faster than Python. … You should look for performance at about the same level as C#.”

      Moreover, Hoban said as proof of the applicability of F#, “we develop F# in F#,” with only one or two side projects in C#, Visual Basic and C++ contributing to the development of the language.

      Darryl K. Taft
      Darryl K. Taft covers the development tools and developer-related issues beat from his office in Baltimore. He has more than 10 years of experience in the business and is always looking for the next scoop. Taft is a member of the Association for Computing Machinery (ACM) and was named 'one of the most active middleware reporters in the world' by The Middleware Co. He also has his own card in the 'Who's Who in Enterprise Java' deck.
      Get the Free Newsletter!
      Subscribe to Daily Tech Insider for top news, trends & analysis
      This email address is invalid.
      Get the Free Newsletter!
      Subscribe to Daily Tech Insider for top news, trends & analysis
      This email address is invalid.

      MOST POPULAR ARTICLES

      Latest News

      Zeus Kerravala on Networking: Multicloud, 5G, and...

      James Maguire - December 16, 2022 0
      I spoke with Zeus Kerravala, industry analyst at ZK Research, about the rapid changes in enterprise networking, as tech advances and digital transformation prompt...
      Read more
      Applications

      Datadog President Amit Agarwal on Trends in...

      James Maguire - November 11, 2022 0
      I spoke with Amit Agarwal, President of Datadog, about infrastructure observability, from current trends to key challenges to the future of this rapidly growing...
      Read more
      IT Management

      Intuit’s Nhung Ho on AI for the...

      James Maguire - May 13, 2022 0
      I spoke with Nhung Ho, Vice President of AI at Intuit, about adoption of AI in the small and medium-sized business market, and how...
      Read more
      Applications

      Kyndryl’s Nicolas Sekkaki on Handling AI and...

      James Maguire - November 9, 2022 0
      I spoke with Nicolas Sekkaki, Group Practice Leader for Applications, Data and AI at Kyndryl, about how companies can boost both their AI and...
      Read more
      Cloud

      IGEL CEO Jed Ayres on Edge and...

      James Maguire - June 14, 2022 0
      I spoke with Jed Ayres, CEO of IGEL, about the endpoint sector, and an open source OS for the cloud; we also spoke about...
      Read more
      Logo

      eWeek has the latest technology news and analysis, buying guides, and product reviews for IT professionals and technology buyers. The site’s focus is on innovative solutions and covering in-depth technical content. eWeek stays on the cutting edge of technology news and IT trends through interviews and expert analysis. Gain insight from top innovators and thought leaders in the fields of IT, business, enterprise software, startups, and more.

      Facebook
      Linkedin
      RSS
      Twitter
      Youtube

      Advertisers

      Advertise with TechnologyAdvice on eWeek and our other IT-focused platforms.

      Advertise with Us

      Menu

      • About eWeek
      • Subscribe to our Newsletter
      • Latest News

      Our Brands

      • Privacy Policy
      • Terms
      • About
      • Contact
      • Advertise
      • Sitemap
      • California – Do Not Sell My Information

      Property of TechnologyAdvice.
      © 2022 TechnologyAdvice. All Rights Reserved

      Advertiser Disclosure: Some of the products that appear on this site are from companies from which TechnologyAdvice receives compensation. This compensation may impact how and where products appear on this site including, for example, the order in which they appear. TechnologyAdvice does not include all companies or all types of products available in the marketplace.

      ×