HOME SCALA & F# JAVA .NET WEB GROOVY & GRAILS ANDROID & IOS NOSQL ARCHITECTURE AGILE & SCRUM AGILE DEVELOPER  
Haskell eXchange 2012: Simon Marlow on High performance concurrency
High performance concurrency
The Haskell community could be justifiably accused of navel-gazing, that is, spending inordinate amounts of time designing beautiful programming models and APIs, while spending relatively less time building applications that solve real problems.

In this talk I want to take the opposite approach: start from an application that we want to build---a simple concurrent chat server---and use that to inform some library design. Along the way we’ll learn useful techniques for building concurrent network applications, and show how the power of Software Transactional Memory can be brought to bear. Yet this application demonstrates some holes in the abstractions provided by Haskell as it stands, so I will show a simple layer called “async” that fills the gap and should be widely useful for concurrent programming.

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

Functional Programming eXchange 2013

Join us March 15th to learn and share common challenges and ideas across the different languages of the functional programming paradigm! Representing Scala, F#, Clojure, Haskell are:
  • Simon Peyton Jones takes you on an adventure with types
  • The latest in F# with Don Syme
  • What's David Pollak been up to developing Lift 3.0?
  • Robert Rees contrasts Clojure & Scala
  • ...and there's Robert Pickering, Nic Ferrier, Adam Granicz, Alain Frisch, and Paul Dale!
Interested? Join our Functional Programming eXchange on MARCH 15th 2013!

Register now to get your hands on the early bird price!

Well Typed's Fast Track to Haskell

Andreas Loh explains the foundations you need in order to become productive with Haskell. While you will touch on the theoretical foundations of the language, the focus is practice: you will obtain concrete advice on how to best use the power that Haskell puts into your hands, and how to design robust functional programmes in a principled and systematic way - the kind of things that are difficult to pick up by reading a book.

Upcoming course dates in 2013: February 4th-5th // April 8th-9th

Find out more on the course here.

Well Typed's Advanced Haskell

You will deepen your understanding and mastery of Haskell's more advanced concepts including Haskell's evaluation mechanism and how to debug performance problems. Learn what techniques and data structures to use for the most idiomatic and best performing code. We will discuss abstractions offered for both concurrency and high-level, deterministic parallel programming, enabled by Haskell's explicit side effects. An in-depth look at Haskell's type system will help you to understand how types can guide the user on how to correctly use complex code, and how to design your own libraries that can be used safely by others.

Upcoming course dates in 2013: February 6th-7th // April 10th-11th

Find out more on the course here.

Typesafe's Fast Track to Scala

This two day course, designed by Martin Odersky, the creator of the Scala programming language, and Heiko Seeberger, a recognised Scala expert, will give you an excellent grounding in Scala. Upon completion of the course you will be a competent user of Scala constructs in application code, know how to apply the functional programming style in Scala, use Scala tools and be confident to start using Scala in production applications.

Upcoming course dates in 2013: February 25th-26th // May 13th 14th

Find out more on the course here.

Typesafe's Advanced Scala

This two day course is aimed at developers with at least three months production experience with Scala. The course will teach you the advanced features of Scala to enable you to unleash the full power of this scalable language. You will also learn how to apply these to create well designed libraries of DSLs using proven practices.

Upcoming course dates in 2013: February 27th-28th // May 15th-16th

Find out more on the course here.

Russel Winder's Python Workshop

A four-day workshop authored and taught by Python expert Russel Winder. You'll learn both low-level details of Python as well as the idiomatic design approaches in Python. Through lectures, exercises, and discussions, Russel introduce Concurrency and Parallelism. After grokking these keys elements, delegates then learn about GUI's and explore Networking, XML processing, and Persistence when developing apps in Python. In the final stages of this workshop, you will be introduced to Python extensions and extension test, and introduced to Django, Python Web App frameworks and how to use dynamic techniques.

Upcoming course dates in 2013: February 11th-14th // April 22th-25th

Find out more on the course here.

Fast Track to F# with Tomas Petricek & Phil Trelford.

This two day Fast Track to F# course is designed to enable you to start using F# in production and get the most out of the functional and concurrent programming concepts. In this course, Tomas and Phil will take a look at a number of applications, and explore how F# simplifies domain modelling and testing. You'll then look at some F# features for asynchronous and concurrent programming and for data processing.

Upcoming course dates in 2013: March 13th-14th

Find out more on the course here.


ABOUT SIMON MARLOW
Simon Marlow is a developer at Microsoft Research in Cambridge. He has been one of the two lead developers of the Glasgow Haskell Compiler over most of its lifetime. Simon is responsible in particular for GHC's highly-regarded multicore runtime sys
More about Simon Marlow
PODCAST HIGH PERFORMANCE CONCURRENCY

This session took part at the Haskell eXchange 2012. You can view the other 12 podcasts here.
© Copyright 2003-2013, Skills Matter Ltd
About Us  Jobs  Find Us  Meeting & Training Rooms  Newsletter  Jobs: Sales Executive  Jobs: Student SkillsCaster  jobs - junior event coordinator  Open Source Journal  Jobs: Sponsorship Development  jobs: Marketing & Sales Graduate Internship  Jobs: HR Manager  jobs-Join Our Dev Team  DevOps Engineer  Front-End Engineer  Test Engineer