CLI tools for Julia?

I was wondering if there is any CLI(command line interface) tools for julia. like npm for node, gem for ruby, pip for python.

Julia itself has a package manager and some macros in REPL (@which, @edit, etc.). But there is no command line interface for it. I think it would be more convenient for *nix users to have one (for shortcuts sometimes). I am thinking whether to write one my own (or this is already in Julia team’s plan?), but I’m not sure if this is really something you would like. What do you think?

And any suggestions on the name? Currently I thought is jem (Julia Environment Manager).

Ps. Pkg3 has a clicmd already. My question is answered in this issue, thanks your guys anyways.

You don’t think of Pkg as pip for python?

You can not use Pkg in a Linux shell…

You have to open REPL. But pip is something can be directly called in terminal. It’s not a big problem for Windows users I guess (even more convenient, cuz you don’t need to use windows terminal and Julia REPL is great ). But for those who get used to *nix terminals (like me), I just feels like to be more convenient to use Pkg and PkgDev and other staff directly from terminal CLIs. And build binary CLI will have faster start time (comparing to start a REPL)

And with a CLI program, we can extend it to support virtual environment for Julia in the future.

From terminal I usually use something like:

julia -e 'Pkg.add("MyPackage")'

which covers most of what I want. For multiple commands it makes sense to put them into script.jl and just run:

julia script.jl

Yet, I support the idea of virtual environments - there’s clear use case for different sets of installed packages on the same machine.

2 Likes