Lots of Function Transformations

The last couple of days I’ve been doing a lot of experimenting with a package for function rewriting: foolbox. I am doing some function transformations in both pmatch and tailr and they look very much alike, so I figured I should collect the shared functionality in a separate package. After that, I found a work-around for the need for function rewriting in pmatch, so it isn’t that necessary any longer, but playing around with foolbox has been fun and taught me a lot of tricks for metaprogramming that I hadn’t thought about before.

I have written documentation on foolbox’s homepage so I won’t repeat it here but refer you to

I am pretty sure that you can implement the function transformations with invariants and pre- and post-conditions. I also think that some static type checking should be possible (for a subset of functions, of course, R is way too dynamic a language to try to handle all cases).

I was thinking of making a release later this week or sometime next week and then return to working on pmatch and tailr. I might play around it a bit more first, though. In any case, I would love if anyone else would take it for a spin and help me debug it.

Author: Thomas Mailund

My name is Thomas Mailund and I am a research associate professor at the Bioinformatics Research Center, Uni Aarhus. Before this I did a postdoc at the Dept of Statistics, Uni Oxford, and got my PhD from the Dept of Computer Science, Uni Aarhus.

Leave a Reply