Practical Runtime Instrumentation of Software Languages: The Case of SciHook - Smart Modeling for software Research and Technology
Communication Dans Un Congrès Année : 2023

Practical Runtime Instrumentation of Software Languages: The Case of SciHook

Dorian Leroy
  • Fonction : Auteur
  • PersonId : 1107214
Benoît Lelandais
Marie-Pierre Oudot
  • Fonction : Auteur
  • PersonId : 1111668

Résumé

Software languages have pros and cons, and are usually chosen accordingly. In this context, it is common to involve different languages in the development of complex systems, each one specifically tailored for a given concern. However, these languages create de facto silos, and offer little support for interoperability with other languages, be it statically or at runtime. In this paper, we report on our experiment on extracting a relevant behavioral interface from an existing language, and using it to enable interoperability at runtime. In particular, we present a systematic approach to define the behavioral interface and we discuss the expertise required to define it. We illustrate our work on the case study of SciHook, a C++ library enabling the runtime instrumentation of scientific software in Python. We present how the proposed approach, combined with SciHook, enables interoperability between Python and a domain-specific language dedicated to numerical analysis, namely \NabLab, and discuss overhead at runtime.
Fichier principal
Vignette du fichier
SciHook___Tool_Paper (4).pdf (482.25 Ko) Télécharger le fichier
Origine Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-04249049 , version 1 (19-10-2023)

Licence

Identifiants

  • HAL Id : hal-04249049 , version 1

Citer

Dorian Leroy, Benoit Combemale, Benoît Lelandais, Marie-Pierre Oudot. Practical Runtime Instrumentation of Software Languages: The Case of SciHook. SLE 2023 - 16th ACM SIGPLAN International Conference on Software Language Engineering, ACM SIGPLAN: Special Interest Group on Programming Languages, Oct 2023, Cascais, Lisbon, Portugal. pp.1-6. ⟨hal-04249049⟩
431 Consultations
126 Téléchargements

Partager

More