Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

F# 3.0: data, services, Web, cloud, at your fingertips

674 views

Published on

Modern programming thrives on rich spaces of data, information and services. With F# 3.0 and Visual Studio 11, you now have a tool that massively simplifies information-rich analytical programming. F# 3.0 provides integrated support for F# Information Rich Programming, a new and powerful way of integrating data and services into your programming experience. In this talk, we will describe the new features of F# 3.0, including the first released version of F# Type Providers and F# Queries, with apps to leverage technologies such as SharePoint, Azure Data Market, OData, Entity Framework and SQL Server.

Published in: Technology, Business
  • Be the first to comment

F# 3.0: data, services, Web, cloud, at your fingertips

  1. 1. palais descongrèsParis7, 8 et 9février 2012
  2. 2. F# 3.0 Information-RichProgrammingData, Services, Web, Cloud, at your fingertips!Now in Visual Studio 11 Developer Preview!7 Feb 2012Don SymePrincipal Researcher, Microsoft
  3. 3. 1 2 3 4 5 6 7
  4. 4. This is a Big Problem
  5. 5. magic
  6. 6. typeproviders
  7. 7. WebSharper/Pit/Javascript (HTML5)
  8. 8. productive supported interoperable functional languagesimple code complex problems
  9. 9. F# C#let swap (x, y) = (y, x) Tuple<U,T> Swap<T,U>(Tuple<T,U> t) { return new Tuple<U,T>(t.Item2, t.Item1) }let rotations (x, y, z) = ReadOnlyCollection<Tuple<T,T,T>> Rotations<T>(Tuple<T, [ (x, y, z); { (z, x, y); new ReadOnlyCollection<int> (y, z, x) ] (new Tuple<T,T,T>[] {new Tuple<T,T,T>(t.Item1,t.Item2,t.Item3); new Tuple<T,T,T>(t.Item3,t.Item1,t.Item2); new Tuple<T,T,T>(t.Item2,t.Item3,t.Item1); }); } int Reduce<T>(Func<T,int> f,Tuple<T,T,T> t)let reduce f (x, y, z) = { f x + f y + f z return f(t.Item1)+f(t.Item2)+f(t.Item3); }
  10. 10. excels analytical engines
  11. 11. an application to balance the nationalpower generation schedulethe calculation engine was written in F# address the complexity at the heartof this application algorithmic analysis oflarge data sets
  12. 12. F# + World Bank
  13. 13. F# + OData
  14. 14. F#+ Climate Data+ Weather Data
  15. 15. Language IntegratedWeb Data
  16. 16. into
  17. 17. Type Providers + LINQLanguage Integrated Data and Services
  18. 18. SQL type "Server=.SQLEXPRESS.." let
  19. 19. ODatatype "http://odata.netflix.com"let
  20. 20. Web Servicestype "http://www.xignite.com/xFutures.asmx?WSDL"let
  21. 21. let avatarTitles = query { for t in netflix.Titles do where (t.Name.Contains "Avatar") select t }
  22. 22. let avatarTitles = query { for t in netflix.Titles do where (t.Name.Contains "Avatar") sortBy t.Name select t }
  23. 23. let avatarTitles = query { for t in netflix.Titles do where (t.Name.Contains "Avatar") sortBy t.Name select t take 100 }
  24. 24. Building a web site usingODataService<…>
  25. 25. strongly typed without explicit codegenextensible, o pen
  26. 26. http://fsharp.nethttp://tryfsharp.org

×