Skip to content

What is the extend of depending on javascript? #140

@Fuco1

Description

@Fuco1

I love Eask and the UX it provides and I wish it would get bigger adoption. I think one issue with that would be the javascript dependency.

Many people using Emacs do not use javascript and don't know how to install node (it's a bit of pain). Cask was using python which is almost on every computer and even that was a problem. Eventually, they got rid of the python dependency and it's now pure elisp.

I see that a lot of the javascript is used for parsing (yargs). If, hypothetically, we port yargs to elisp, would that be a lot more code left in JS?

There is https://github.com/rejeep/commander.el but it's very basic compared to yargs. We could either take it and improve it or start something from scratch.

Here's a little table of tools I've found in the space of package dev/management. All of them seem to be pretty dead except the first three.

| name     | stars | last commit  | # commits | pure elisp     | bin script     | url                                    |
|----------+-------+--------------+-----------+----------------+----------------+----------------------------------------|
| eask     |    62 | 2 hours ago  |      1710 | no, js         | bash, bat      | https://github.com/emacs-eask/cli      |
| cask     | 1200+ | 3 weeks ago  |      1178 | yes            | bash, bat      | https://github.com/cask/cask           |
| eldev    |   191 | Jan 21, 2023 |       523 | yes            | bash, bat, ps1 | https://github.com/doublep/eldev       |
| makem.sh |   123 | Dec 31, 2022 |       195 | no, bash       | no             | https://github.com/alphapapa/makem.sh  |
| keg.el   |    21 | Sep 23, 2022 |       323 | yes            | bat            | https://github.com/conao3/keg.el       |
| makel    |     0 | May 16, 2022 |        60 | no, bash, make | no             | https://github.com/DamienCassou/makel  |
| emake.el |    26 | Jun 9, 2019  |       255 | no, make       | no             | https://github.com/vermiculus/emake.el |

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions