diff --git a/content/blog/new-release-16-may-2026.mdx b/content/blog/new-release-16-may-2026.mdx new file mode 100644 index 0000000..1a05f81 --- /dev/null +++ b/content/blog/new-release-16-may-2026.mdx @@ -0,0 +1,31 @@ +--- +title: A new release of Mist in may 2026 (0.0.2-alpha0), what's new +author: Klesti Selimaj +date: 2026-05-16 +--- + +Greetings, i've been pulled two all nighters in a row for this, i've added some essential features that will refine mist. + +## publicity +Changed the keyword from `public` to `pub` +Mist now supports many types of pub(s) like rust: +- `pub` +- `pub(crate)` +- `pub(super)` +- `pub(some::path)` + +And `use` and `mod` also have exporting: +`pub use ;` +`pub mod utils;` + +## Errors +While the pest errors are unchanged, we now have unexpected statement errors which may seem unimpressive, except for the fact that i refactored 1000-2000 lines of code + +https://github.com/mist-go/mist/pull/29 + +https://github.com/mist-go/mist/pull/28 + +Both of these are improving the parser architecture in many ways, both for errors and extending the graph. + +## recovery +Error recovery is one of the most important steps for extending Mist's toolchain, it allows LSPs to work, and multiple syntax errors to appear, this is half of what needed that many lines to work on. diff --git a/content/docs/components/functions.mdx b/content/docs/components/functions.mdx index 975cb0b..449deeb 100644 --- a/content/docs/components/functions.mdx +++ b/content/docs/components/functions.mdx @@ -30,6 +30,13 @@ pub i32 get_version() { } ``` +You can also point to a specific point (super or crate, or a custom path): +```mist +pub(crate) i32 get_version() { + return 1; +} +``` + ## Mutable Parameters Parameters follow Rust’s ownership rules but use Mist’s local variable syntax. Use `mut` to allow a function to modify its local binding of a value. diff --git a/content/docs/index.mdx b/content/docs/index.mdx index e57b7a3..dc64003 100644 --- a/content/docs/index.mdx +++ b/content/docs/index.mdx @@ -11,7 +11,7 @@ Mist is currently distributed as a Cargo crate. To get started, you'll need to h Run the following command to install the Mist compiler: ```bash title="Terminal" -cargo install mist-lang@0.0.1-alpha2 +cargo install mist-lang@0.0.2-alpha0 ``` Once the installation finishes, verify it by checking the version: @@ -72,26 +72,29 @@ void main() { ### Build and Run -To turn your Mist code into an executable, use the `build` command: +To turn your Mist code into an executable, use the `run` command: ```bash title="Terminal" -mist build -``` - -Once the build is successful, you can run your program using standard Cargo commands: - -```bash title="Terminal" -cargo run +mist run ``` > **Pro Tip:** If you encounter any rust errors, head to the build directory and analyze the output, if you see anything unusual in the output, report the issue at https://github.com/mist-go/mist +Or if you only want to transpile to rust + +```bash title="Terminal" +mist transpile +``` + + --- ## Command Reference -| Command | Description | -| -------------- | ---------------------------------------------------------------- | -| `mist build` | Compiles your `.mist` files into Rust code in the output folder. | -| `mist version` | Displays the current version of the Mist compiler. | -| `mist help` | Stuck? Use this to see all available commands and options. | +| Command | Description | +| ---------------- | ----------------------------------------------- | +| `mist run` | Runs the project in the current directory | +| `mist build` | builds the project in the current directory | +| `mist transpile` | transpiles the project in the current directory | +| `mist version` | prints the compiler version | +| `mist help` | prints this message |