addressalign-toparrow-leftarrow-rightbackbellblockcalendarcameraccwcheckchevron-downchevron-leftchevron-rightchevron-small-downchevron-small-leftchevron-small-rightchevron-small-upchevron-upcircle-with-checkcircle-with-crosscircle-with-pluscrossdots-three-verticaleditemptyheartexporteye-with-lineeyefacebookfolderfullheartglobegmailgooglegroupshelp-with-circleimageimagesinstagramFill 1linklocation-pinm-swarmSearchmailmessagesminusmoremuplabelShape 3 + Rectangle 1ShapeoutlookpersonJoin Group on CardStartprice-ribbonShapeShapeShapeShapeImported LayersImported LayersImported Layersshieldstartickettrashtriangle-downtriangle-uptwitteruserwarningyahoo

Tomas Petricek on Domain Specific Languages in F#

When designing software, we often need to solve numerous instances of the
same problem. When designing user-interfaces, we need to describe the layout and interaction. When financial systems, we need to describe a wide range of financial contracts or, for example, recognize different patterns in price

Domain Specific Languages (DSLs) give us a way to solve such repeating
problems. By designing a composable functional library, we can build an
expressive language for describing our problems. Using the flexible F#
syntax, we can get code that even non-programmers can understand.

In this practically oriented talk, we'll develop a number of sample DSLs,
ending with realistic examples. We'll cover both basic principles of DSL
design as well as advanced tricks, such as using the F# 3.0 query syntax.

Tomas is a long-time F# enthusiast, Microsoft MVP and author of a book
Real-World Functional Programming ( He leads
functional programming and F# courses in London and New York and contributed to the development of F# as an intern and contractor at Microsoft Research in Cambridge. He is a PhD student at University of Cambridge, working on functional programming languages.

Join or login to comment.

  • Tomas P.

    For those who want to play with the code and look at the topics that I did not manage to cover, the materials (slides & code samples & Try F# links) from the talk are here:

    1 · February 27, 2013

  • Sparky

    Video Link:
    Reddit Link:
    - some upvotes may help spread the word about this group

    1 · February 26, 2013

  • Amit R.

    Thanks again, Tomas, for the talk. It was a great experience.

    Will the video recording be posted here? I would like to be able to review the time series example.

    February 26, 2013

    • Richard M.

      Most certainly. It usually takes about a week to get the video up.

      February 26, 2013

  • Andrew H C.

    It is a really great session. excellent job. thanks.

    February 26, 2013

  • Mike H.

    Excellent presentation. Very interesting and pitched at just the right level.

    February 26, 2013

  • Artem Z.

    Brilliant! I was too impressed! Thanks a lot Tomas! Waiting for your new book!

    February 25, 2013

  • Brendan G.

    Really cool! Especially the interactive graphic example.

    February 25, 2013

  • Geoffrey S. N.

    still stuck in Memphis. pity, I wanted to meet the 'Man'.

    February 25, 2013

  • Geert D.

    Meet, socialize and network tonight w/ Richard and many others at the meetup. It is one of the most popular (tech) events in NYC today!

    We built an easy-to browse/search page for/with all attendees:

    Happy networking! 

    (feedback appreciated ;)

    February 25, 2013

  • Leon T.

    Will try attending

    February 25, 2013

  • A former member
    A former member

    just realized I am away that day :-(

    February 12, 2013

  • paul m.

    paul mooney

    February 9, 2013

  • Amit R.

    I wish to bring a colleague from work who is very interested in F#.

    February 6, 2013

    • Richard M.

      Sure thing, just have them sign up so we can get their real name for security.

      February 7, 2013

  • Vlastimil A.

    I would love to come, but time-vise, I will not be able to make it ...
    Funnily enough, currently I am trying to use Smalltalk as DSL for writing cross platform mobile apps, but I got feeling, that F# fits better this task . I am quite eager to learn more about using F# for writing DSL...

    February 6, 2013

People in this
Meetup are also in:

Sign up

Meetup members, Log in

By clicking "Sign up" or "Sign up using Facebook", you confirm that you accept our Terms of Service & Privacy Policy