Subject: Re: [boost] Interest check: memoization
From: James Porter (porterj_at_[hidden])
Date: 2009-01-26 17:55:00
Mathias Gaunard wrote:
> Well, bind has an unspecified return type, and that never bothered anyone.
> If you don't have auto, just don't make it a named variable.
Since you generally want to store the memoizer somewhere (it's basically
a container), this isn't always appropriate. However, I realized that
for monomorphic function objects, I can just deduce the signature of
operator() so that the memoizer's type is simply
> Can't you just do something like
I'm intentionally avoiding (type-) polymorphic function objects (or
rather, I'm restricting them to one overload), since knowing the exact
function signature allows for better type-safety and, as Steven
mentioned, eliminates the chance of creating spurious maps to store the
I think the added restriction in terms of polymorphic function objects
is worth the added safety with monomorphic types.
If you are interested in looking at the new code, I have updated source
available here: http://www.teamboxel.com/misc/memoizer-0.2.tar.gz .
There's obviously a lot of work left to do, but hopefully this will help
resolve some of your questions regarding function objects.
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk