
"Alexander Nasonov" <alnsn@yandex.ru> writes:
Jonathan Turkanis wrote:
It looks very interesting. Since there is no documentation, it would be helpful if you would give a brief description of what the library does and how it might be used.
See for example fsm.cpp here: http://aspn.activestate.com/ASPN/Mail/Message/boost/2185183
or http://aspn.activestate.com/ASPN/Mail/Message/2483684
Unfortunately, there is no documentation yet. I hope MPL interface can help understanding it. Basically, you turn *definition* defined below into MPL Associative Sequence with simple typedef overloads::set<definition>. It will behave similar to mpl::set<int(int,int), float(int,float)>. Note that without typeof deref can't be defined (workaround exists).
struct definition { int operator()(id<1> , int a, int b) const { return a + b; } float operator()(id<2> , int a, float b) const { return a + b; } };
Alexander, If you want to convince people that your idea is useful it would be a good idea to make it easier for them to understand why. While I understand everything you've written above, I still don't know why I'd want this, and I'm not prepared to reverse-engineer an example FSM implementation to find out. -- Dave Abrahams Boost Consulting www.boost-consulting.com