AntonioBerna / AntonioBerna/roma

Possible change of programming language 🚀

Open
#5 1 comment 0 reactions 1 assignee Claimed by @AntonioBerna View on GitHub
enhancement good first issue
Dominant language
Rust
Stars
2
Forks
0
PR merge metrics
No merged PRs in 30d

Description

The `Python` programming language is simple, powerful, and full of useful libraries. However, in the implementation of the `roma` software I had to "fight" with `pyinstaller` and the `install.sh` installation script (shell language) to be able to add the final executable to the `PATH`.

All of this causes a problem in code distribution. For this reason I thought it would be very useful to rewrite the `roma` tool in another programming language.

It should be remembered that the `roma` tool is developed solely on a single file, because `Python` is interpreted and not compiled, that it does not use external libraries downloadable with `pip` and is therefore very streamlined and versatile.

Therefore, thinking about it carefully, possible alternatives to the `Python` language could be:

- **Rust:** this language, thanks to the `cargo` package manager, and in particular to the `cargo install --path .` command, would allow me to use a single "all-in-one" language, definitively eliminating the script `install.sh`. As far as various system tasks are concerned, `Rust` is a very valid alternative.

- **Zig:** I've never written `Zig` code (is it time to do so?) so I don't know this language well. By doing a little research I saw that (like `Rust`) it was created to replace the bugs that we carry with us from `C` and `C++` by having a very simple language available just like `C`. This would certainly speed up the transition from `Python` compared to `Rust` which in general is much more complex as a language.

Contributor guide

No contributing guide indexed for this repository

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.