Friday, 22 September 2017

Struct tuples

The F# Journal just published an article:
"Almost 10 years ago our own HLVM project demonstrated the potential of struct tuples, showcasing huge performance improvements mainly by alleviating stress on the garbage collector. The latest version of F# in Visual Studio 2017 introduces a new feature called struct tuples that allows tuples to be unboxed. This article takes a look at the characteristics of struct tuples in all of the contexts where one might expect observable differences: generic functions, keys in dictionaries, generation survivors, write barriers and multicore paralellism..."
If you subscribe to the F# Journal then can read this article here otherwise subscribe to the The F# Journal today to read this article and many more!

Thursday, 21 September 2017

Automating a human compiler: part 2

The F# Journal just published an article:
"This series of articles describe our most successful F# project to date. Years later, the solution we implemented in F# still has billions of dollars worth of trade going through it every year and continues to save our client around a million dollars per month. This article describes the first stage of our project: the rapid development of a demo version of our graphical domain-specific language, a business rules engine..."
If you subscribe to the F# Journal then can read this article here otherwise subscribe to the The F# Journal today to read this article and many more!

Wednesday, 20 September 2017

Automating a human compiler: part 1

The F# Journal just published an article:
"This series of articles describe our most successful F# project to date. Years later, the solution we implemented in F# still has billions of dollars worth of trade going through it every year and continues to save our client around a million dollars per month. This article provides an overview of the problem we found and the characteristics of our solution that made it so successful..."
If you subscribe to the F# Journal then can read this article here otherwise subscribe to the The F# Journal today to read this article and many more!

Thursday, 18 May 2017

Random access lists

The F# Journal just published an article:

"Ordinary F# lists are singly-linked immutable lists that permit constant-time prepend and decapitate but counting the length and random access are linear time. This article looks at an alternative data structure, a form of random access list, that is based upon a tree rather than a list in order to provide logarithmic complexity for many operations..."

If you subscribe to the F# Journal then can read this article here otherwise subscribe to the The F# Journal today to read this article and many more!

Monday, 1 May 2017

F# vs OCaml performance: the Boyer benchmark

The F# Journal just published an article:

"The OCaml compiler contains a benchmark suite that includes several different heavily-symbolic benchmarks. Symbolic programs are the one use case that OCaml was designed for and has been optimised at for over two decades. This article ports OCaml's Boyer benchmark to F#, looks at optimisations and concludes that the parallelized F# solution is 3x faster than the original OCaml..."

If you subscribe to the F# Journal then can read this article here otherwise subscribe to the The F# Journal today to read this article and many more!

Thursday, 30 March 2017

Balanced search trees: weight-balanced trees

The F# Journal just published an article:

"This article continues our series about balanced search trees by covering weight balanced trees. This data structure can be remarkably simple and performance is good enough for many applications, making it an ideal pedagogical example that can be used to teach general tree-based techniques. Furthermore, this data structure allows some operations to be implemented asymptotically more efficiently than most other search trees including the AVL trees used inside the F# `Set` and `Map` modules..."

If you subscribe to the F# Journal then can read this article here otherwise subscribe to the The F# Journal today to read this article and many more!

Monday, 27 March 2017

Balanced search trees: AA trees

The F# Journal just published an article:

"This is the second article in a series about balanced search trees. This article takes a look at a purely functional implementation of the AA tree data structure as described by Arne Andersson in the paper "Balanced Search Trees Made Simple". In particular, the brevity of our implementation is compared to that of the full red-black tree detailed in the previous article. In this case we test not only the externally-visible effects of the collection but also its invariants..."

If you subscribe to the F# Journal then can read this article here otherwise subscribe to the The F# Journal today to read this article and many more!