Jamie Balfour

Welcome to my personal website.

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

Official ZPE/YASS documentationZPE Git commits

2024-12-21 09:03:31
Jamie Balfour
Merge remote-tracking branch 'origin/main' # Conflicts: # build.number # build/zpe.jar # src/files/build.txt # src/files/changelog.txt
2024-12-21 09:03:17
Jamie Balfour
Fixed an issue in which ZPE would add jamiebalfour/org to all structures when compiling only. ZPEC is now running and does indeed improve performance.
2024-12-20 23:42:13
Jamie Balfour
Fixed an issue with the syntax compilation of declare. E.g. declare x as string = "Hi" wouldn't work. This is likely down to the introduction of the new built-in typing system.
2024-12-20 23:42:13
Jamie Balfour
Fixed an issue with the syntax compilation of declare. E.g. declare x as string = "Hi" wouldn't work. This is likely down to the introduction of the new built-in typing system.
2024-12-14 09:19:35
Jamie Balfour
Fixed an issue in which the list_cache_values function did not work. Fixed an issue in which included libraries would not be added to a list.
2024-12-10 21:58:33
Jamie Balfour
Added the ZPE Performance Enhanced Cache (ZPEC)
2024-11-22 14:05:39
Jamie Balfour
Built the latest build for GitHub.
2024-11-19 07:07:09
Jamie Balfour
Fixed the changelog to reflect recent changes.
2024-11-18 22:32:04
Jamie Balfour
Fixed a serious bug that meant that unless the data used with not/! was a number it would always return null
2024-11-18 06:55:35
Jamie Balfour
Updated the introduction that needed a few updates and removed the -h info option.
2024-11-17 22:02:08
Jamie Balfour
Updated the minor version number to 12.
2024-11-17 21:56:47
Jamie Balfour
Updated the minor version number to 11.
2024-11-17 17:34:44
Jamie Balfour
Added a fix that seems to have fixed bug #35 ("Fix excess bracketed calls").
2024-11-17 17:22:22
Jamie Balfour
Removed reference to {string} and replaced it with the word string in some aliases.
2024-11-17 14:53:02
Jamie Balfour
Internal aliases are now stored in a properties file, much like constants, and can be changed at any time.
2024-11-16 13:43:57
Jamie Balfour
Added a few more HTML entities to covert to manual information.
2024-11-16 13:13:11
Jamie Balfour
Function manual information tidy up fixing spelling mistakes, updating the information and ensuring parameters are obvious. Further, the new ZPEKit function converts manual information to HTML that can then be used to generate documentation.
2024-11-16 13:11:54
Jamie Balfour
Function manual information tidy up fixing spelling mistakes, updating the information and ensuring parameters are obvious. Further, the new ZPEKit function converts manual information to HTML that can then be used to generate documentation.
2024-11-08 16:48:36
Jamie Balfour
Preparation for ZPE 1.12.11's release.
2024-10-26 13:07:35
Jamie Balfour
Documentation added and some code tidied up.
2024-10-15 13:00:49
Jamie Balfour
A couple of changes were made to names across ZPE and the HelperFunctions so these have been reflected across the program.
2024-10-15 12:45:47
Jamie Balfour
Fixed an issue in which exiting the interactive help in the interactive interpreter threw a warning.
2024-10-15 12:32:56
Jamie Balfour
Updated the changelog with new changes.
2024-10-15 12:30:26
Jamie Balfour
Redesigned the ZPE class to only contain core features, added the new ZPEMain class which is the main interface to running the application from the command line.
2024-10-15 11:25:13
Jamie Balfour
CompileDetails is no longer a public facing library. Instead, the details of the compile are now inlined.
2024-10-15 09:39:28
Jamie Balfour
Cleaned byte codes for associative arrays, formally known now as maps.
2024-10-13 22:23:57
Jamie Balfour
Added the Pair object support and fixed an issue with the Calculator object due to the changes made to ZPE recently.
2024-10-13 20:20:20
Jamie Balfour
Updated the BCrypt.java file to no longer use C-style array declarations. Added the new PairObject (this will be released soon).
2024-10-06 09:04:51
Jamie Balfour
More improvements to the editor.
2024-10-05 14:12:03
Jamie Balfour
Passing variables to the runtime without being $-bound is now supported
2024-10-05 13:52:12
Jamie Balfour
Added inline tooltips to the code editor.
2024-10-05 10:01:59
Jamie Balfour
Updated the build number.
2024-10-05 09:31:30
Jamie Balfour
Cleaned up the editor code and updated to the next version details for Tartan Turtle.
2024-10-05 09:20:38
Jamie Balfour
Changed the keyword for the function type to fn to avoid ambiguity.
2024-10-04 06:32:34
Jamie Balfour
Fixed the updater and version numbers to use ZPEStrings instead of native strings to ensure they work correctly.
2024-10-04 06:28:38
Jamie Balfour
Fixed the build number not appearing.
2024-10-04 06:11:48
Jamie Balfour
Updated the changelog.
2024-10-03 20:18:16
Jamie Balfour
Changed a few names around the editor and changed the width of the ZPE Macro Interface Editor.
2024-10-03 20:14:11
Jamie Balfour
Added the publicly accessibly ZPEMacroInterface editor.
2024-09-29 21:20:20
Jamie Balfour
Fixed an issue in which pressing enter after the auto complete menu would insert the last autocomplete option.
2024-09-29 21:16:55
Jamie Balfour
Improved autocomplete appearance.
2024-09-28 22:51:47
Jamie Balfour
Added autocomplete suggestions to the editor.
2024-09-28 15:39:54
Jamie Balfour
Changed references to MultilineComment to ZPEComment
2024-09-28 15:31:46
Jamie Balfour
Added \r\n into the delimiter characters.
2024-09-28 15:22:13
Jamie Balfour
Replaced some strings across the program that were passed where ZPEStrings should have been instead.
2024-09-28 12:49:15
Jamie Balfour
ZPENumbers, ZPEStrings, ZPEBooleans now correctly add to ZPEMaps without conversion.
2024-09-28 11:19:01
Jamie Balfour
Fixed the bug in which for loops would not properly evaluate single values and improved for loop structure
2024-09-27 21:59:52
Jamie Balfour
Blocked Java errors from appearing in the editor console.
2024-09-27 20:28:18
Jamie Balfour
Changed the way multiple return values works when passing as a parameter so that it is converted to a ZPEList.
2024-09-27 14:00:21
Jamie Balfour
Updated the changelog.
2024-09-27 13:57:34
Jamie Balfour
Added support for multiple returns from a function. This works similarly to the destructuring assignment: function multiReturn() return 1, 3, 5 end function ($x, $y, $z) = multiReturn()
2024-09-15 11:46:03
Jamie Balfour
Added a more detailed Apache web handler class.
2024-09-13 22:25:43
Jamie Balfour
Added initial test for Apache web handling.
2024-09-08 11:08:34
Jamie Balfour
Formatted the copyright.txt file better.
2024-09-08 11:04:13
Jamie Balfour
Formatted the copyright.txt file better.
2024-09-08 10:57:53
Jamie Balfour
Updated the copyright information to include the year 2024.
2024-09-08 10:57:15
Jamie Balfour
Added the --copyright ZAC
2024-09-08 10:54:45
Jamie Balfour
Added license information to the distributable JAR.
2024-09-08 10:40:17
Jamie Balfour
Updated the changelog.
2024-09-08 10:25:57
Jamie Balfour
Fixed the issue in which tuples returned null when a copy was made.
2024-09-08 09:47:46
Jamie Balfour
Fixed an issue with tuples that prevents them from working after the latest changes.
2024-09-07 22:16:09
Jamie Balfour
More code tidying.
2024-09-07 22:05:28
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2024-09-07 22:05:21
Jamie Balfour
More code tidying.
2024-09-07 15:28:59
Jamie Balfour
Update README.md
2024-09-07 14:38:58
Jamie Balfour
Moved the VelocityWebServerModule back into the src folder to ensure it gets compiled.
2024-09-07 14:19:07
Jamie Balfour
Removed the two web-based functions and moved them into a new ResponseObject object, which is passed back.
2024-09-07 13:37:46
Jamie Balfour
Updated the version number, date and name for the next version
2024-09-01 09:20:52
Jamie Balfour
Updated the changelog with new changes.
2024-09-01 09:18:24
Jamie Balfour
ZPEMaps now require ZPETypes through and through.
2024-08-31 21:58:50
Jamie Balfour
Removed the compiler methods to throw errors and have inlined the throwing of these errors within the actual code where it resides.
2024-08-27 06:22:18
Jamie Balfour
Added the new process object, add the run_process predefined function.
2024-08-27 06:07:13
Jamie Balfour
Added the new option to the ZPEServer that allows a file to be prepended so that all YASS that is run is prepended with this content.
2024-08-25 21:17:32
Jamie Balfour
Added a new -h functions feature that runs all functions mainMethods so that the return null in all instances. This allows reflection checking to be carried out without actually having to write a program to do run each function - something that could be dangerous and cumbersome.
2024-08-25 09:59:41
Jamie Balfour
Limited the number of recent files in the GUI to 7.
2024-08-25 01:21:33
Jamie Balfour
Change the way the icon is handled across the GUI mode, having a smaller icon for alert boxes etc. and the main icon being the original high resolution version.
2024-08-24 23:58:22
Jamie Balfour
Added the executable file into the config option on -h. This also works for ZPEX.
2024-08-24 22:36:12
Jamie Balfour
The getJarExecPath method now returns the name of the JAR in it too.
2024-08-24 22:35:42
Jamie Balfour
When a file is opened, the caret is moved to the top. The bold, font size and font family options now resort to keeping the caret position.
2024-08-24 17:26:06
Jamie Balfour
Updated the changelog with the latest changes.
2024-08-24 14:04:50
Jamie Balfour
Improved the recent files menu in the editor.
2024-08-24 13:27:53
Jamie Balfour
Fixed the issue in the editor that makes the scroll position after toggling dark mode the very last character rather than the one the user was on before the change.
2024-08-24 09:42:40
Jamie Balfour
The console menu now moves to the macOS Menubar.
2024-08-24 09:17:58
Jamie Balfour
Added the new YASS Unfold window.
2024-08-24 08:46:55
Jamie Balfour
Added support for the BreakPointHalt again which had disappeared somehow.
2024-08-24 08:46:17
Jamie Balfour
Detached the console from the GUI so that it can be halted during execution.
2024-08-23 19:26:45
Jamie Balfour
Fixed an issue that occurred because of the new data type requirements when loading data as JSON format.
2024-08-23 17:54:21
Jamie Balfour
Moved the code from FunctionActions to the ZPERuntimeEnvironment.
2024-08-23 13:43:42
Jamie Balfour
Changed the way that ELSE statements compile within an IF statement as this was causing issues within the transpilers.
2024-08-23 13:32:09
Jamie Balfour
Changed the way that ELSE statements compile within an IF statement as this was causing issues within the transpilers.
2024-08-22 21:25:47
Jamie Balfour
ZPELists inherit Java Lists again.
2024-08-22 21:04:49
Jamie Balfour
Fixed an issue in which the open command did not work on a SequentialFileObject as it was internally named open_file when it should just have been open.
2024-08-22 20:01:29
Jamie Balfour
Added Recent files to the editor
2024-08-21 12:34:43
Jamie Balfour
Updated the code to match the latest version of my HelperFunction library.
2024-08-21 11:44:33
Jamie Balfour
Updated the code to match the latest version of my HelperFunction library.
2024-08-21 06:40:03
Jamie Balfour
Cleaned code of unnecessary code.
2024-08-20 17:58:37
Jamie Balfour
Remove all printStackTrace references throughout the program that were being used in testing.
2024-08-19 21:13:26
Jamie Balfour
Tidied the FunctionActions and suppressed type warnings (these have since been verified).
2024-08-19 21:09:01
Jamie Balfour
Improved negation and inversion in ZPE, and further strengthened the use of the ZPEType throughout the FunctionActions file.
2024-08-19 19:26:53
Jamie Balfour
The current ZPEFunction is passed to plugin functions.
2024-08-19 19:13:39
Jamie Balfour
Updated the changelog.
2024-08-19 19:13:00
Jamie Balfour
Changed ZPEObjectNativeMethods to pass ZPEType parameters, further consolidating the ZPEType throughout the language.
2024-08-19 19:12:20
Jamie Balfour
Changed ZPEObjectNativeMethods to pass ZPEType parameters, further consolidating the ZPEType throughout the language.
2024-08-19 17:09:39
Jamie Balfour
Fixed an issue in which ZPEMaps did not store keys correctly. The fix, although is only temporary in its current state, is use the toString method to convert them to unique strings.
2024-08-19 06:53:03
Jamie Balfour
LAME now evaluates ZPEBooleans correctly. Updated the changelog with the latest changes.
2024-08-19 06:22:56
Jamie Balfour
To the best of my knowledge, everything now returns a ZPEType across the whole ZPE platform. This will be tested over the next few months and further updates and deeper integration will occur with future releases.
2024-08-18 21:43:25
Jamie Balfour
ZPE has almost moved to being entirely self-typed. This brings a ton of built-in security.
2024-08-17 23:24:07
Jamie Balfour
Fixed the issue in which a ZPEMap would receive a ZPENumber or ZPEString and tie the key to the instance of them rather than their value.
2024-08-17 21:20:52
Jamie Balfour
Updated the changelog as there was error that was noticed from an old version.
2024-08-17 21:13:03
Jamie Balfour
More predefined functions now also use the ZPENumber instead of built-in Java types.
2024-08-17 20:06:07
Jamie Balfour
Finally added support for ZPENumbers, now ZPE only has one type that is defined on a Java level, the boolean. Now the main focus is on setting all the predefined function return types to ZPETypes
2024-08-17 12:07:57
Jamie Balfour
Removed the global RunningInstance.PERMISSION_LEVEL property and it has been moved to the ZPERuntimeEnvironment to manage its own permission levels.
2024-08-17 11:05:17
Jamie Balfour
Removed USE_OLD_LAME property from the RunningInstance as it was no longer used.
2024-08-17 11:03:25
Jamie Balfour
Removed SAFETY mode from the RunningInstance as it was no longer used.
2024-08-17 11:02:46
Jamie Balfour
Removed the NEW_LINE property from the RunningInstance and replaced it across the program with System.lineSeparator().
2024-08-17 08:31:02
Jamie Balfour
It's taken this long, but I've finally made the ZPEEntity methods that are overwritten abstract.
2024-08-17 08:04:52
Jamie Balfour
It's taken this long, but I've finally made the ZPEEntity methods that are overwritten abstract.
2024-08-17 00:35:02
Jamie Balfour
Added the new REQUIRE_EXPLICIT_VARIABLE_DECLARATION property and directive that enable the compiler to use the ability to enforce variable declaration before their use.
2024-08-15 06:15:59
Jamie Balfour
Updated the description of the std_in function.
2024-08-13 20:55:55
Jamie Balfour
Added support for the -i ZAC in the ZPERuntimeDaemon.
2024-08-11 20:30:39
Jamie Balfour
Updated the changelog to reflect new updates.
2024-08-11 13:07:05
Jamie Balfour
Added additional error checking when accessing tuples.
2024-08-11 13:05:12
Jamie Balfour
Made a change to the ID of the tuple and how it is passed over.
2024-08-11 12:52:37
Jamie Balfour
Added support for setting a value in a tuple.
2024-08-11 12:47:14
Jamie Balfour
Added the new tuple data type.
2024-08-10 10:48:56
Jamie Balfour
Changed the info.txt file to feature a better description of the latest version of ZPE.
2024-08-10 09:59:44
Jamie Balfour
General tidy up of code.
2024-08-10 09:54:26
Jamie Balfour
Moved back from using ZPENumbers in LAME.
2024-08-10 09:53:35
Jamie Balfour
The LightService.java file has now been removed, the new RuntimeDaemon.java does what the Light Service did but better, improving performance from the ZPE Servant.
2024-08-06 10:35:29
Jamie Balfour
Code tidied up, and the ZPEEntity is now abstract, as it should have been a long time ago.
2024-08-06 09:52:28
Jamie Balfour
Removed the ZPELinkedBuiltInStructure.java, PluginClassLoader.java and RuntimeClassLoader.java classes as they were no longer needed.
2024-08-05 17:13:36
Jamie Balfour
Several new across the package changes have been made to improve reliability and the quality of the code within the project.
2024-08-02 11:30:35
Jamie Balfour
Everything is now in a src folder to ensure consistency with other packages.
2024-08-02 11:28:19
Jamie Balfour
Everything is now in a src folder to ensure consistency with other packages.
2024-08-01 10:26:23
Jamie Balfour
Final release of ZPE 1.12.8.
2024-07-30 10:10:42
Jamie Balfour
Although the protected scope has been available for a long time, it is now also a keyword that can be specified for conciseness
2024-07-29 18:55:10
Jamie Balfour
Added a TODO message to remind me to review the code added just now.
2024-07-29 18:50:05
Jamie Balfour
Fixed an issue in which constructors would not always be called when an object was created
2024-07-29 17:49:44
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2024-07-29 17:49:20
Jamie Balfour
There are now much stricter rules for the Exception object to be thrown and the throw_error function is now only able to throw Exception objects.
2024-07-29 17:49:20
Jamie Balfour
There is now much stricter rules for the Exception object to be thrown and the throw_error function is now only able to throw Exception objects.
2024-07-29 16:31:26
Jamie Balfour
Fixed an issue in the ZenithParsingEngine that meant that words were not returned when it saw a quote mark after being toggled.
2024-07-29 15:21:20
Jamie Balfour
Added support for namespaces with static methods
2024-07-29 14:55:48
Jamie Balfour
Added static methods and static method calls.
2024-07-29 09:24:03
Jamie Balfour
Anonymous functions in the short form, i.e. () => {}, now support $-unbound variables.
2024-07-28 21:11:57
Jamie Balfour
Updated the ZPERuntimeException to be the basis of all runtime-based exceptions. Added support for declaring a return type with -> as well as the colon.
2024-07-28 21:11:46
Jamie Balfour
Updated the ZPERuntimeException to be the basis of all runtime-based exceptions. Added support for declaring a return type with -> as well as the colon.
2024-07-25 15:47:36
Jamie Balfour
Further removal of public methods from ZPERuntimeEnvironment, which can now only be accessed through the protection of the ZPEKit module.
2024-07-23 09:56:07
Jamie Balfour
Removed references to the new IndexOutOfRange exception that has since been removed.
2024-07-23 09:37:13
Jamie Balfour
Handling of errors is slightly better than it was before. Try-catch statement has been improved to handle errors better.
2024-07-22 10:44:36
Jamie Balfour
New exceptions have been added including the ArgumentException, IncorrectDataTypeException and the overarching ZPEException that now covers all exceptions raised within ZPE.
2024-07-21 16:03:19
Jamie Balfour
Updates to use the new NoEntryPoint and NonExecutable file exceptions
2024-07-21 16:01:42
Jamie Balfour
Added the NoEntryPointException and the NonExecutableFileException exceptions.
2024-07-21 12:12:13
Jamie Balfour
The ZPEEntity's method setVariable is now setProperty.
2024-07-21 12:11:16
Jamie Balfour
All regexps are precompiled and now final.
2024-07-21 10:53:37
Jamie Balfour
All regexps are precompiled.
2024-07-21 10:35:50
Jamie Balfour
Simplified both INTEGER_REGEX and the DOUBLE_REGEX expressions.
2024-07-19 21:55:26
Jamie Balfour
Fixed an issue in which the --man always stated that any function returned an object data type. Fixed an issue in which the rate and voice parameters in the speak command were not optional. Also updated the manual heading for the speak command as a result of this update and bumped the command to version 1.1.
2024-07-19 17:03:55
Jamie Balfour
Added the new MalformedXMLException and support for it in the XML parser.
2024-07-19 08:49:15
Jamie Balfour
Updated the changelog to reflect new changes
2024-07-19 08:46:52
Jamie Balfour
The CompileError is now the CompileException and the ZPERuntimeError is now the ZPERuntimeException.
2024-07-19 08:14:16
Jamie Balfour
Moved the exceptions from the package jamiebalfour.zpe.core to jamiebalfour.zpe.
2024-07-19 08:13:13
Jamie Balfour
Added support for the null value in a JSON file.
2024-07-18 15:33:37
Jamie Balfour
General code tidy up.
2024-07-18 14:58:17
Jamie Balfour
When the getIndex function is called on an non-indexed type it throws a new UnacceptableTypeException.
2024-07-18 14:25:41
Jamie Balfour
Merge remote-tracking branch 'origin/main' # Conflicts: # jamiebalfour/zpe/core/YASSInteractiveInterpreter.java
2024-07-18 13:54:38
Jamie Balfour
The ZenithParsingEngine now properly catches substring errors and passes to ZPE.
2024-07-18 13:54:38
Jamie Balfour
The ZenithParsingEngine now properly catches substring errors and passes to ZPE.
2024-07-18 12:17:07
Jamie Balfour
Removed the exit_on_fail parameter for the Interpret function on the runtime. Changed the errors package to the exceptions package and updated references to it.
2024-07-15 23:38:05
Jamie Balfour
General code tidying
2024-07-15 16:53:52
Jamie Balfour
Moved the changelog.txt to the files folder so that ZPEX can access it too
2024-07-15 13:07:43
Jamie Balfour
std_out always prints to a single line
2024-07-15 13:07:36
Jamie Balfour
Started to add Java documentation to functions that are exposed. Changed the ZPE -o so that if no ZAC value is provided it will list everything.
2024-07-15 13:07:08
Jamie Balfour
Tidied up the main ZPE introduction (e.g. all instances of $file_path and $filepath are now $filepath) and the main ZPE introduction is considerably more detailed now
2024-07-15 13:06:27
Jamie Balfour
Fixed an issue in which string comparison was not carried out correctly
2024-07-14 16:07:43
Jamie Balfour
When a file is downloaded from ZPE Online it precompiled by ZPE as library
2024-07-14 07:51:03
Jamie Balfour
Added a new logs folder in the main ZPE folder where old logs are kept and are limited to the five most recent log files
2024-07-13 22:40:34
Jamie Balfour
The editor now correctly moves the caret back in between quotes or brackets
2024-07-13 15:18:40
Jamie Balfour
Merge remote-tracking branch 'origin/main' # Conflicts: # build.number # build/zpe.jar # files/build.txt
2024-07-13 15:17:17
Jamie Balfour
Added the new ZPERandomizer class that simplifies randomisation within ZPE.
2024-07-11 14:29:26
Jamie Balfour
Updated the changelog.txt
2024-07-11 14:29:26
Jamie Balfour
Updated the changelog.txt
2024-07-11 14:27:33
Jamie Balfour
Added a feature to the main executable to allow the printing of all byte codes.
2024-07-11 14:21:44
Jamie Balfour
Added a feature to the main executable to allow the printing of all byte codes.
2024-07-11 14:19:26
Jamie Balfour
Added a feature to the main executable to allow the printing of all byte codes.
2024-07-11 14:19:26
Jamie Balfour
Added a feature to the main executable to allow the printing of all byte codes.
2024-07-11 13:23:12
Jamie Balfour
Dropped support for the copyof keyword.
2024-07-11 13:19:54
Jamie Balfour
Simplified integer regexp.
2024-07-11 13:14:19
Jamie Balfour
Added support for namespaces to YASS. Added a feature to ZPEKit to list all byte codes and their definition
2024-07-10 12:57:00
Jamie Balfour
Ensured that cache_values.prop is now stored in the ZPE folder.
2024-07-10 10:55:17
Jamie Balfour
Fixed an issue in which the shell command would return a non-ZPE compliant data typed value.
2024-07-05 14:20:12
Jamie Balfour
Updated with the latest version of the Zenith Parsing Engine.
2024-07-02 17:47:31
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2024-07-02 17:46:39
Jamie Balfour
Fixed an issue in which ZPE would try to compile the standard library every time it starts up.
2024-07-02 17:46:39
Jamie Balfour
Fixed an issue in which ZPE would try to compile the standard library every time it starts up.
2024-07-01 08:23:33
Jamie Balfour
Added support for unescaped strings using the @ sign in front of a string. E.g. @"Hello \"
2024-06-27 20:50:31
Jamie Balfour
Added the new Run code with debugging on option to both the editor and the console
2024-06-27 20:08:00
Jamie Balfour
Added breakpoints and the Breakpoint Watch window.
2024-06-26 15:07:50
Jamie Balfour
The new ExitHalt is a new means of creating an exit internally. This has paved the way for breakpoints in ZPE and ZIDE.
2024-06-25 21:42:01
Jamie Balfour
Huge update to the way in which errors are handled in ZPE. This will pave the way for the new ZIDE editor and improvements to the language in general.
2024-06-25 21:41:51
Jamie Balfour
Huge update to the way in which errors are handled in ZPE. This will pave the way for the new ZIDE editor and improvements to the language in general.
2024-06-24 21:46:17
Jamie Balfour
Fixed an issue in which objects did not display correctly through the print function.
2024-06-22 23:07:55
Jamie Balfour
Updated the way in which ZPE imports libraries for a more solid foundation.
2024-06-14 15:59:06
Jamie Balfour
Updated the README.md file.
2024-06-14 15:40:53
Jamie Balfour
Changed the iff predefined function to the iif function. The reason for this was that there is more of a need for the new iif function and to avoid confusion with similar names the old one was removed. The new function works like a Transact-SQL iif function.
2024-06-09 11:47:31
Jamie Balfour
Updated the build number.
2024-06-09 11:46:32
Jamie Balfour
First commit for version 1.12.7.
2024-06-09 11:46:32
Jamie Balfour
First commit for version 1.12.7.
2024-06-08 17:17:21
Jamie Balfour
Code tidying.
2024-06-08 08:24:03
Jamie Balfour
Better error reporting.
2024-06-02 12:53:03
Jamie Balfour
Tidied up some of the code and added documentation.
2024-06-01 17:03:42
Jamie Balfour
Removed the power, square and cube functions (these were deprecated some time ago).
2024-06-01 14:37:14
Jamie Balfour
Added the deconstructor style assignment. This sets out the foundations for what can still be achieved.
2024-06-01 11:09:26
Jamie Balfour
Updated the VelocityWebServerModule.java.
2024-06-01 11:05:10
Jamie Balfour
Fixed an issue in which internal aliases were not working. This might actually have existed for some time now as version 1.12.5 also has this bug.
2024-06-01 10:02:47
Jamie Balfour
ZPE now has a stunning new logo on macOS.
2024-06-01 09:39:42
Jamie Balfour
Added more content to the changelog from the GitHub commits.
2024-06-01 07:55:59
Jamie Balfour
Added the FunctionActions.java file which takes the construct_traverse method away from functions and declares it statically. This in turn means it doesn't get memory allocated each time a function is instantiated and it made sense since these methods only need to access the function itself. More on the bug/feature tracker on GitHub.
2024-05-30 22:31:38
Jamie Balfour
Constants are now listed in the -h config option. Changed ZPE_MAJOR_VERSION, ZPE_MINOR_VERSION and ZPE_CLI_VERSION constants to be updated automatically with the version of ZPE they are bundled with. Added the ZPE_VERSION_BUILD constant.
2024-05-29 20:59:40
Jamie Balfour
Transpilers require a name for the transpiler itself now. This was just added.
2024-05-28 22:31:50
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2024-05-28 21:39:58
Jamie Balfour
Removed the BECL (Balfour's Enterprise Class Library, one of my oldest libraries that I started developing in C# 20 years ago) library as there was code duplication with the HelperFunctions library.
2024-05-28 21:39:58
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2024-05-28 21:33:01
Jamie Balfour
Added a build folder so that builds are now included in commits.
2024-05-28 21:33:01
Jamie Balfour
Added a build folder so that builds are now included in commits.
2024-05-21 19:45:18
Jamie Balfour
Removed the UIBuilder object and moved it to a plugin.
2024-05-21 19:02:16
Jamie Balfour
Added support for variables called $count, $length, $record, $default through a list of $-bound variable names that use keywords. Updated the changelog so that it shows May instead of June for latest updates - June hasn't happened yet!
2024-05-20 06:46:27
Jamie Balfour
Added the -n option to --update allowing the downloading of 'nightly' builds
2024-05-20 06:17:00
Jamie Balfour
Finally fixed the issue in which $x[0]->$distance did not work.
2024-05-19 20:09:33
Jamie Balfour
All plugins in the native-plugins folder must start with libZPE
2024-05-19 15:23:57
Jamie Balfour
Changed the list_plugins function to list all imported libraries rather than imported functions.
2024-05-19 15:18:29
Jamie Balfour
Changed the plugin interface to use camel case on all exposed functions and to ensure that they begin with get. E.g. getParameters. Also removed the LAME interface, LAME is now a core part of ZPE and therefore needs no interface.
2024-05-18 15:11:31
Jamie Balfour
Merge remote-tracking branch 'origin/main' # Conflicts: # build.number # files/build.txt
2024-05-18 15:08:52
Jamie Balfour
Changed the plugin interfaces to use camel case.
2024-05-18 15:08:52
Jamie Balfour
Changed the plugin interfaces to use camel case.
2024-05-17 18:34:56
Jamie Balfour
Added the ability to transpile code from the built-in editor
2024-05-17 18:34:42
Jamie Balfour
Merge remote-tracking branch 'origin/main' # Conflicts: # jamiebalfour/zpe/editor/ZPEEditorMain.java
2024-05-17 18:29:58
Jamie Balfour
Added the ability to transpile code from the built-in editor
2024-05-17 18:29:58
Jamie Balfour
Added the ability to transpile code from the built-in editor
2024-05-17 17:57:20
Jamie Balfour
Changed the functions and objects methods to GetFunctions and GetObjects in the ZPELibrary interface.
2024-05-17 17:54:32
Jamie Balfour
Objects and functions in libraries can now return null if they do not need to expose any.
2024-05-17 17:36:31
Jamie Balfour
Fixed a few issues in the plugin manager when reading ZPE plugins. The same goes in the RTE.
2024-05-17 16:59:51
Jamie Balfour
Updated the changelog with new updates and removed the MQTT object.
2024-05-15 06:34:09
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2024-05-15 06:32:56
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2024-05-15 06:30:29
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2024-05-15 06:30:29
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2024-05-15 06:27:19
Jamie Balfour
Removed GOTO and LABEL bytecodes as they haven't been used for some time and they do not follow the paradigm ZPE/YASS implements.
2024-05-15 06:27:19
Jamie Balfour
Removed GOTO and LABEL bytecodes as they haven't been used for some time and they do not follow the paradigm ZPE/YASS
2024-05-13 06:47:09
Jamie Balfour
Updated the HelperFunctions JAR file.
2024-05-12 08:59:50
Jamie Balfour
Removed the ConvertibleFunction code and replaced it with passing the IAST over to the transpiler plugin.
2024-05-11 23:05:49
Jamie Balfour
Made some changes to the transpiler feature of ZPE that will make development of transpilers easier.
2024-05-10 06:53:28
Jamie Balfour
Added an additional challenge to check if AWT is installed before trying to launch the graphical editor. This stops installations such as native images trying to launch it.
2024-04-26 05:45:49
Jamie Balfour
Added support for object iteration in for...each which will traverse public properties. Fixed an issue in which $-unbound variables would incorrectly be identified as function definitions in the compiler (this requires a post-compilation check).
2024-04-22 21:58:07
Jamie Balfour
Changed the NAME byte code to the IDENTIFIER byte code.
2024-04-15 08:36:50
Jamie Balfour
Fixed an issue in the for...each loop that meant new changes didn't work Added support for $ unbound variables in for...each loops
2024-04-11 10:13:34
Jamie Balfour
is_set and unset have now been designed to accept only a single expression.
2024-04-11 07:41:48
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2024-04-11 07:40:25
Jamie Balfour
Aliases have been fixed. The is_set and unset predefined functions are no longer functions but compiler keywords. The NO_PARSE_MODE functions have been removed.
2024-04-11 07:40:25
Jamie Balfour
Aliases have been fixed. The is_set and unset predefined functions are no longer functions but compiler keywords. The NO_PARSE_MODE functions have been removed.
2024-04-03 14:45:40
Jamie Balfour
Added the build date feature
2024-04-03 10:48:25
Jamie Balfour
Added the feedback option in the Help menu in the editor.
2024-04-03 10:31:53
Jamie Balfour
Changes made to the editor that include a new responsive function information option and many new shortcuts and quick features.
2024-04-03 08:55:27
Jamie Balfour
New escape sequences added including the \n, \r and \t sequences.
2024-04-01 08:06:10
Jamie Balfour
Improved the installer application on Linux and macOS.
2024-03-31 22:17:55
Jamie Balfour
For...To now supports mathematical expressions in the maximum (e.g. for $i = 0 to $x + 3)
2024-03-23 08:25:05
Jamie Balfour
Fixed a minor issue in which running exit() within the interactive help program would state that the manual entry could not be found.
2024-03-23 08:24:56
Jamie Balfour
Fixed a minor issue in which running exit() within the interactive help program would state that the manual entry could not be found.
2024-03-23 08:21:08
Jamie Balfour
Added jLine REPL support in to the interactive interpreter. This adds autocomplete and history-based searching of previous commands straight into the interactive interpreter.
2024-03-17 22:37:08
Jamie Balfour
Made a few additional changes to LAME X2 to improve performance further.
2024-03-16 21:34:21
Jamie Balfour
LAME X2 is now in beta stages and being tested. It is now considered main track.
2024-03-16 21:03:09
Jamie Balfour
LAME X2 is now in beta stages and being tested. It is now considered main track.
2024-02-29 07:34:16
Jamie Balfour
Updates in preparation for ZPE LAME X2
2024-02-17 22:01:23
Jamie Balfour
Added the string_compare function The array_get_data_type function is now the list_get_data_type function and now works on lists as well Minor changes around ZPE such as using isEmpty rather than length == 0 Added the mixed type byte code to string conversion Added Added the -h changes option to allow easy access to the changelog for ZPE Fixed a bug in which ZPE would fail to start
2023-12-30 14:04:11
Jamie Balfour
Added the string_compare function The array_get_data_type function is now the list_get_data_type function and now works on lists as well Minor changes around ZPE such as using isEmpty rather than length == 0 Added the mixed type byte code to string conversion Added Added the -h changes option to allow easy access to the changelog for ZPE
2023-12-17 00:41:02
Jamie Balfour
Minor changes, particularly to the editor.
2023-11-16 00:02:41
Jamie Balfour
Merge remote-tracking branch 'origin/main'
2023-11-15 23:57:48
Jamie Balfour
Added the list reference functions LIST.map, LIST.filter and LIST.reduce. These functions are based on the JavaScript functions with the same names.
2023-11-15 23:57:48
Jamie Balfour
Added the list reference functions LIST.map, LIST.filter and LIST.reduce. These functions are based on the JavaScript functions with the same names.
2023-10-19 21:38:52
Jamie Balfour
The changelog is now bundled and read locally rather than from jamiebalfour.scot. Better handling of editor start issues on headless machines
2023-10-19 19:46:35
Jamie Balfour
Changed where the build version and time are stored - now being stored in a JSON file called build.txt. This makes building the program much faster. Made significant changes to the YASS Unfold feature that bring new features including lists and maps to it.
2023-10-14 23:05:17
Jamie Balfour
Improved the messages generated by YASS Unfold.
2023-10-14 10:39:18
jamiebalfour04
Added mathematics to the YASS Unfold feature, completing the addition of the subset of features available to ZPE 1.5 into YASS Unfold.
2023-10-09 16:23:12
jamiebalfour04
Updated the name of the Java class for the YASSRuntime to ZPERuntimeEnvironment to reflect its actual name.
2023-10-09 16:03:47
jamiebalfour04
The YASS Unfold feature is now available in ZPEKit. Also added the describe_code reference function to the FunctionReference object which uses YASS Unfold to describe the code of the function.
2023-10-09 14:52:37
jamiebalfour04
The new FunctionReference feature allows users to reference both predefined-functions and user-defined functions within variable scope. For example, let k = int_to_char print(k(65))
2023-10-09 12:57:54
jamiebalfour04
More features added to Unfold. Another early release build.
2023-10-08 08:54:42
jamiebalfour04
Merge remote-tracking branch 'origin/main'
2023-10-08 08:52:52
jamiebalfour04
More features added to Unfold. Early release build.
2023-10-08 08:52:52
jamiebalfour04
More features added to Unfold. Early release build. build.number
2023-10-08 07:19:51
jamiebalfour04
Added the new YASS Unfold feature. Made changes to include the YASS Unfold feature across the application.
2023-09-24 14:11:33
jamiebalfour04
More changes across the whole package to reflect better coding styles brought by IntelliJ.
2023-09-18 20:26:22
jamiebalfour04
More changes to code across the package. The build time is now included and is updated by ANT.
2023-09-09 17:35:09
jamiebalfour04
Added the -h log feature to access and view the ZPE Log.
2023-09-09 16:50:02
jamiebalfour04
Fixed an issue in which editors not run from the command line would have no function information
2023-09-09 15:41:29
jamiebalfour04
Updated the build number and changelog.
2023-09-09 15:26:29
jamiebalfour04
Merge remote-tracking branch 'origin/main'
2023-09-09 15:23:21
jamiebalfour04
Built the CodeEditorView which encapsulates both the line number editor and the syntax highlighter into one reusable component.
2023-09-09 15:23:21
jamiebalfour04
Built the CodeEditorView which encapsulates both the line number editor and the syntax highlighter into one reusable component.
2023-09-09 13:42:32
jamiebalfour04
Start of making the editor reusable externally.
2023-09-08 19:50:23
jamiebalfour04
Compiler directives can be written into the code using @directive. These are removed once this program is compiled. Added the compiler directive prevent_auto_include.
2023-09-08 15:13:17
jamiebalfour04
Added the empty keyword, which can be used to check if a list, map, string or object is empty (i.e contains no elements, keys, substrings or properties, respectively)
2023-09-05 20:35:15
jamiebalfour04
Deeper ZPEKit integration and removal of more public methods across the system
2023-09-03 20:28:47
jamiebalfour04
Code updates and perfections.
2023-09-03 14:02:36
jamiebalfour04
Tidied up the code and added the build version into the program.
2023-09-03 12:37:47
jamiebalfour04
Fixed an issue in which spaces were considered a delimiter in a CSV file.
2023-09-03 12:08:44
jamiebalfour04
Fixed an issue in which spaces were considered a delimiter in a CSV file.
2023-09-03 09:27:09
jamiebalfour04
Function reference can now be used to assign a function's code to a variable. Bumped up to version 1.11.9.
2023-09-02 12:37:43
jamiebalfour04
Further improvements to static underlying methods mean that the ZPE takes less memory and starts faster.
2023-08-31 01:04:21
jamiebalfour04
Code tidy up.
2023-08-30 23:09:40
jamiebalfour04
Added the ALLOW_UNBOUND_VARIABLES property that allows the definition of unbound (e.g x = 10) inline variable declaration
2023-08-30 22:58:23
jamiebalfour04
Fixed an issue in the manual that meant that internal functions would not display data about them at all. This came from the move to static predefined functions.
2023-08-30 22:41:23
jamiebalfour04
Objects are now named 'object' rather than 'Anonymous object' when they are used inline.
2023-08-26 15:30:30
jamiebalfour04
Using 'short ifs' requires the USE_SHORT_IFS property to be used
2023-08-26 05:49:58
jamiebalfour04
Merge remote-tracking branch 'origin/main'
2023-08-26 05:48:49
jamiebalfour04
Improved several areas of code where IntelliJ noticed room for improvement.
2023-08-25 23:55:58
Jamie Balfour
Create README.md
2023-08-25 23:49:17
jamiebalfour04
Formatted all the code
2023-08-25 23:43:18
jamiebalfour04
Added support for unbound variable declaration, e.g. x = 10 print(x)
2023-08-25 21:00:43
jamiebalfour04
Merge remote-tracking branch 'origin/main'
2023-08-25 20:57:55
jamiebalfour04
Added classpath and compiled for the first time!
2023-08-25 20:57:55
jamiebalfour04
Added classpath and compiled for the first time!
2023-08-25 20:54:30
jamiebalfour04
Added classpath and compiled for the first time!
2023-08-25 19:48:17
jamiebalfour04
Setup for compilation of JAR.
2023-08-25 19:46:02
jamiebalfour04
Setup for compilation of JAR.
2023-08-25 17:32:37
jamiebalfour04
Moved the changelog
2023-08-25 17:27:04
jamiebalfour04
Added the changelog
2023-08-25 17:25:57
jamiebalfour04
Added the changelog
2023-08-25 17:08:03
jamiebalfour04
Added all the original files
2023-08-25 16:56:19
Jamie Balfour
Add files via upload Initial commit
2023-08-25 16:52:41
Jamie Balfour
Add files via upload Initial commit
Comments
Feedback 👍
Comments are sent via email to me.