21 Aug
                
                    2007
                
            
            
                21 Aug
                
                '07
                
            
            
            
        
    
                3:57 p.m.
            
        Steven Watanabe wrote:
2) function::function can throw
I don't know how boost::function is implemented, but it should be possible that it can only throw if the function object contains state. And I think that should seldom happen. If it doesn't contain state, it should be possible to fallback to a two-pointer representation, where function owns nothing (and thus doesn't need to allocate memory) and only references code and context. (that is to say, std::nested_function from the lambda proposal)