@@ -207,27 +207,6 @@ an implementation of language integrated SQL queries using the LINQ/SQLMetal lib
207207sketch two other applications: the execution of data-parallel quoted F# programs on a GPU via the
208208Accelerator libraries, and dynamic native-code compilation via LINQ.
209209
210- ### [ The F# Computation Expression Zoo] ( http://tomasp.net/academic/papers/computation-zoo/ )
211-
212- Tomas Petricek and Don Syme
213- _ In proceedings of PADL 2014_
214-
215- Many computations can be structured using abstract computation types such as monoids, monad
216- transformers or applicative functors. Functional programmers use those abstractions directly while
217- main-stream languages often integrate concrete instances as language features - e.g. generators in
218- Python or asynchronous computations in C# 5.0. The question is, is there a sweet spot between
219- convenient, hardwired language features, and an inconvenient but flexible libraries?
220-
221- F# computation expressions answer this question in the affirmative. Unlike the do notation in Haskell,
222- computation expressions are not tied to a single kind of abstraction. They support a wide range of
223- computations, depending on what operations are available. They also provide greater syntactic
224- flexibility leading to a more intuitive syntax, without resorting to full macro-based meta-programming.
225-
226- We show that computation expressions can structure well-known computations including monoidal list
227- comprehensions, monadic parsers, applicative formlets and asynchronous sequences based on the list
228- monad transformer. We also present typing rules for computation expressions that are capable of
229- capturing all these applications.
230-
231210--------------
232211
233212## Parallel and Distributed programming
0 commit comments