# The fpnla package

This package defines a framework for linear algebra operations, allowing:

Definition of multiple instances of BLAS and LAPACK operations.

Definition of multiple representations of vectors and matrices.

Arbitrary combination of strategies and structure representations.

Type-safe manipulation of context information associated to each strategy.

Definition of specialized strategies for a given representation.

The framework is based on BLAS (http://www.netlib.org/blas/) and LAPACK (http://www.netlib.org/lapack/) linear algebra libraries, as these are well known libraries in the area. For this reason the design of the framework is strongly oriented to these libraries. Anyway it is possible to easily define operations not considered in these libraries and still maintaining the above properties.

Many representations and strategy definitions (from which many are parallel) can be found in the `fpnla-examples`

(http://hackage.haskell.org/package/fpnla-examples) package.

Details about the package may be found in the paper: Towards a functional run-time for dense NLA domain. In Proceedings of the 2Nd ACM SIGPLAN Workshop on Functional High-performance Computing. New York, NY, USA. ACM, pages 85-96 (http://www.fing.edu.uy/~mviera/papers/fhpc13.pdf).

## Properties

Versions | 0.1, 0.1.1 |
---|---|

Dependencies | base (==4.*) [details] |

License | BSD3 |

Copyright | Universidad de la República, Uruguay |

Author | Mauro Blanco, Pablo Perdomo, Pablo Ezzatti, Alberto Pardo, Marcos Viera |

Maintainer | Pablo Perdomo <pperdomo@fing.edu.uy>, Mauro Blanco <mblanco@fing.edu.uy> |

Category | Math |

Uploaded | Tue Feb 4 00:15:16 UTC 2014 by mblanco |

Distributions | NixOS:0.1.1 |

Downloads | 569 total (9 in the last 30 days) |

Rating | (no votes yet) [estimated by rule of succession] |

Your Rating | |

Status | Docs available [build log] Successful builds reported [all 1 reports] Hackage Matrix CI |

## Downloads

- fpnla-0.1.1.tar.gz [browse] (Cabal source package)
- Package description (included in the package)