# Talk:Vector-space

### From HaskellWiki

(Difference between revisions)

m (oops -- content meant for VersionHistor) |
|||

Line 1: | Line 1: | ||

− | == Version 0 == |
||

− | |||

− | === Version 0.2 === |
||

− | |||

− | ==== Version 0.2.0 ==== |
||

− | |||

− | * <hask>Data.Cross</hask>: generalized cross products |
||

− | * <hask>distribD</hask> now takes only one function argument and ties its own knot. |
||

− | * Renamed <hask>distribD</hask> to <hask>distrib</hask>. |
||

− | * Now there are two power series modules: <hask>Maclaurin</hask> (was <hask>Derivative</hask>) and <hask>Horner</hask>. Now <hask>Derivative</hask> is an indirection to one or the other, for testing. See Doug McIlroy's paper "The Music of Streams". |
||

− | * Factored <hask>Data.AdditiveGroup</hask> out of <hask>Data.VectorSpace</hask> |
||

− | * <hask>LinearMap</hask> has a new data representation for linear maps, to replace the simple function representation. Used in <hask>Data.Maclaurin</hask>. |
||

− | * <hask>Data.Derivative</hask> is now more than an indirection module. It re-wraps a power series type to provide different instances for <hask>VectorSpace</hask> and <hask>InnerSpace</hask>. |
||

− | * Added support for OpenGL vector types. In ghc-6.8.2, I get an error if a <hask>LMapDom</hask> instance is compiled in any module except for <hask>Data.LinearMap</hask>. Until this code is removed, the <code>vector-space</code> package depends on <code>OpenGL</code>. |
||

− | * Tests in <code>FieldTrip</code> show a dramatic slow-down, in contrast to my intended speed-up. |
||

− | * Andy Gill found at least one cause for the slow-down, which has been fixed. I think we have a long way to go. There appear to be lots of redundant dictionary construction. |
||

− | * <hask>Data.Horner</hask> removed temporarily, until re-sync'd with <hask>Data.Maclaurin</hask>. |
||

− | |||

− | ==== Version 0.1.3 ==== |
||

− | |||

− | * <hask>InnerSpace</hask> instance in <hask>Data.Derivative</hask> |
||

− | |||

− | ==== Version 0.1.2 ==== |
||

− | |||

− | * Renamed <hask>dId</hask> to <hask>idD</hask> and added <hask>fstD</hask> and <hask>sndD</hask>. |
||

− | * Renamed <hask>bilinearD</hask> to <hask>distribD</hask>. |
||

− | |||

− | ==== Version 0.1.1 ==== |
||

− | |||

− | * Added some missing haddock docs |
||

− | * Added a <hask>Complex</hask> instance of <hask>VectorSpace</hask> |
||

− | |||

− | ==== Version 0.1 ==== |
||

− | |||

− | * Changed representation of the derivative part of <hask>a :> b</hask>. Was <hask>a :> (a :-* b)</hask>. Now <hask>a :-* (a :> b)</hask>, which can also be written <hask>a :~> b</hask> (leaving the derivative's linearity implicit). The type <hask>a :~> b</hask> means infinitely differentiable functions from <hask>a</hask> to <hask>b</hask>. |
||

− | |||

− | === Version 0.0.1 === |
||

− | |||

− | * Changed repo location from darcs.haskell.org to http://code.haskell.org/vector-space. |
||

− | |||

− | * '''Oops''' - there's a serious mistake in the derivatives code in versions up through 0.0.1. I'm working on a solution. [Fixed in 0.1.] |