Я создаю новый язык программирования c для наших вариантов использования. И я ищу уже доступный менеджер пакетов, который я могу повторно использовать для управления зависимостями моего языка. Я планирую использовать npm в качестве диспетчера пакетов, потому что он довольно популярен и прост в использовании.
Например, пакет, содержащий новый язык, может выглядеть так:
pkgA/
helloworld.me # my language
package.json
И с установленными зависимостями:
pkgA/
node_modules/
pkgB/
hithere.me
package.json
helloworld.me
package.json
package-lock.json
В коде язык и его компилятор будут иметь свой собственный способ разрешения ссылок.
# helloworld.me
> "hello world"
с использованием зависимости
# helloworld.me
import pkgB.hithere
> "hello world"
< hithere
Я искал ответы на следующие вопросы. Было бы здорово и очень полезно, если бы вы уже сделали что-то подобное.
- Можно ли
npm
использовать с любым другим языком? - Это хорошая или плохая идея?
- Существуют ли какие-либо ограничения, которые может иметь платформа
npm
? - Существуют ли какие-либо другие менеджеры пакетов, специально разработанные как языковые агности c? или мне нужно создать свой собственный PM?