Jamie Balfour

Welcome to my personal website.

Find out more about me, my personal projects, reviews, courses and much more here.

Jamie Balfour'sPersonal blog

ZPE 1.12.9 is one of the most significant updates to ZPE since it started. It completes the major project of making all internal data types as instances of ZPEType, rather than relying on lower-level and abstract data types. This update is so significant because it now means higher performance due to less casting, better safety and ensuring that non-ZPEType values can no longer be injected into the program. 

Further to this, new syntax features include the use of colon terminated conditions and for parameters:

while $x < 100:
print($x)
end while

Tuples are another feature of ZPE 1.12.9; they are different from class instances and objects entirely in that they are defined once but follow such a structure throughout their lifetime:

$x = (string, number, number)
$x = ("Hello world", 13, 7)

The new REQUIRE_EXPLICIT_VARIABLE_DECLARATION property and the requires_explicit_declaration directive both enforce that the user defines variables before they are used. This is a significant feature, which might become the default option in ZPE later on.

Finally, ZPE's editor has undergone a bit of overhaul. The icon is scaled down to look much smarter and suitable in internal windows and alert popups, whilst on macOS the logo used around the application is the logo found on the Dock. The scrollbars have been enhanced, too. And toggling dark mode now retains the position you were at when you toggled it. The final significant thing is that the console now runs in a separate process and can be stopped in between running a program, meaning if an infinite loop starts in the code, it will not affect the main editor. This will also come to my SQARL editor, which has also received a considerable number of improvements, including an icon at last.

ZPE 1.12.9 is now available to download from the usual place.

Powered by DASH 2.0