This is Part 2 of the session. Bill Wagner and Jon Skeet explain the basics of asynchronous operations in C# using the Async keyword. The session is spiced with live demos.
Bill Wagner and Jon Skeet explain the basics of asynchronous operations in C# using the Async keyword. The session is spiced with live demos.
Andreia Gaita introduces Cxxi, a Mono C# - C++ interoperability framework meant to make instantiating C++ objects, invoking methods, sub-classing classes and other similar operations easier.
Joe Pamer presents what Type Providers coming in F# 3.0 are: a mechanism for accessing a multitude of external data source.
Richard Minerich shows how to use F# in Mono with MonoDevelop, detailing some of the features that make it attractive to programmers.
Don Syme discusses the history of F#, how it came about, the current status of the language, especially its simple model supporting parallel and asynchronous programming, and a preview of F# 3.0.
Josh Graham explains what monads are, how and why they are used, including several concrete examples of monads like Identity, Maybe, List, and Continuation. (This session is based on Amanda Laucher’s presentation “Demystifying Monads.”)
Ben Hall shows how Ruby testing tools can help with .NET and ASP.NET development and takes a look at RSpec, Webrat, Cucumber, Selenium and others. Also: a peek at using IronRuby for testing .NET apps.
Amanda Laucher and Josh Graham present at an introductory level some of the most important elements of the .NET ecosystem: F#, M, Boo, NUnit, RhinoMocks, Moq, NHibernate, Castle, Windsor, NVelocity, Guerilla WCF, Azure, MEF.
Amanda Laucher and Josh Graham introduce the audience to F# basics showing some of its main features, emphasizing what makes it better than imperative languages. Laucher also presents the case of a real life application where she rewrote large portions of C# code replacing it with dense fast executing F# instructions.
Sadek Drobi shows how he applied functional programming principles to a real-life project which needed to meet certain performance requirements. He shares the lessons learnt on using mutation, laziness, recursion, functions, monads, list comprehensions and parallelization in an attempt to achieve a functional domain model.