Not when there''s multiple points of callbacks - the STL prefers a single overloaded operator(); but the BGL (Boost Graph Library), for instance, uses multiple (named) callback functions in its so-called algorithm visitors (as opposed to functors). So instead of just operator(T), you have:
discover_vertex(Vertex u, const Graph&)
finish_vertex(Vertex u, const Graph&)
discover_edge(Edge v, const Graph&)
etc...
It''s the GoF Template Method, except it''s implemented using functor like callbacks, instead of virtual functions. (Trade run-time flexibility for speed).
Once you have a graph library in hand, an AI template library seems like the next step to me - alas I have insufficient AI expertise to design such a library. If there''s interest on the board, I''ll open a sourceforge project for the idea, and I can provide template design advice and testing. (I know the basics about AI, neural nets, state-machines, fuzzy logic, genetic algorithms, decision trees, etc... but have little experience implementing them and solving problems with them).
quote:
Ergo, why shouldn''t you?
It''s a massive undertaking that requires working practical and theoretical knowledge of AI algorithms
and you need to grok C++ template programming. And there''s virtually no reward, except the acknowledgement for seeding the existence of the peer-reviewed, open-source, Artificial Intelligence Template Library; currently a void in the template library maelstrom
- The trade-off between price and quality does not exist in Japan. Rather, the idea that high quality brings on cost reduction is widely accepted.-- Tajima & Matsubara