Pyro

A scripting language for people who enjoy the simpler things in life.

Version 0.8.22

Roadmap


All the functionality described here in the documentation has been implemented.

The standard library still needs a lot of work before Pyro can be considered a practical programming language. A regex library, a built-in SQLite implementation, and a networking library are currently at the top of the list.

Packaging

Packaging is on the medium-length finger.

I'm planning to add a build command to Pyro which will bundle up a script and all of its dependencies into a zip archive which it will append to a copy of the Pyro binary to create an easily-distributable single-file executable.

'Virtual environments' and friends are a hell which Pyro will attempt to avoid at all costs.

Concurrency

Adding support for concurrency is on the very long finger. I'm waiting until I decide if it's worth investing the significant time and effort needed to do it right.

If I do add suppprt for concurrency, the implementation is likely to be influnced by the Go model.

String Interpolation

Some day I'll get around to implementing string interpolation for double-quoted strings. The syntax will be:

"string with ${expr;fmt_spec} interpolations"

For example:

var foo = "123";
var bar = 456;
echo "${foo} and ${bar}"; # "123 and 456"

Or:

var foo = 123;
var bar = 456.789
echo "${foo;04i} and ${bar;.2f}"; # "0123 and 456.79"

Interpolation syntax will be backwards-compatible with the existing string-formatting syntax.