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
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions