ADPfusion combines stream-fusion (using the stream interface provided by the vector library) and type-level programming to provide highly efficient dynamic programming (DP) combinators.
You can write DP programs in a style similar to Algebraic Dynamic Programming (ADP) (Giegerich et al.), meaning symbolically without explicit indices. The symbolic operators provide a number of advantages: - take care of extracting the correct cell information from data structures (DP matrices) - no more index problems, the grammars are completely free of index calculations by the user - complex operators can be written with "next step" behaviour dependent on other information calculated during runtime - monadic interface - works with pure/monadic, boxed/unboxed, ... data structures - speed close to optimized C (between 1.8x - 3x slower currently -- compared to well-optimized C-code) Hackage: http://hackage.haskell.org/package/ADPfusion 1st example program: http://hackage.haskell.org/package/Nussinov78 Many thanks to Roman Leshchinskiy! Viele Gruesse, Christian Hoener zu Siederdissen ADP: http://bibiserv.techfak.uni-bielefeld.de/adp/adpapp.html
pgpnpVxONRgP1.pgp
Description: PGP signature
_______________________________________________ Biohaskell mailing list Biohaskell@biohaskell.org http://malde.org/cgi-bin/mailman/listinfo/biohaskell