
Hello, I just hacked together something I've been talking about a while ago on that mailing list. It's a program that looks for functions given a set of input/outputs. Example session 1: brauner@worf:~$ haltavista 2 2 4 <EOF> Prelude (*) Prelude (+) Prelude (^) Example session 2 (refining previous search): brauner@worf:~$ haltavista 2 2 4 1 2 3 <EOF> Prelude (+) Example session 3 (higher-order functions): brauner@worf:~$ haltavista (+1) (+2) (1,1) (2,3) <EOF> Data.Graph.Inductive.Query.Monad (><) Under the hood, uses: - hint for type inference; - hoogle to get a list of candidate functions; - hint for testing. Hoogle calling facility has been copy-pasted (and later modified) from the Yi project. It's availaible on github (http://github.com/polux/haltavista) and I plan to release it on hackage as soon as I catch stack overflows that occur during testing using hint. So far I didn't manage to do it, even by catching asynchronous exceptions. Every suggestion/help is welcome. Also, if I got something wrong with the licences (Yi uses GPL-2 and code is copy-pasted, Hint BSD3 and is linked, Hoogle is called as an external process, haltavista is GPL-3 for now) please tell me. Paul