Hi,
On jeu., 13 oct. 2022 at 01:07, jgart <[email protected]> wrote:
> `guix lint` in a python project would run mypy.
[...]
> `guix fmt` in a python project would run black.
Following your logic, it should be “guix style”.
> `guix repl` in a python project would run ptpython or some other configured
> repl.
[...]
[...]
> `guix run` in a python project could start a flask app listening on a
> particular port.
[...]
> The idea would be to have Guix provide a configurable CLI wrapper
> subcommand around all language ecosystem developer tools. In other words
> it's the same Guixy thesis applied to developer tooling. I think this
> could take the Guix developer experience to the next level.
I think it is a bad idea to mix generic Guix commands with per specific
project ones. For instance, considering a Python project, then if I run
“guix repl”, it launches some Python interpreter, but what if I really
want to start Guix REPL. Instead, it would appears a better design to
have:
guix project lint
guix project style
guix project repl
guix project test
guix project run
Well, for it is worth, I often deal with some multi-languages projects,
and what I prefer is to explicitly run the per language tool, e.g.,
guixify ipython
launching some Python interpreter. I personally prefer an explicit
reference of the tools.
*guixify is currently a tiny Bash script similar to the one pasted here
[1]. But we could imagine a Guile script. :-)
1: <https://yhetil.org/guix/[email protected]>
Cheers,
simon