% IMPORTANT: The following is UTF-8 encoded.  This means that in the presence
% of non-ASCII characters, it will not work with BibTeX 0.99 or older.
% Instead, you should use an up-to-date BibTeX implementation like “bibtex8” or
% “biber”.

@MASTERSTHESIS{Perun:859742,
      author       = {Perun, Konstantin},
      title        = {{R}eengineering of {N}est{ML} with {P}ython},
      school       = {RWTH Aachen},
      type         = {Masterarbeit},
      reportid     = {FZJ-2019-00579},
      pages        = {104 p.},
      year         = {2018},
      note         = {Masterarbeit, RWTH Aachen, 2018},
      abstract     = {The NEST Modeling Language (NestML) is a domain-specific
                      modeling language developed with the aim to provide an easy
                      to use framework for the specification of executable NEST
                      simulator models. Since its introduction in the year 2012,
                      many concepts and requirements were integrated into the
                      existing toolchain, while the programming language Java as
                      the underlying platform remained almost untouched, making
                      maintenance and extension of the framework by
                      neuroscientists a disproportionately complex and costly
                      process. This circumstance contradicts the basic principle
                      of NestML, namely to provide a modular and easy to extend
                      modeling language for the neuroscientific domain.More than
                      $90\%$ of the overall costs arising during the development
                      and usage of software systems originate in the maintenance
                      phase, a circumstance which makes foresighted planning and
                      design of software systems a crucial part of a software's
                      life-cycle. While the effects of errors and bad design in
                      programming in the small can be mostly mitigated by using
                      appropriate concepts, e.g., data abstraction and
                      modularization, wrongheaded decisions concerning the overall
                      architecture or platform make the software's operation
                      costly in the long term and affect the development over its
                      whole life cycle. Here, reengineering and especially the
                      changing of the environment or platform of the existing
                      systems is the approach of choice given the fact, that
                      systems often use no longer supported components, contain
                      errors in the overall foundation or simply do not correspond
                      to the existing requirements.This thesis deals with the
                      reengineering of the NestML tools collection and its
                      migration to Python as a new target platform. Given Python's
                      popularity in the neuroscientific domain, a migration
                      benefits the usability as well as integration into existing
                      systems, facilitates extensions by neuroscientists and makes
                      usage of bridge technologies unnecessary. In order to
                      accelerate the development and ensure modularity as well as
                      maintainability of the reengineered software, the MontiCore
                      Language Workbench will be used and extended by Python as a
                      new target platform for code generation.},
      cin          = {JSC / JARA-HPC},
      cid          = {I:(DE-Juel1)JSC-20090406 / $I:(DE-82)080012_20140620$},
      pnm          = {511 - Computational Science and Mathematical Methods
                      (POF3-511) / NESTML - A modelling language for spiking
                      neuron and synapse models for NEST (NESTML-20141210) / HBP
                      SGA1 - Human Brain Project Specific Grant Agreement 1
                      (720270) / HBP SGA2 - Human Brain Project Specific Grant
                      Agreement 2 (785907)},
      pid          = {G:(DE-HGF)POF3-511 / G:(DE-Juel1)NESTML-20141210 /
                      G:(EU-Grant)720270 / G:(EU-Grant)785907},
      typ          = {PUB:(DE-HGF)19},
      url          = {https://juser.fz-juelich.de/record/859742},
}