| 21 | |
| 22 | == Data Flow Fusion == |
| 23 | The following packages implement the fusion method described in [http://www.cse.unsw.edu.au/~benl/papers/flow/flow-Haskell2013.pdf Data Flow Fusion with Series Expressions in Haskell] |
| 24 | |
| 25 | || [http://hackage.haskell.org/package/repa-plugin repa-plugin] || GHC Plugin. || |
| 26 | || [http://hackage.haskell.org/package/repa-series repa-series] || User facing API for series expressions. || |
| 27 | || [http://hackage.haskell.org/package/ddc-core-flow ddc-core-flow] || Flow Fusion transform implemented on DDC Core || |
| 28 | |
| 29 | * The repa-plugin converts GHC Core to a fragment of DDC core named Disciple Core Flow. The plugin performs code transforms on the DDC side, then converts the resulting imperative code back to GHC Core. |
| 30 | * The user facing API for series expressions is embryonic and does not interface with the rest of Repa. As of 7/2013 we're actively working on this. |
| 31 | * Example Haskell source code is available here: [http://code.ouroborus.net/repa/repa-head/repa-plugin/test/] |
| 32 | * Example Disciple Core Flow code at various stages of the transform is available here: [http://code.ouroborus.net/ddc/ddc-stable/test/ddc-main/60-Flow/] |
| 33 | |