HOME SCALA & F# JAVA .NET WEB GROOVY & GRAILS ANDROID & IOS NOSQL ARCHITECTURE AGILE & SCRUM AGILE DEVELOPER  
In The Brain of Robert Pickering: The Combinator Approach to Programming Domain Specific Languages with F#
The Combinator Approach to Programming Domain Specific Languages with F#

Using a “combinator” approach to create internal Domain Specific Languages (DSLs) is something that has been popular in Haskell and the ML family of programming languages for quite some time. Much has been written about it in academic circles, yet this approach to creating DSLs has yet to become popular in main stream industrial programming. Now that F#, a member of the ML family of programing languages, is available out of the box in Visual Studio 2010, this means that these techniques are now much more accessible to programmers working in industry.

This talk will start by addressing the question of what is a combinator and show why combinators are a great way of building internal DSLs. It will then go on to show how this programming technique any be applied to many different problem domains, all of which are very relevant to the modern industrial developer. We’ll also look at some of the existing combinator libraries available for F# such as FParsec and FsCheck.

WANT TO LEARN MORE? THEN CHECK OUT OUR EXPERT WORKSHOPS!

Progressive F# Tutorials

Featuring the creator of F#, Don Syme! This is the first Progressive F# Tutorials: a 2-day, two-track hands-on event covering the latest developments in the fast moving world of Functional Programming.

Also giving expert tutorials will be Dave Thomas, Robert Pickering, Chris Marinos, Tomas Petricek, Phil Trelford, Zach Bray, and many others -- we have made sure the Progressive F# Tutorials will be ultimate place to be. If you want to learn, innovate, and share F# knowledge and skills, join the Progressive F# team and Community Members at the Progressive F# Tutorials. Follow the discussion on Twitter with the tag #progf11 and get more info here

Robert Pickering's Beginning F# Workshop

Robert Pickering's Beginning F# Workshop is a two day course that will teach you all about F#, an exciting new language that has evolved from a Microsoft Research project into a first class citizen of Visual Studio 2010. You will discover how F# can be used to express programs concisely and efficiently; you’ll also learn how to start having fun with this enormously productive language. Find out more here

Tomas Petricek’s and Phil Trelford’s Real-World F# Programming

Tomas Petricek’s and Phil Trelford’s two day course will teach you how to solve real-world .NET problems in F#. Will guide you through several areas where F# can help you be more productive and solve your problems faster, with code that is efficient and easy to maintain. The examples used in this course are based on experience of developing successful commercial applications in F#. After attending, you’ll be able to recognize where using F# can save your time and money and you’ll know how to integrate F# components in the .NET ecosystem. Find out more here

Tomas Petricek & Phil Trelford's Functional Programming in .NET

Tomas Petricek’s and Phil Trelford’s two-day Functional Programming in .NET course explains concepts that you need to write modern applications for .NET using F#, C# with LINQ as well as current and upcoming .NET technologies that arise from functional programming ideas. Learning several simple functional concepts will help you understand these technologies and use them effectively. This means that the course will make you a better programmer even if you’re not going to immediately start using F#. This course is based on experience of developing commercial applications in F# and we’ll discuss good ways of introducing F# to your daily work. Find out more here


ABOUT ROBERT PICKERING
Robert is an experienced software engineer, community leader and author of Beginning F# (Apress). In his 10 year career he has participated in a wide range of projects building large, scalable and fault tolerant systems on the Microsoft .NET platform
More about Robert Pickering
PODCAST THE COMBINATOR APPROACH TO PROGRAMMING DOMAIN SPECIFIC LANGUAGES WITH F#
SPONSORS
Skills Matter Ltd

FuseSource

