A somewhat tricky concern is that that the extra functionality in question depends on a bunch of primitive definitions that lie below this in the package and the AD engine is used by a layer on top.
So moving it out would introduce a circular dependency back into the package or require me to stratify into two packages. When I looked into partitioning the package for another reason I found that I couldn't do so without introducing some orphan instances, so it'll probably be a tricky bit of surgery to split out. That said, it's probably still worth doing.
I also agree that I should be somewhat more pedantic about the name. =)
-Edward Kmett
On Fri, Apr 3, 2009 at 10:49 AM, Barak A. Pearlmutter
<barak@cs.nuim.ie> wrote:
I feel silly, did not even notice that! Thanks for the pointer.
Would be sensible to merge the functionalities; will try to import
functionality in Data.Ring.Module.AutomaticDifferentiation currently
missing from Numeric.FAD.
(One pedantic note: should really be named
Data.Ring.Module.AutomaticDifferentiation.Forward, since it is doing
forward-mode accumulation automatic differentiation; reverse is
an adjoint kettle of fish.)
--
Barak A. Pearlmutter
Hamilton Institute & Dept Comp Sci, NUI Maynooth, Co. Kildare, Ireland