This page is not created by, affiliated with, or supported by Slack Technologies, Inc.
2021-09-06
Channels
- # babashka (31)
- # beginners (108)
- # calva (6)
- # clj-kondo (62)
- # cljsrn (5)
- # clojure (29)
- # clojure-australia (2)
- # clojure-europe (17)
- # clojure-nl (2)
- # clojure-spec (5)
- # clojure-uk (7)
- # clojurescript (25)
- # code-reviews (1)
- # datomic (13)
- # deps-new (7)
- # editors (1)
- # emacs (31)
- # figwheel-main (3)
- # garden (4)
- # graalvm (18)
- # helix (10)
- # improve-getting-started (12)
- # jobs (3)
- # lsp (20)
- # malli (12)
- # off-topic (7)
- # polylith (30)
- # re-frame (10)
- # remote-jobs (2)
- # shadow-cljs (18)
- # spacemacs (5)
- # sql (11)
- # tools-deps (10)
- # vim (9)
- # xtdb (1)
I have a Clojure app where I want to be able to use the GraalVM polyglot facilities to run Python/JS code, both in development (via Leiningen) and in native builds (via native-image). Is this doable, and if so, how would I go about it?
great 🙂
any idea which dependencies I should add to my project to be able to do stuff like this in dev?
okay, makes sense
will do!
phew okay that was a lot easier than I had anticipated — very cool
BTW, any idea how good/trustworthy GraalVM's sandboxing for polyglot languages is? I'd like to get something akin to SCI (no access to the rest of the machine or program state, except via a small set of functions that I define) but for these other languages. Possible?
(it seems like the 'exposing functions to guest language' part is doable via https://www.graalvm.org/reference-manual/embed-languages/#access-java-from-guest-languages — not sure about the sandboxing part though...)
https://www.graalvm.org/reference-manual/embed-languages/#access-restrictions > The Polyglot API by default restricts access to certain critical functionality, such as file I/O. These restrictions can be lifted entirely by setting `allowAllAccess` to `true`. > Note: The access restrictions are currently only supported with JavaScript.
maybe a better place to ask about this is in the graalvm slack, link is on the topic
seems like there's no proper sandboxing support :(
okay I'll ask there, thanks