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
SCALA & F# PODCASTS
John Stevenson:(perfect? clojure environment), Perfect Clojure
John Stevenson : 16th May 2012
View Podcast: (perfect? clojure environment),
Phil Trelford:F# for Commodities Trading, F# Commodities Trading
Phil Trelford : 14th May 2012
View Podcast: F# for Commodities Trading,
Tomas Petricek:F# Domain Specific Languages for Finance , F# DSL
Tomas Petricek : 14th May 2012
View Podcast: F# Domain Specific Languages for Finance ,
Jan Machacek:Polyglot applications in Java and Spring, Polyglot apps in Java and Spring
Jan Machacek : 3rd May 2012
View Podcast: Polyglot applications in Java and Spring,
Various Speakers:Parkbench Panel Discussion with Pizza & drinks, Parkbench
Various Speakers : 3rd May 2012
View Podcast: Parkbench Panel Discussion with Pizza & drinks,
Viktor Klang:Future Scala Futures, Future Scala Futures
Viktor Klang : 3rd May 2012
View Podcast: Future Scala Futures,
Michael Delaney:Elevate, Elevate
Michael Delaney : 23rd Apr 2012
View Podcast: Elevate,
Martin Odersky:Scala: An Introduction, Scala Intro
Martin Odersky : 19th Apr 2012
View Podcast: Scala: An Introduction,
Chris Agmen-Smith:Pettswood - Executable Documentation for Scala Acceptance Testing, Pettswood for Scala Acceptance Testing
Chris Agmen-Smith : 17th Apr 2012
View Podcast: Pettswood - Executable Documentation for Scala Acceptance Testing,
Jonas Boner:Concurrency - Akka 2: Distributed by Design, Akka 2: Distributed by Design
Jonas Boner : 17th Apr 2012
View Podcast: Concurrency - Akka 2: Distributed by Design,
Aaron Masino:Research Hospital Data ETL with DataExpres, Research Hospital Data ETL with DataExpr
Aaron Masino : 17th Apr 2012
View Podcast: Research Hospital Data ETL with DataExpres,
Bill Venners:Pragmatic testing Nirvana with ScalaTest, ScalaMock and SubCut, ScalaTest, ScalaMock & SubCut
Bill Venners : 17th Apr 2012
View Podcast: Pragmatic testing Nirvana with ScalaTest, ScalaMock and SubCut,
 :SubScript: Extending Scala with the Algebra of Communicating Processes , SubScript: Extending Scala
: 17th Apr 2012
View Podcast: SubScript: Extending Scala with the Algebra of Communicating Processes ,
Paul Butcher:Generating code within a compiler plugin - how ScalaMock does it, Generating code with ScalaMock
Paul Butcher : 17th Apr 2012
View Podcast: Generating code within a compiler plugin - how ScalaMock does it,
Rúnar Bjarnason:Stackless Scala With Free Monads, Stackless Scala
Rúnar Bjarnason : 17th Apr 2012
View Podcast: Stackless Scala With Free Monads,
OTHER SCALA & F# EVENTS
Progressive .NET Tutorials 2012, Progressive .NET Tutorials 2012
CONFERENCE (3 DAYS)
London, Tuesday, May 29th BOOK NOW!
2012 Progressive F# Tutorials NYC, 2012 Progressive F# Tutorials NYC
CONFERENCE (2 DAYS)
New York City, Tuesday, June 5th BOOK NOW!
The London Python Group:A Python code review of multilango.com, The London Python Group
FREE EVENT: Python code review
London, Wednesday, June 6th
London Scala Users' Group:Experiences from a Real-World Scala Project, London Scala Users' Group
FREE EVENT: Real-World Scala Project
London, Wednesday, June 13th
GeekOut 2012, GeekOut 2012
CONFERENCE (2 DAYS)
Tallinn, Thursday, June 14th BOOK NOW!
Trond Bjerkestrand:Typesafe's Fast Track to Scala,  Typesafe's Fast Track to Scala
2 DAY COURSE. Featuring Trond Bjerkestrand
London, Monday, June 18th
QCon New York 2012, QCon New York 2012
CONFERENCE (3 DAYS)
New York, Monday, June 18th BOOK NOW!
Heiko Seeberger:Typesafe's Advanced Scala,  Typesafe's Advanced Scala
2 DAY COURSE. Featuring Heiko Seeberger
London, Wednesday, June 20th
© 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