ThoughtWorks Studios
ThoughtWorks
Cake Solutions
SOFTWARE ARCHITECTURE PODCASTS
Gael Fraiteur:Multithreading beyond the lock keyword, Multithreading
Gael Fraiteur : 24th May 2012
View Podcast: Multithreading beyond the lock keyword,
Oren Eini aka Ayende Rahien:Sharding And Scaling with RavenDB, Scaling with RavenDB
Oren Eini aka Ayende Rahien : 15th May 2012
View Podcast: Sharding And Scaling with RavenDB,
John Zablocki:Developing with Couchbase, Developing with Couchbase
John Zablocki : 9th May 2012
View Podcast: Developing with Couchbase,
Chris Harris:MongoDB and Document Databases, Document Databases
Chris Harris : 9th May 2012
View Podcast: MongoDB and Document Databases,
David Mytton:MongoDB performance at scale, MongoDB performance
David Mytton : 9th May 2012
View Podcast: MongoDB performance at scale,
John Zablocki:The Couchbase Server Tutorial, The Couchbase Server Tutorial
John Zablocki : 9th May 2012
View Podcast: The Couchbase Server Tutorial,
Chris Harris:Hands-on MongoDB, Hands-on MongoDB
Chris Harris : 9th May 2012
View Podcast: Hands-on MongoDB,
Tom McMillen:CouchDB at the Hut Group, CouchDB at the Hut Group
Tom McMillen : 9th May 2012
View Podcast: CouchDB at the Hut Group,
Jim Webber:Managing Highly Connected Data in Neo4j, Neo4j Highly Connected Data
Jim Webber : 9th May 2012
View Podcast: Managing Highly Connected Data in Neo4j,
Nicki Watt:Neo4j Tales from the Trenches: A recommendation Engine Case Study, Neo4j Tales from the Trenches
Nicki Watt : 9th May 2012
View Podcast: Neo4j Tales from the Trenches: A recommendation Engine Case Study,
Oren Eini aka Ayende Rahien:RavenDB: A 2nd generation document database, RavenDB
Oren Eini aka Ayende Rahien : 9th May 2012
View Podcast: RavenDB: A 2nd generation document database,
Phil Jones:The challenges and rewards of using RavenDB, RavenDB: challenges & rewards
Phil Jones : 9th May 2012
View Podcast: The challenges and rewards of using RavenDB,
Oren Eini aka Ayende Rahien:RavenDB Crash Course, RavenDB Crash Course
Oren Eini aka Ayende Rahien : 9th May 2012
View Podcast: RavenDB Crash Course,
Ian Robinson:A Programmatic Introduction to Neo4j, Neo4j Intro
Ian Robinson : 3rd May 2012
View Podcast: A Programmatic Introduction to Neo4j,
Brian Sletten:Information Resources : Moving Beyond Objects, Moving Beyond Objects
Brian Sletten : 3rd May 2012
View Podcast: Information Resources : Moving Beyond Objects,
OTHER SOFTWARE ARCHITECTURE EVENTS
Uncle Bob (Robert C. Martin):Uncle Bob's Advanced Test Driven Development in NYC,  Uncle Bob's Advanced Test Driven Development in NY
3 DAY COURSE. Featuring Uncle Bob (Robert C. Martin)
New York, Tuesday, May 29th
Alberto Brandolini:Eric Evans Domain Driven Design Hands-On Immersion Workshop,  Eric Evans' DDD Immersion Workshop
4 DAY COURSE. Featuring Alberto Brandolini
London, Monday, June 11th
DDD eXchange 2012, DDD eXchange 2012
CONFERENCE (1 DAY)
London, Friday, June 15th BOOK NOW!
Simon Brown:Simon Brown's Enterprise Software Developer,  Simon Brown's Enterprise Software Developer
3 DAY COURSE. Featuring Simon Brown
London, Monday, June 18th
QCon New York 2012, QCon New York 2012
CONFERENCE (3 DAYS)
New York, Monday, June 18th BOOK NOW!
Francis Sanger:Craig Larman's Applying Advanced Object Design with Patterns,  Craig Larman's Object Design w Patterns
4 DAY COURSE. Featuring Francis Sanger
London, Tuesday, June 19th
David Laribee:David Laribee's Leading Lean/Agile Teams,  David Laribee's Leading Lean/Agile Teams
2 DAY COURSE. Featuring David Laribee
New York, Thursday, June 21st
Find Your Ninja Project:Cool Projects in June , Find Your Ninja Project
FREE EVENT: Cool Projects in June
London, Monday, June 25th
© Copyright 2003-2011, Skills Matter Ltd
  Web development by You In Control
About Us  Jobs  Find Us  Meeting & Training Rooms  Newsletter  Jobs: Sales Executive  Jobs: Student SkillsCaster  jobs - junior event coordinator  Speed Coding 2011  Open Source Journal  Ticket Raffle  Agile Expert Series  Jobs: Sponsorship Development  jobs: Marketing & Sales Graduate Internship