Adding Python support to Scala tooling
summary
Scala tooling now runs Python from the JVM using Scalapy embeds CPython via libpython with JNA and python-native-loader, and coursier plus Scala CLI set JVM properties so launch, package, bootstrap and publish work end-to-end (examples run numpy and matplotlib, plotting Corsier data that hits ~500,000 unique IPs/month). Repl use (ripple/ammonite) supports Python interop and a Jedi-based prototype gives ammonite + Jedi completions for Python objects, but reproducible Python packaging and IDE completions in Metals remain missing.
AI-written summary · about
chapters (14)
- 0:00Introduction
- 2:16Adding Python support
- 3:20Scalapi for interoperability
- 5:33Python in Scala CLI setup
- 8:13Python library demo
- 11:14Advanced data processing
- 13:00Python in package command
- 14:29Python in ripple and publish
- 15:56Python in Corsier commands
- 19:19Python completions in Ammonite
- 23:59Challenges and missing features
- 25:41Reproducibility issues
- 26:46Summary and future work
- 27:41Q&A
related talks
33mIntegrating Scala Java with your Python code
31mBringing the Jewels of the Python World to Scala with Spark
27mPython and the JVM - A Love Story
47mSupercharge your Java Applications with Python!
36mParens for Python
33mParens for Python
35mEffective Python and R collaboration
14mUnconference: Python Now! An OpenSearch world with/in/on Python
