https://kotlinlang.org logo
Title
a

altavir

08/18/2022, 9:55 AM
Look, here is proof-of concept gradle-like API for declaring dependencies for Jupyter Kernel: https://github.com/Kotlin/kotlin-jupyter/pull/382. I think I would like something like this for general scripting as well. The aim is to unify the way dependencies are loaded in different environments. There is a problem though. Regular script does not have staged compilation, so either one needs to use gradle-like hacks with ahead-of-time block evaluation, or a separate file with dependencies.
i

ilya.chernikov

08/26/2022, 7:00 AM
I do not think that a single approach to the dependencies are suitable for general scripting (depending on what you're calling "general scripting" though). Staged compilation could be an overkill for some script types. It makes sense though to ask the author (@Ilya Muradyan) to extract it to somewhat generally applicable library, so the script definition authors can reuse it for their script types. And compactness of the annotations-based approach could be beneficial in many scenarios too. BTW, scripting API has some support for staged compilation, but it mostly unused and not really battle-tested.
a

altavir

08/26/2022, 7:02 AM
I agree. But I think a long-term discussion about that would be beneficial. I do not like how it works in gradle, but in Jupyter it seems to work nice.