Run Python, Julia, and Rust Inside 'targets' Pipeline Steps

Adds target constructors that make it easy to use Python, Julia, and Rust inside a 'targets' pipeline using 'reticulate', 'JuliaCall', and 'rextendr'. Provides tar_target_py(), tar_target_jl(), and tar_target_rs() (with matching _raw() variants), each mirroring 'targets::tar_target()' and 'targets::tar_target_raw()'. Python and Julia steps run a script via a live interpreter with optional R pre- and post-scripts; Rust steps compile '#[extendr]' functions and call them from an R post-script. Results are returned either as converted R objects or as files written to disk (format = "file"). Dynamic branching, environment/version selection, a 'crew' controller for isolation, and the full set of tar_target_raw() arguments are supported.


Reference manual

It appears you don't have a PDF plugin for this browser. You can click here to download the reference manual.

install.packages("tarpolyglot")

0.2.1 by Pierre Solomon, a month ago


https://github.com/Pierre9344/tarpolyglot, https://pierre9344.github.io/tarpolyglot/


Report a bug at https://github.com/Pierre9344/tarpolyglot/issues


Browse source code at https://github.com/cran/tarpolyglot


Authors: Pierre Solomon [aut, cre] (ORCID:


Documentation:   PDF Manual  


MIT + file LICENSE license


Imports targets, reticulate, JuliaCall, crew, rextendr

Suggests knitr, rmarkdown, tarchetypes, testthat, withr

System requirements: The external language toolchains are optional and each is only required by its matching targets constructor: a Python installation for tar_target_py(), a Julia installation for tar_target_jl(), and a Rust toolchain with Cargo for tar_target_rs() (on Windows, the GNU toolchain, to match R's ABI). A pipeline that uses a single language needs only that language's toolchain, and a pipeline that uses none of these constructors needs no external toolchain at all.


See at CRAN