To use this website fully, you first need to accept the use of cookies. By agreeing to the use of cookies you consent to the use of functional cookies. For more information read this page.

ZPEZPE Programming Environment


ZPE is a compiler and interpreter in one. It's designed to make it easier to learn to program. It uses the YASS (or Yet Another Simple Syntax) language which makes it similar to both PHP and JavaScript as well as other languages.

Time to learn. In no time at all.

The main focus of the ZPE Programming Environment and YASS is usability. It focuses on a clean language that requires very little thought and accepts typing errors within the compiler.

YASS is an easy-to-learn programming language that takes inspiration from many other languages out there.

Right from the console.

Thanks to the way in which the ZPE Programming Environment is written, users can access any particular feature of the compiled runtime with a single line entered into the command line.

This allows users to compile, interpret, analyse or print their code in an abstract tree without even needing to run the executable.

Efficient. Clean. Flexible.

The ZPE Programming Environment is efficient and clean - generating only the output you request and in the most efficient way possible.

YASS is flexibily written to make unnecessary symbols and tags optional whilst adding extra ones to make the language read more like English.

YASS is small and compact to make it easier to share scripts.

Lots to do.

The ZPE Programming Environment includes 140+ built in methods that can be directly called from YASS language.

Between all of these methods, nearly every possible base has been covered, ensuring a sound foundation for your program.

Cross platform.

The ZPE Programming Environment and it's associated language have been written in the platform independent Java programming language. This means that programs compiled on a Mac will work on a Linux or Windows machine and vice versa.

Easy to learn.

The following is an example of YASS syntax. Can you guess what it does?

$names = ["John", "Jack", "Jamie"]
for each ($names as $name)
	print ($name)
end for


ZPE has it's own plugin system that allows you to expand both the language syntax itself and the functionality of the language. With the plugin system you can easily produce native Java plugins to give more functionality to the language.

Get started right away.

The ZPE package includes many modes that make it really easy to get started. There is even a built-in graphical editor that can be used to develop and test apps with YASS.

Well established.

YASS takes inspiration from the best of many other languages, so learning it will be like something you may have come across before.

Inspiration for YASS syntax was drawn from VB.NET, PHP, Python, Java, C, SML amongst many other languages.

Free. Forever.

The ZPE Programming Environment and the accompanying YASS are free forever. This includes updates and patches, as well as the open source libraries that will be released in the future.

It's completely free forever. Not a penny. Not a cent. Not a sen. Not a paisa. Free.

Learn more

You can read more about the ZPE Programming Environment, YASS and any associated materials on this page or you can download the latest version of it here. Alternatively, for Windows users you can download the full .exe file for it from here. Lastly, if you want the nightly build version (cross-platform JAR file) click here.

*Comparisons were made by running a time zpe -r 'for($i = 0; $i < 10000; $i++) print ($i) end for' command on a macOS and Linux machine and taking the sys time for each. The command was run on the same computers running on the latest macOS, with a Core i7 4850HQ, 16GB of memory, a 512GB NVMe SSD. Note that the latest version now needs to run with the zpe -i 'for($i = 0; $i < 10000; $i++) print ($i) end for' command due to changes to the runtime.