Jacob Kreindl, Manuel Rigger, Hanspeter Mössenböck,
"Debugging Native Extensions of Dynamic Languages"
: Proceeding ManLang '18 Proceedings of the 15th International Conference on Managed Languages & Runtimes Article No. 12, ACM New York, NY, USA, 9-2018, ISBN: 978-1-4503-6424-9
Debugging Native Extensions of Dynamic Languages
Sprache des Titels:
Proceeding ManLang '18 Proceedings of the 15th International Conference on Managed Languages & Runtimes Article No. 12
Many dynamic programming languages such as Ruby and Python
enable developers to use so called native extensions, code imple-
mented in typically statically compiled languages like C and C++.
However, debuggers for these dynamic languages usually lack sup-
port for also debugging these native extensions. GraalVM can ex-
ecute programs implemented in various dynamic programming
languages and, by using the LLVM-IR interpreter Sulong, also their
native extensions. We added support for source-level debugging to
Sulong based on GraalVM?s debugging framework by associating
run-time debug information from the LLVM-IR level to the original
program code. As a result, developers can now use GraalVM to
debug source code written in multiple LLVM-based programming
languages as well as programs implemented in various dynamic
languages that invoke it in a common debugger front-end.