We present Dessert, an open-source framework for process-based discrete-event simulation, designed to retain the simplicity and flexibility of SimPy, within the strongly-typed .NET environment. Both frameworks build domain-specific languages, for simulation writing, by using existing constructs in a novel way and providing a rich library of classes. By exploiting .NET generic types and iterators, we have successfully retained, and in few places even enhanced, the lean syntax and usability of the original library, without sacrificing static type checking. Static type-safety, in addition to being a very important property by itself, facilitates runtime code optimizations; indeed, benchmarks show that our Dessert outperforms SimPy.
Dessert, an Open-Source .NET Framework for Process-Based Discrete-Event Simulation
LAGORIO, GIOVANNI;
2014-01-01
Abstract
We present Dessert, an open-source framework for process-based discrete-event simulation, designed to retain the simplicity and flexibility of SimPy, within the strongly-typed .NET environment. Both frameworks build domain-specific languages, for simulation writing, by using existing constructs in a novel way and providing a rich library of classes. By exploiting .NET generic types and iterators, we have successfully retained, and in few places even enhanced, the lean syntax and usability of the original library, without sacrificing static type checking. Static type-safety, in addition to being a very important property by itself, facilitates runtime code optimizations; indeed, benchmarks show that our Dessert outperforms SimPy.I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.