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

    Microsoft Puts the F in Functional

    By
    Darryl K. Taft
    -
    November 5, 2007
    Share
    Facebook
    Twitter
    Linkedin

      MONTREAL—Microsoft is putting the “F” in functional programming with its F# language.

      F#—pronounced “F sharp”—is a functional programming language out of Microsoft Research that the company will productize to target developers dealing with concurrency and those in the financial, scientific and technical, and academic arenas.

      At the Object-Oriented Programming, Systems, Languages and Applications 2007 conference here in October, some of Microsoft’s leading language gurus, including Jim Hugunin, Anders Hejlsberg and Erik Meijer, spoke of coming to Montreal via Cambridge, England, where they had stopped in on Don Syme, Microsoft’s researcher heading up the F# project. Microsoft had just announced plans to transition the technology from research to product form under Visual Studio.

      Over dinner at the event, I had the chance to learn more about F# from Mads Torgersen, program manager for Microsoft’s C#. Torgersen was instrumental in getting F# productized.

      Earlier in the conference, Hejlsberg, a core creator of C#, said he has seen a resurgence of functional programming and its influences. Functional programming treats computation as the evaluation of mathematical functions and avoids state and mutable data. Functional languages include APL, Erlang, Haskell, Lisp, ML, Oz and Scheme. Microsoft’s Meijer is one of the creators of Haskell.

      “It’s clear that a bunch of the things in programming that will be becoming more important over time benefit from a more functional style of programming, like concurrency, distributed programming and so forth,” Torgersen said.

      Microsoft snags an open-source project leader. Click here to read more.

      Blogging on the issue, S. “Soma” Somasegar, corporate vice president of Microsoft’s Developer Division, said, “Language features such as lambda expressions in C# and generics in .Net 2.0 have roots in functional languages, and LINQ [Language Integrated Query] is directly based on functional programming techniques.”

      Moreover, said Somasegar, many “ideas from functional languages are helping us address some of the biggest challenges facing the industry today, from the impedance mismatch between data and objects to the challenges of the multi-core and parallel computing space.”

      Also at the Montreal conference, Java creator and Sun Microsystems Fellow James Gosling said the issue he has with functional programming is that only a small segment of the community seems to be able to or has an interest in learning it.

      Torgersen agreed that the functional languages around, “including Haskell, are very much in their own world. They tend to be very closed on themselves and do not interoperate well [with the rest of the world]. And that’s a problem in a world that’s increasingly dependent on APIs and having rich libraries and things to reach out to.”

      But that is the beauty of F#, in that Microsoft is building it as another language that will run on the company’s CLR (Common Language Runtime).

      “F# stems from the functional programming tradition [hence the ‘f’] and has strong roots in the ML family of languages, though also draws from C#, LINQ and Haskell. F# is designed from the outset to be a first-class citizen on .Net,” Somasegar said. “This means that F# runs on the CLR, embraces object-oriented programming, and has features to ensure a smooth integration with the .Net Framework.”

      Torgersen said F# is a “very pragmatic” adoption of functional programming. F# can address the needs of a group of programmers “that we’ve totally forgotten about in our whole traveling circus of object-oriented programming, which is people doing numerical stuff, scientific programming, technical programming and financial programming—there are a bunch of folks with domain expertise but who have relatively limited tools they can program in,” he said.

      Moreover, Torgersen said F# encourages developers to program in a “stateless way—you say what you want, but you don’t say as much about how you want it. It’s easier to abstract the how away. So that leaves you more wiggle room to define exactly how your code gets executed. … You can separate the execution logic from the code intent, and that’s useful when you want fine-grained control over how concurrency is handled.”

      He said F# is not being positioned as a successor to Visual Basic or C#. “We expect it to occupy a different market where we are very weak right now,” he said.

      Somasegar said Microsoft will fully integrate the F# language into Visual Studio and continue innovating and evolving F#. “In my mind, F# is another first-class programming language on the CLR,” he said.

      On his own blog, Syme said that Microsoft will be “initially focused on putting the finishing touches on [version 1] of the language design, improving the compiler, tools and Visual Studio project system, completing the language specification and augmenting F# with the libraries and tools needed to make it truly powerful in application areas particularly suited to functional programming.”

      In the meantime, Syme’s group is hiring developers to beef up the F# team.

      Check out eWEEK.com’s Application Development Center for the latest news, reviews and analysis in programming environments and developer tools.

      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
      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
      Careers

      SThree’s Sunny Ackerman on Tech Hiring Trends

      James Maguire - June 9, 2022 0
      I spoke with Sunny Ackerman, President/Americas for tech recruiter SThree, about the tight labor market in the tech sector, and much needed efforts to...
      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.

      ×