Recent Releases
2024.4.024 Apr 2024 19:28
minor feature:
DeepMind (Gemini) support, extended OpenAI functionality, OAuth2 support, general enhancements, and bug fixes
v2024.4.0
Added support for Google DeepMind (Gemini) APIs
Model
Corpus (v1beta)
Chat
Open AI support for external function calls
OAuth2 support (session and file based support)
Refactored KMeans ML implementation to support arrays
Improved support for Date to String operations
Improved Base64 encoding and decoding
KMean supports n-length arrays
Added support for private functions
Tuples classes moved to Collection.Tuple
Added 'First' and 'Last' methods to Vector classes
Fixed ARM64 JIT compiler 'eor' instruction issue impacting macOS and ARM64
v2024.3.0
Added support for OpenAI APIs
Assistant
Chat
Audio
Docker support
Fixed memory manager bugs #462 and #482
v2024.2.1
Added support for response files (#454)
Support for the unary bit wise 'not' operator (#480)
Webserver library enhancements
Improved performance
Better configuration
Optional keyword 'in' added for use in 'each' loops; an alternative to ':=' operator 'Quintet' tuple class added
2024.3.026 Mar 2024 13:41
minor feature:
v2024.3.0
Added support for OpenAI APIs
Assistant
Chat
Audio
Docker support
Fixed memory manager bugs #462 and #482
v2024.2.1
Added support for response files (#454)
Support for the unary bit wise 'not' operator (#480)
Webserver library enhancements
Improved performance
Better configuration
Optional keyword 'in' added for use in 'each' loops; an alternative to ':=' operator 'Quintet' tuple class added
v2024.2.0
Added new JsonStreamParser class for processing large JSON files
Support for ranges using the CharRange, IntRange, and FloatRange classes
Created tuple classes Pair, Triplet, and Quartet
Updates to the Windows installer
2023.10.028 Oct 2023 02:09
minor feature:
Support for ML decision trees, along with minor language enhancements
* Added decision-tree support to the System.ML bundle
* Implemented Int- NaN(), Int- Inf(), Int- NegInf(), Float- NaN(), Float- Inf() and Float- NegInf() functions
* Support for binary boolean static array initialization
2023.7.526 Jul 2023 15:14
minor bugfix:
Improved memory management for REPL and LSP components
2023.7.217 Jul 2023 01:10
major feature:
v2023.7.2
Minor updates to the 'Collection.Queue' class
Upgraded OpenSSL to 1.1.1u for Windows and macOS
Fixed bug #264
2023.6.122 Jun 2023 21:41
major feature:
REPL shell support
v2023.6.1
New RPEL client shell obi
Added functions 'Directory- Delete(..)', 'Directory- GetWorking(..)' and 'Directory- SetWorking(..)'
'HardLink' class added #253 and #254
Fixed issue #240
Minor performance improvements
v2023.5.2
Added the 'ByteBuffer' class and updated the 'Runtime- CommandOutput(..)' function
Support for setting environment variables via 'Runtime- GetEnvironmentVariable(..)' and
Runtime- SetEnvironmentVariable(..)' functions
Optimized memory usage and refactored legacy code
Modified the 'HttpClient' and 'HttpsClient' methods to use byte arrays instead of strings
v2023.5.1
Tweaked syntax for 'TypeOf(..)' expressions (new)
Better support for nested method calls with casts (new)
Fixed issue #241 (bug)
2023.5.208 Jun 2023 16:11
minor feature:
Minor enhancements
v2023.5.2
Added the 'ByteBuffer' class and updated the 'Runtime- CommandOutput(..)' function
Support for setting environment variables via 'Runtime- GetEnvironmentVariable(..)' and
Runtime- SetEnvironmentVariable(..)' functions
Optimized memory usage and refactored legacy code
Modified the 'HttpClient' and 'HttpsClient' methods to use byte arrays instead of strings
v2023.5.1
Tweaked syntax for 'TypeOf(..)' expressions (new)
Better support for nested method calls with casts (new)
Fixed issue #241 (bug)
v2023.5.0
Improved runtime performance and memory usage (new)
Relaxed constraint that concrete parameters be provided for resolved generics (new)
Fixed MSYS2 issue #222 (new)
Updated compiler error messages (new)
Rewired the '-asm' compiler flag (bug)
2023.4.222 Apr 2023 15:00
minor feature:
Minor enhancements
v2023.5.2
Added the 'ByteBuffer' class and updated the 'Runtime- CommandOutput(..)' function
Support for setting environment variables via 'Runtime- GetEnvironmentVariable(..)' and
Runtime- SetEnvironmentVariable(..)' functions
Optimized memory usage and refactored legacy code
Modified the 'HttpClient' and 'HttpsClient' methods to use byte arrays instead of strings
v2023.5.1
Tweaked syntax for 'TypeOf(..)' expressions (new)
Better support for nested method calls with casts (new)
Fixed issue #241 (bug)
v2023.5.0
Improved runtime performance and memory usage (new)
Relaxed constraint that concrete parameters be provided for resolved generics (new)
Fixed MSYS2 issue #222 (new)
Updated compiler error messages (new)
Rewired the '-asm' compiler flag (bug)
2023.2.109 Feb 2023 16:55
major feature:
New features added along with bug fixes
v2023.4.2
Improved method inlining for system classes
Toolchain uniformly, treating 'Int' types as 64-bits (instead of 32-bits on Windows and 64-bits on POSIX) issue #212
Fixed issues #196, #199, #205 and #207 for MSYS2 x86_64 Clang
Resolved a bug that may allow unreferenced return values to remain on the calculation stack
Fixed additional bugs during regression
v2023.4.1
Added 'Int- Sqrt(..)' (new)
Fixed bugs #191 (medium) and #198 (high)
v2023.4.0
Added 'ArcSinh(..)', 'ArcCosh(..)', 'ArcTanh(..)', 'Round(..)', 'Exp(..)'' and 'Log10(..)' (new)
Added back 'String- EqualsIgnoreCase(..)' (new)
LSP support tested with Kate, Textadpt and ecode (new)
For Windows, VM treats ints as 'int64_t'. All int values continue to be stored as 64-bit 'size_t' values. (new)
2023.1.228 Jan 2023 17:44
major feature:
Web server as a service support
v2023.1.2
Added the Web.HTTP.Server bundle (new)
- Created a MultipartEncoding class
- Separated Request and Response objects
- Added response compression support (i.e., decompress, gzip, and br )
- Added cookie support
- Optimized POST request
- Updated example code
Built support for binary literals (i.e., 0b1011)
Fixed an issue with the Collection.Generic.Map class that prevented it from deleting an element when the map size was one (bug)
v2023.1.1
Resolved bug float related compiler optimization bug linked to legacy 32-bit support (bug)
Fixed MSYS2 build scripts
v2023.1.0
New functions and optimizations for core classes (new)
Removal of more legacy 32-bit code on Windows (new)
6.9.101 Dec 2022 01:37
minor feature:
Maintenance release
v6.9.1
* Fixed static code analysis findings (new)
* Updated documentation for MSYS2 support
6.8.317 Oct 2022 21:20
minor feature:
Improved LSP support
v6.8.3
1. Added LSP support for diagnostic warnings (new)
2. Fixed macOS ARM64 build process
6.8.211 Oct 2022 04:00
major feature:
General maintenance
v6.8.2
1. Refactored JIT compilers for maintainability
2. Updated deployment scripts
a. Moved Linux ARM64 builds from the cross-compiler to on-device RPI4
b. Created new build utilities and updated build scripts to simplify deployments
v6.8.1
1. Added Directory- GetSlash() function (new)
2. Renamed System.IO.File bundle to System.IO.Filesystem (new)
3. Added String- Remove(..) and String- RemoveAll(..) for substrings (new)
4. Re-added Window file association support for .obe files
v6.8.0
1. For issue #67, I added the ability to generate a native portable runtime environment using the obb command. The portable runtime contains all application dependencies and a native launcher
6.7.119 Sep 2022 18:01
major feature:
Library and component updates
Highlights:
1. Upgraded Windows libraries (new)
a. zLib moved to 1.2.12
b. OpenSSL moved to 1.1.1q
c. SDL2 moved to 2.24.0
2. Updated SDL2 bindings to 2.0.6 compatibility (new)
3. Added the SDL2 GameController class (new)
4. Added a Remove method to the String class (new)
5. Optimized VM memory usage (new)
6. Windows file associations for .obe files, VM invoked by typing the filename (new)
7. Fixed issue #68
6.6.511 Sep 2022 06:35
major feature:
Optimizations and bug fixes
Highlights:
1. Dead store compiler optimization (new)
2. Compiler detection for assigned unused variables (new)
3. Support for constant propagation (new)
4. Fixed issues #60, #62, #63, #64, and #65
6.6.202 Sep 2022 14:17
major feature:
Optimizations and maintenance updates
Highlights:
1. Dead store compiler optimization (new)
2. Compiler detection for assigned unused variables (new)
3. Support for constant propagation (new)
4. Fixed issue #60
6.5.401 Aug 2022 05:01
major feature:
Maintenance update with bug fixes, including LSP support
Highlights:
1. Added the Runtime- SetLocale(..) function
2. Improved the performance of the HttpsClient and HttpsClient classes
3. Fixed bugs #55, #56, #57, #58 and #59
4. Resolved LSP issues with Visual Studio Code plugin (see objeck-lsp-1.1.14.zip)
6.4.401 Aug 2022 05:00
major feature:
Maintenance update with bug fixes, including LSP support
Highlights:
1. Added the Runtime- SetLocale(..) function
2. Improved the performance of the HttpsClient and HttpsClient classes
3. Fixed bugs #55, #56, #57, #58 and #59
4. Resolved LSP issues with Visual Studio Code plugin (see objeck-lsp-1.1.14.zip)
6.4.008 May 2022 17:03
major feature:
Significant performance enhancements retired support for 32-bit targets
Highlights:
1. Optimized execution for 64-bit targets (new)
2. Runtime memory usage reduced by about 50 (new)
3. Corrected type check bug in the memory manager (bug: medium)
4. Fixed divide by zero exception checking in arm64 JIT code (bug: low)
6.4.517 Apr 2022 13:18
minor feature:
Performance improvements and minor enhancements
Highlights:
1. Additional performance improvements for interpreted code (new)
2. Divide by zero detection in interpreted and JIT-compiled code (new)
3. Fixed array indexing issue with nested method calls (bug: low)
6.3.409 Apr 2022 21:42
minor feature:
Performance improvements and minor enhancements
Highlights:
1. More performance improvements for interpreted code
2. Updated command line documentation
6.3.302 Apr 2022 01:56
minor feature:
Performance improvements and minor bug fixes
Highlights:
1. Performance improvements for interpreted code
2. Bug fixes for LSP support (bug: medium)
6.2.310 Jan 2022 17:50
major feature:
New webserver frame, new classes, and bug fixes
Highlights:
1. Created a HTTPS and HTTP webserver framework (new)
2. Add a 'Stringify' interface (new)
3. Fixed bug #47 (minor)
6.2.106 Jan 2022 02:45
major feature:
New classes and bug fixes
Highlights:
1. Added HTTPS and HTTP web server classes (new)
2. Fixed bug #47 (bug: minor)consistencies for socket and file operations (bug: medium)
6.1.220 Dec 2021 20:55
major feature:
Support for signals, runtime optimizations, and bug fixes
Highlights:
* Add support for signals (new)
* Optimized calls to virtual methods (new)
* Fixed I/O buffer size inconsistencies for socket and file operations (bug: medium)
6.0.431 Oct 2021 23:41
minor feature:
Enhanced LSP support and minor bug fixes
Highlights:
1. Added convenience methods to the JSON and XML parsers (new)
2. Added LSP support for method/function renaming (new)
3. Fixed a JSON parser bug that prevented arrays from being root elements (bug)
4. Compatible with LSP v1.0.2
6.0.125 Oct 2021 00:58
major feature:
Enhanced LSP support
Highlights:
1. Enhanced LSP support (new)
2. Improved the 'Logger' class
3. Minor bug fixes
5.9.103 Jun 2021 23:52
major feature:
Improved memory usage
Highlights:
1. Syntax highlighting and build support for Visual Studio Code (new)
2. More memory efficient String and Vector classes (new)
3. Added Resize(..) to the Hash class (new)
4. Fixed an issue that prevented array address value comparisons (bug #28, medium)
5.8.427 May 2021 02:07
minor feature:
JSON enhancements and bug fixes
Highlights:
1. Added builder methods to the JSON library (new)
2. Added IsNeg and NotNeg to numeric types (new)
3. Fixed TCPSocket and TCPSecureSocket 'WriteString(..)' methods, they were adding an extra byte to output (medium)
5.8.212 May 2021 09:07
minor feature:
Minor enhancements and fixes
Highlights:
1. Updates to class libraries (new)
2. Fixed an issue that caused duplicate source files to crash the compiler (minor)
5.7.317 Apr 2021 18:12
minor feature:
Runtime and debugger enhancements with bug fixes
Highlights:
1. Runtime performance enhancements (new)
2. Reduced VM memory usage (new)
3. Enhancements and bug fixes for the command line debugger
a. Program arguments can be passed by command line (new)
b. Pretty printing of String indexed elements (new)
c. Breakpoint support for recursive calls (bug/low)
d. Command line history for macOS and Linux (new)
e. Support for program arguments with spaces (bug/medium)
f. Incorrect MacOS execute permissions (bug/high)
4. Fixed a bug related to passing functions with generics as parameters (bug/medium)
5. Fixed a compiler check that allowed some static calls to methods (bug/low)
6. Fixed a compiler check that ignored unnecessary generic parameters (bug/low)
7. Resolved a stack trace print issue that caused some functions/methods to no pretty print (bug/low)
5.7.002 Apr 2021 14:59
major feature:
Runtime enhancements
Highlights:
1. Runtime performance enhancements (new)
2. Reduced VM memory usage (new)
5.6.105 Jan 2021 15:53
major feature:
v5.6.1
---
Apple Silicon support
Highlights:
1. Native support for Apple Silicon (new)
2. Fixed an issue with the debugger and memory manager (bug)
5.4.328 Sep 2020 14:59
minor feature:
Minor enhancements and bug fixes
Highlights:
Added forward/backward iterators to the generic list classes resolution (new)
Fixed minor issues in the generic collections bundle (bug)
5.4.121 Sep 2020 14:13
minor feature:
Enhancements and tweaks
Highlights:
Added support for reverse iteration via the 'reverse' keyword (new)
Made tweaks the to the SDL gaming engine (new)
Minor updates to the Windows application launcher (new)
5.4.007 Sep 2020 02:40
minor feature:
Enhancements and updates
Highlights:
1. Fixed a critical issue in the VM that was incorrectly converting negative integers into floats (bug)
2. Added a Windows launcher app to simplify usage and installation (new)
3. Windows launcher will notify users of new versions (new)
5.3.930 Aug 2020 15:05
minor feature:
Bug fixes, minor enhancements
Highlights:
1. Improved generic definition syntax, both: '' and '' are acceptable (new)
2. Fixed type checking bugs for generics (bug)
3. Resolved issues preventing method calls within lambda expressions (bug)
5.3.829 Aug 2020 15:09
minor feature:
Bug fixes, minor enhancements
Highlights:
1. Improved generic definition syntax, both: '' and '' are acceptable (new)
2. Fixed type checking bugs for generics (bug)
5.3.731 Jul 2020 15:55
minor feature:
Bug fix
Highlights:
1. Fixed type checking bugs for generics (bug)
5.3.128 Dec 2019 17:31
minor feature:
Raspberry Pi support and general updates.
Highlights:
1. Native Raspberry Pi 3/4 support (with new ARMv7 JIT compiler) new
2. More efficient handoff between interpreted and JIT generated machine code new
3. Library names that don t end in ".obl" will have it appended new
4. Overall size of "*.obe" binaries has been reduced new
5. Libraries made more modular (see API docs) new
6. Fixed "Https- Get()" and "Https- Post()" bugs that affected Posix targets bug
5.2.116 Sep 2019 13:55
minor feature:
Full support for type aliases.
Highlights:
1. Aliases can be used to reference any type, including functions (new)
2. Added MultiMap to generic collections (new)
3. Fixed bug that allowed instance variables to referenced in static blocks on rare occasions (bug)
5.1.930 Aug 2019 06:22
minor feature:
Updates to web clients and JSON library.
Highlights:
1. Support for HTTP header requests (new)
2. JSON encode and decode text string functions (new)
3. General enhancements
5.1.612 Aug 2019 01:25
minor feature:
Additional lambda and generics functionality
Highlights:
1. Fixed compile time error when returning '@self' from a generic class
2. Added 'Each' and 'Limit' methods to generic collections
3. Support for lambda expressions without return values
4. 'ToString' methods added to holder classes
5.1.423 Jul 2019 14:53
minor feature:
Minor enhancements and bug fixes.
Highlights:
1. Added continue statement
2. Updated the Set generic collection class to use its generic type
5.1.216 Jul 2019 03:26
major feature:
Support for lambda expressions, closures and minor enhancements.
Highlights:
1. Support for lambda expression and closures
2. Tweaks and improvements to memory allocation
3. Debugger enhancements
a. Added a memory command to the debugger
b. Modified continue command
c. Fixed print formatting
d. Updated Getting Started guide to cover debugger
4. Windows installed will automatically upgrade older versions
5.1.114 Jul 2019 17:53
major feature:
Added support for lambda expressions and closures.
5.0.101 Jun 2019 23:12
minor feature:
Added support for generics and boxing.
Highlights:
1. Generic support
a. Added support for generic programming
b. Built generic based collections library Collection.Generic
c. Refactored core libraries to use generic collections
2. Added boxing/unboxing support for primitive types (Bool, Byte, Char, Int and Float)
3. Bug fixes and enhancements
a. Enhanced class documentation (new)
b. Added Apply to generic Vector class (new)
c. Speed enhancements made to the compiler
d. Fixed a bug in the String- Replace() method
e. Enhanced the code documentation system
4. For Windows 64-bit, code statically recompiled to resolve DLL dependencies (new)
5.0.028 May 2019 15:17
major feature:
Added support for generic programming and type boxing.
Highlights:
1. Generic support
a. Added support for generics types
b. Created generic based collections library Collection.Generic
c. Refactored core libraries to use generic collections
2. Added boxing/unboxing support for primitive types (Bool, Byte, Char, Int and Float)
3. Bug fixes and enhancements
a. Speed enhancements made to the compiler
b. Fixed a bug in the 'String- Replace()' method
c. Enhanced the code documentation system
4.1.1112 Apr 2019 16:44
minor feature:
Enhancements and critical bug fixes.
Highlights:
1. Added basic language features
a. Support for multivariable declarations and assignments new
b. Variable negation new
c. Runtime asserts new
2. General performance enhancements for Windows platforms new
3. Minor enhancements and bug fixes to the debugger new
4. Fixed method inlining issue that may have caused incorrect code generation bug
5. Resolved compiler bug related to explicitly typed enum and const variables bug
6. Improved internal handling of UTF-8 to ASCII text conversion new
4.1.1015 Mar 2019 16:24
minor feature:
Optimizations and speed increases.
Highlights:
1. JIT support for floating point functions (pow, sin, cos, log, etc.) new
2. More aggressive method inlining, general increased performance new
3. Fixed code examples bug
4.1.415 Jan 2019 00:19
minor feature:
Added compression APIs, improved XML support and data serialization support.
Highlights:
1. Added zlib byte compression and CRC32 APIs (new)
2. Target files (executables and libraries) compressed for size and integrity (new)
3. Improved XML parsing of CDATA tags (fix)
4. Fixed byte array to hex string functions (fix)
5. Fixed and optimized object serialization classes (fix)
4.1.205 Dec 2018 18:55
minor feature:
Extended support for 2D game development.
Highlights of this release include the following:
1. Added SDL2 support for texture streaming (new)
2. Improved VM performance (enhancement)
3. Addressed Windows 64-bit installer issue. Native DLLs for supporting libraries are now resolved. (bug)
4. Fixed esoteric memory allocation bug for macOS (bug)
4.1.125 Nov 2018 01:50
major feature:
Extended support for 2D game development.
Highlights:
1. Enhancements to the 2D gaming framework
a. Added class support for tiled images
b. Extended SDL2 support including direct pixel access
c. Support for macOS Mojave (SDL2 = 2.0.9)
4.1.005 Oct 2018 22:25
major feature:
Added support for 2D game development.
Highlights:
1. Support for 2D game development
2. Encryption libraries upgraded from OpenSSL 1.0.x to 1.1.x
3. Sublime Text 3 support for syntax highlighting and building code
4. Bug fixes and general enhancements
a. Faster VM startup
b. Fixed float to string bug
c. Resolved bug in 'all paths return' compiler check
d. Fixed default parameter method inlining bug that caused VM crashes
3.6.013 Mar 2017 00:19
major feature:
Made performance improvements.
Highlights include the following:
1. Memory manager was reconfigured to handle larger loads more efficiently
2. Refactored the .obe file format making binaries smaller
3. Made performance improvements to the interpreter
3.5.1022 Feb 2017 17:33
minor feature:
Improved error reporting and novel enhancements.
Highlights of this release include the following:
1. For invalid method calls the compiler now shows possible alternatives (enhancement)
2. Add support for Unicode operators (i.e. for assignments, for method calls, and for logical comparisons)
3. Fixed a minor bug in the "UrlUtility- Encode(..)" method (bug/minor)
3.5.823 Jan 2017 15:21
minor feature:
Bug fixes and enhancements.
Highlights of this release include the following:
1. Revamped code examples (new)
2. Simplified the layout of files and directories (new)
3. Modified "FileReader- ReadString()" to handle different platform newline differences (bug/minor)
4. Fixed a compiler contextual check for certain types of method calls (bug/minor))
3.5.008 Nov 2016 17:18
minor feature:
Minor updates.
Highlights of this release include the following:
1. Optimizations to the runtime interpreter (new)
2. Default compiler optimization flag now set to high (new)
3.4.027 Aug 2016 19:38
minor feature:
Minor updates.
Highlights of this release include the following:
1. Optimizations to the runtime interpreter (new)
2. Default compiler optimization flag now set to high (new)
3.3.1413 Mar 2016 07:40
minor feature:
Updates and bug fixes.
Highlights of this release include the following:
1. Fixed documentation errors (bug/minor)
2. Made minor tweaks to class libraries (new)
3.3.1217 Jan 2016 17:12
minor feature:
Updates and bug fixes.
Highlights of this release include the following:
1. Faster code execution with on Windows and OS X (new)
2. Minor command line interface enhancements (new)
3. Made a fix to the "Console- ReadString()" function on Windows (bug/minor)
3.3.1115 Nov 2015 19:43
minor feature:
Highlights of this release include the following:
1. Support for named constants using the "consts" keyword (new)
2. Added "IsUpper" and "IsLower" methods to the Character class (new)
3. Addressed a compiler bug that allowed objects to be casted as Int s (bug/high)
4. Fixed an issue with compound "not" expressions (bug/medium)
3.3.1009 Nov 2015 21:45
minor feature:
Minor updates and bug fixes.
Highlights of this release include the following:
1. Support for named constants using the "consts" keyword (new)
2. Added "IsUpper" and "IsLower" methods to the Character class (new)
3. Fixed an issue with compound "not" expressions (bug/medium)
3.3.915 Oct 2015 19:59
minor feature:
Minor updates and bug fixes.
Highlights of this release include the following:
1. Added better random number generation (new)
2. Resolved a bug that would not allow inferred Float values to be used as indices into arrays via Int casts (bug/minor)
3.3.8-326 Sep 2015 02:52
minor feature:
Minor updates and bug fixes.
Highlights of this release include the following:
1. Added support for bodiless "while" loops (new)
2. Addressed an issue with Vector copy constructors (bug/high)
3. Fixed a bug related to unary conditional expressions in loops (bug/med)
4. Resolved an issue parsing large HTTP/HTTPS cookies (bug/med)
3.3.8-223 Sep 2015 09:18
minor feature:
Minor updates and bug fixes.
Highlights of this release include the following:
1. Added support for bodiless while loops (new)
2. Addressed an issue with Vector copy constructors (bug/high)
3. Fixed a bug related to unary conditional expressions in loops (bug/med)