Tomas Petricek's blog

Writing about practical F# coding and programming language research

New features and improvements in Deedle v1.0

As Howard Mansell already announced on the BlueMountain Tech blog, we have officially released the "1.0" version of Deedle. In case you have not heard of Deedle yet, it is a .NET library for interactive data analysis and exploration. Deedle works great with both C# and F#. It provides two main data structures: series for working with data and time series and frame for working with collections of series (think CSV files, data tables etc.)

The great thing about Deedle is that it has been becoming a foundational library that makes it possible to integrate a wide range of diverse data-science components. For example, the R type provider works well with Deedle and so does F# Charting. We've been also working on integrating all of these into a single package called FsLab, but more about that next time!

In this blog post, I'll have a quick look at a couple of new features in Deedle (and corresponding R type provider release). Howard's announcement has a more detailed list, but I just want to give a couple of examples and briefly comment on performance improvemens we did.

Published: Tuesday, 27 May 2014, 3:41 PM
Tags: f#, deedle, data science
Read the complete article

Recent articles from my blog

Welcome fsharpWorks & F# events

Tuesday, 20 May 2014, 1:47 PM

If you are following me or the #fsharp hashtag on Twitter,you might have already come across a link to fsharpWorks or one of theupcoming F# events organized by fsharpWorks. So, what is fsharpWorks and what are we planningfor you?

Stateful computations in F# with update monads

Tuesday, 13 May 2014, 3:41 PM

Most discussions about monads, even in F#, start by looking at the well-known monads for handling state (reader, writer and state). In a recent paper, Danel Ahman and Tarmo Uustalu revisit these and build a nicer abstraction called update monads. I implemented the idea in F# and I find that update monads are an excellent fit for F# computation expressions!

What can programming language research learn from the philosophy of science?

Thursday, 10 April 2014, 5:16 PM

This article looks at programming language research from the perspective of philosophy of science. We look at classic theories such as Popper's falsificationism and Feyerabend's theoretical anarchism and then look what can programming language research learn from the history.

BREAKING: Open-source C# 6.0 released

Tuesday, 1 April 2014, 2:24 PM

At last, the long wait is fianlly over! After 4 years of waiting, the fully managed implementation of the C# compiler codenamed Roslyn has been finally released.

Find older blog articles here


I'm a computer scientist who enjoys combining theory and practice. On the theory side, I'm finishing PhD at the University of Cambridge, working on type systems. On the practical side, I write about F#, run trainings and provide occasional consulting.

Trainings, writing & consulting

I'm a frequent speaker at F# and .NET events, founding member of the F# Foundation author of C# and F# book, numerous articles and a StackOverflow addict. I have been Microsoft C# MVP since 2004 and I used F# since early Microsoft Research versions.

Have you seen the F# testimonials and are you thinking about learning and using F# of functional techniques?

Research & teaching

I'm interested in a wide range of topics in programming languages, ranging from category theory, comonads, reactive and distributed programming to scientific computing and working with data.

I like working on topics inspired by practical problems. I created a web framework for F# that inspired commercial projects like WebSharper and my experimental F# extensions can be tested live on

When the time permits, I enjoy traveling. The calendar shows a new picture each month since 2005, 2006, 2007, 2008, 2009, 2010, 2011, 2012, 2013. See the first photos of 2014.