2014-11-29

DSL for reactive application implementation in C++





cpp_idioms.org



def_mi(Basic_mi_x) {
                                         step(sync_call_1);
                                         step(sync_call_2);
        sysd<----------------------------async_step(async_call_1) {
                sysd-------------------->ack(msg_ack_1, on_msg_ack_1);
                sysd-------------------->ack(msg_ack_2, on_msg_ack_2);
                
                sysd-------------------->ack_ex(msg_ack_4)
                {
                                         step(sync_call_nested_1);
                        sysx<------------async_step(nested_async_call_1)
                        {
                                sysx---->ack(nested_msg_ack_1, on_nested_msg_ack_1);
                                sysx---->ack(nested_msg_ack_2, on_nested_msg_ack_2);
                                sysx---->ack(msg_ack_1, on_nested_msg_ack_3);            
                        } async_step_end;
                } on_msg_ack_ex_end;
        }async_step_end;
} def_mi_end;


https://github.com/whunmr/reactive_cpp