This change keeps the lumi prefix on our CLI tools. As @lukehoban pointed out in person, as soon as we do pulumi/coconut#98, most people (other than compiler authors themselves) won't actually be typing the commands. And, furthermore, the commands aren't all that bad. Eventually I assume we'll want something like `lumi-js`, or `lumi-js-compiler`, so that binaries are discovered dynamically in a way that is extensible for future languages. We can tackle this during #98.
27 lines
1.1 KiB
Markdown
27 lines
1.1 KiB
Markdown
# lumi/lib
|
|
|
|
This directory contains some libraries that Lumi programs may depend upon.
|
|
|
|
## Overview
|
|
|
|
The Lumi standard library underneath `lumi/` is special in that every program will ultimately use it directly or
|
|
indirectly to create resources.
|
|
|
|
Similarly, `lumijs/` is the LumiJS compiler's runtime library, and so most LumiJS programs will on it.
|
|
|
|
Note that these are written in the Lumi subsets of the languages and therefore cannot perform I/O, etc.
|
|
|
|
## Installation and Usage
|
|
|
|
Eventually these packages will be published like any other NPM package. For now, they are consumed only in a
|
|
development capacity, and so there are some manual steps required to prepare a developer workspace.
|
|
|
|
For each library `<lib>` you wish to use, please see its `install.sh` script in its root directory. This performs
|
|
installation so that it can be used simply by adding a dependency to it.
|
|
|
|
We currently use NPM/Yarn symlinks to ease the developer workspace flow. As such, you will need to run:
|
|
|
|
* `yarn link <lib>`
|
|
|
|
In a project that intends to consume `<lib>` before actually using it. For example, `yarn link @lumi/lumi`.
|
|
|