Official ZPE/YASS documentationWhat is ZPE?
ZPE or the ZPE Programming Environment (previously the Zenith Parsing Engine) is an all-in-one parser, compiler, interpreter and runtime for the YASS or Yet Another Scripting Syntax language.
There are four cornerstone elements of ZPE, namely, the runtime and compiler; the web parser; the graphical user interface; and the server and client (collectively known as ZPE Extensions for Networking or ZEN). These components are bundled in all versions of ZPE.
The main purposes behind ZPE/YASS are to clean up the inconsistent syntaxes of other scripting languages such as PHP in a fast, cross-compatible package that can be used on Windows, Mac and Linux computers to perform operations for users with ease. It is also to provide an excellent array of core functions that can be accessed very easily from a command line.
The underpinning foundation that makes both ZPE and YASS possible is the Zenith Parsing Engine (the formerly ZenithParser) - a project that has been under development since it's advent in 2015 as a replacement for the BlackRabbit Script parser. This parser is around 5 times faster than it's predecessor and doesn't rely on regular expressions to the same level and is also designed to be reusable. It also reduces backtracking over the original version of ZPE in May 2015. The parser is used across a variety of different applications built into the ZPE package such as the JSON and CSV parsers.
YASS is a dynamic, weakly typed programming language. It also has the TYPO system that has static runtime typing as an optional feature to ensure type-correctness. Dynamic type checking can slow down the runtime, thus to increase its performance, it is done when code is compiled.
ZPE is designed for both educational use in the sense that it is designed to be an easy to learn language and for general purpose use, with many features including the built-in YASS web parser, a YASS web parser, an interactive interpreter and a built-in graphical interface.
ZPE also features many other things like a client-server model where a server can process commands on behalf of a client or the client can remotely control the server (for example, I shutdown my PC from my Apple Watch using ZPE/YASS).
As well as providing all of that there is ZPE Online, a service that allows you to create programs and store them on cloud storage. You can then share your code with the wider community as I do with the standard library for ZPE.
You can see some example code in my standard library that is available here. The standard library can be compiled and including in any program very easily, or you can simply use ZULE to download a compiled version.
To download ZPE, click here.