Practical Runtime Instrumentation of Software Languages: The Case of SciHook - Fiabilité des Systèmes et des Logiciels
Conference Papers Year : 2023

Practical Runtime Instrumentation of Software Languages: The Case of SciHook

Dorian Leroy
  • Function : Author
  • PersonId : 1107214
Benoît Lelandais
Marie-Pierre Oudot
  • Function : Author
  • PersonId : 1111668

Abstract

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
Origin Files produced by the author(s)

Dates and versions

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

Licence

Identifiers

  • HAL Id : hal-04249049 , version 1

Cite

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⟩
376 View
106 Download

Share

More