This document outlines the current state and future plans for distributing and hosting ProXPL modules and standard libraries.
Currently, the ProXPL Standard Library (std.*) is embedded directly into the proxpl interpreter. This means:
- You do not need to download
stdmodules separately. - They are available globally via the
usestatement (e.g.,use std.io;). - The source code for these native modules resides in
src/stdlib/.
We plan to introduce a proper package registry (like npm or crates.io) for community packages.
- Registry URL:
https://registry.proxpl.org(Placeholder) - Tooling: The
prm(ProXPL Resource Manager) CLI will handle publishing and installing packages. - Hosting: Packages will be hosted as compressed archives (
.tar.gzor.zip).
- Publishing a Package:
prm login prm publish
- Installing a Package:
This will download the package to a local
prm install user/package
prox_modules/directory.
The std library will remain distributed with the interpreter to ensure a consistent core usage. However, entirely new standard modules might be distributed as separate packages in the future to keep the core lightweight.
For your current usage:
- Rebuild the Interpreter: Since we just added the native support for
std, you must rebuild the project using CMake. - Use the Standard Library: Simply
use std.io;in your scripts. No external hosting is needed yet. - Third-Party Libraries: For now, you can manually clone repositories into a
libs/folder andusethem by path.