[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Guix Goals: One Hackable Developer Tool To Rule Them All
From: |
zimoun |
Subject: |
Re: Guix Goals: One Hackable Developer Tool To Rule Them All |
Date: |
Thu, 13 Oct 2022 15:03:21 +0200 |
Hi,
On jeu., 13 oct. 2022 at 01:07, jgart <jgart@dismail.de> 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/86wn9puqj7.fsf@gmail.com>
Cheers,
simon