【问题标题】:Package Manager for a custom language自定义语言的包管理器
【发布时间】:2020-11-24 04:58:51
【问题描述】:

我正在为我们的用例创建一种新的编程语言。我正在寻找一个已经可用的包管理器,我可以重用它来管理我的语言的依赖项。我打算使用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

我一直在探索以下问题的答案。如果您已经做过类似的事情,那将是非常棒且非常有帮助的。

  1. npm 可以与任何其他语言一起使用吗?
  2. 这是个好主意还是坏主意?
  3. npm 平台是否有任何限制?
  4. 是否还有其他专门设计为与语言无关的包管理器?还是我必须建立自己的 PM?

【问题讨论】:

    标签: node.js npm package package-managers


    【解决方案1】:

    经过更多研究,我发现了这个帖子 - Can I distribute non javascript files via npm?

    根据条款,似乎不允许将 npm 用于其他不兼容的语言。

    在功能上与 npm 命令行客户端不兼容的包。例如,“包”不能简单地是直接上传到注册表的 PNG 或 JPEG 图像、电影文件或文本文档。不允许将公共注册表用作通用数据库。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-07-19
      • 2012-01-09
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多