DEVS-ruby: a domain specific language for DEVS modeling and simulation (WIP)

This paper introduces a new Discrete EVent system Specification (DEVS) modeling and simulation library implemented in Ruby. Its syntactic sugar and features such as monkey patching, lexical closures, custom dispatch behavior and native plug-in API provides strong support to grow a Domain Specific Language (DSL). The library, by providing an internal DSL, allows formal specifications of DEVS models. The greatest strength of DEVS-Ruby lies in the extensibility of the DSL, allowing to meet each modeler's domain specific vocabulary and thus, to evolve from a general modeling and simulation formalism to a specialized tool.

[1]  Romain Franceschini,et al.  Agent-oriented approach based on discrete event systems (WIP) , 2013, SpringSim.

[2]  Raphaël Duboz,et al.  The Virtual Laboratory Environment - An operational framework for multi-modelling, simulation and analysis of complex dynamical systems , 2009, Simul. Model. Pract. Theory.

[3]  Ralph Johnson,et al.  design patterns elements of reusable object oriented software , 2019 .

[4]  Nuno Oliveira,et al.  Comparing general-purpose and domain-specific languages: An empirical study , 2010, Comput. Sci. Inf. Syst..

[5]  Juan de Lara,et al.  AToM3: A Tool for Multi-formalism and Meta-modelling , 2002, FASE.

[6]  Marjan Mernik,et al.  A preliminary study on various implementation approaches of domain-specific language , 2008, Inf. Softw. Technol..

[7]  Bernard P. Zeigler,et al.  DEVS modeling and simulation methodology with MS4 Me software tool , 2013, SpringSim.

[8]  Gabriel A. Wainer,et al.  Synchronization methods in parallel and distributed discrete-event simulation , 2013, Simul. Model. Pract. Theory.

[9]  Hans Vangheluwe,et al.  A Modeling and Simulation Package for Classic Hierarchical DEVS , 2002 .

[10]  Arie van Deursen,et al.  Domain-specific languages: an annotated bibliography , 2000, SIGP.

[11]  Tim Sheard,et al.  A software engineering experiment in software component generation , 1996, Proceedings of IEEE 18th International Conference on Software Engineering.

[12]  M Mernik,et al.  When and how to develop domain-specific languages , 2005, CSUR.

[13]  Janez Brest,et al.  Design and implementation of domain-specific language easytime , 2011, Comput. Lang. Syst. Struct..

[14]  Bernard P. Zeigler,et al.  Theory of modeling and simulation , 1976 .

[15]  Gabriel A. Wainer,et al.  Panel on grand challenges for modeling and simulation , 2012, Proceedings Title: Proceedings of the 2012 Winter Simulation Conference (WSC).

[16]  Saurabh Mittal,et al.  From domain specific languages to DEVS components: application to cognitive M&S , 2011, SpringSim.

[17]  Laurent Capocchi,et al.  DEVSimPy: A Collaborative Python Software for Modeling and Simulation of DEVS Systems , 2011, 2011 IEEE 20th International Workshops on Enabling Technologies: Infrastructure for Collaborative Enterprises.

[18]  Gabriel A. Wainer CD++: a toolkit to develop DEVS models , 2002, Softw. Pract. Exp..

[19]  Paul Hudak,et al.  Modular domain specific languages and tools , 1998, Proceedings. Fifth International Conference on Software Reuse (Cat. No.98TB100203).