The ap-reflect package

This is a package candidate release! Here you can preview how this package release will appear once published to the main package index (which can be accomplished via the 'maintain' link below). Please note that once a package has been published to the main package index it cannot be undone! Please consult the package uploading documentation for more information.

[maintain]

The library provides a simple reflection technique, substituting functions like fmap and <*> with reflection-aware analogues. This library can be used with simple-reflect package.


[Skip to ReadMe]

Properties

Versions0.1.0.0, 0.2, 0.2, 0.3
Change logCHANGELOG.md
Dependenciesbase (>=4.7 && <5) [details]
LicenseBSD3
AuthorOleg Baev
Maintainerodbaev@yandex.ru
CategoryDebug
Home pagehttps://github.com/cmc-msu-ai/ap-reflect
Bug trackerhttps://github.com/cmc-msu-ai/ap-reflect/issues
Source repositoryhead: git clone https://github.com/cmc-msu-ai/ap-reflect.git
UploadedWed Feb 4 15:38:39 UTC 2015 by NickolayKudasov

Modules

[Index]

Downloads

Maintainers' corner

For package maintainers and hackage trustees


Readme for ap-reflect-0.2

[back to package description]

ap-reflect

Build Status

Partial evaluation reflection a la simple-reflect.

Installation

You can install the ap-reflect from Hackage:

$ cabal install ap-reflect

or directly from the repository:

$ git clone https://github.com/cmc-msu-ai/ap-reflect
$ cd ap-reflect
$ cabal install

For some possibilities of using this library you may need to install simple-reflect. It is available from Hackage. Install it, by typing:

cabal install simple-reflect

Documentation

Haddock documentation is available at http://cmc-msu-ai.github.io/ap-reflect/doc/html/ap-reflect/

Usage

For example:

let (.+) = makeBinOp "+" (+)
mapM_ print . reductions $ (.+) -$- Just a -*- Just b

Result:

(+) <$> Just a <*> Just b
Just (a +) <*> Just b
Just (a + b)

You can find another examples of using this library at https://github.com/cmc-msu-ai/ap-reflect/tree/master/examples

Contributors

Contribution

Contact me (Oleg Baev): odbaev@yandex.ru