Objeck Changelog

What's new in Objeck 3.3.8-1

Jun 19, 2015
  • Add support for "++" and "--" unary operations (new)
  • Added the "Sytem.IO.File.Logger" class (new)
  • Made enhancements to the "System.String" and "CSV.CsvTable" classes (new)
  • Updated the "Sytem.IO.File.FileWriter" class
  • Fixed bug and memory leaks in the ODBC bundle (bug/high)
  • Fixed compatibility bugs in the "System.Time.Date" class (bug/high)

New in Objeck 3.3.7-0 (Feb 27, 2015)

  • Added CSV parsing and process support. Highlights of this release include the following: Add a new CSV library (new)
  • Fixed a bug in returning all sizes in a multidimensional object array (bug/med)

New in Objeck 3.3.6-2 (Feb 21, 2015)

  • Important bug fixes and new documentation.
  • Highlights of this release include the following:
  • Resolved bugs in the following APIs (high/bug):
  • "IntMap->GetKeys()" and "FloatMap->GetKeys()"
  • "RegEx->Match(offset, pattern)" offset value
  • "File->ReadFile(name)" for Linux and OS X
  • Addressed an issue with array interface allocation that impacted the "CompareVector" class (med/bug)
  • Updated API documentation and the "Programmer’s Guide" (new)
  • Added new code examples (new)

New in Objeck 3.3.5-5 (Feb 11, 2015)

  • Important bug fixes and minor enhancements. Highlights of this release include the following:
  • 1. Rewrote the programmer's guide to better reflect current features (new)
  • 2. Optimized stack operations for floating point operations (new)
  • 3. Fixed ODBC "select" bug and added missing ODBC API documentation (bug/high)
  • 4. Addressed error checking and Unicode conversation issues with the overloaded "File->WriteBuffer(..)","TCPSocket->WriteBuffer(..)" and "TCPSecureSocket->WriteBuffer(..)" methods (bug/high)
  • 5. Added missing compiler check for array assignment to array element

New in Objeck 3.3.5_3 (Jan 24, 2015)

  • Added installers for Ubuntu and Debian based Linux distributions. Made minor enhancements and bug fixes. Highlights of this release include the following:
  • Finally, added installers for Ubuntu and Debian based Linux distributions overhauling the build system (new)
  • Optimized stack operations for floating point operations (new)
  • Added missing compiler check for array assignment to array element (bug/medium) 4. Fixed ODBC "select" bug and added missing ODBC API documentation (bug/high)
  • Overhauled the build system and release management process (misc)

New in Objeck 3.3.5_0 (Dec 8, 2014)

  • Refactored class libraries and created new API documentation. Resolved newly identified bugs and as a result of full regression testing.
  • Highlights of this release include the following:
  • Refactored and documented all class libraries (new)
  • Developed a new inline code documentation system (new)
  • Resolved inner enum issues associated with some class libraries (bugmajor)
  • Fixed a method inlining bug that caused some programs to crash when compiled with aggressive optimization (bugmajor)

New in Objeck 3.3.4_2 (Oct 29, 2014)

  • Bug fixes and minor enhancements.
  • Highlights of this release include the following:
  • Added 'String->Delete' methods
  • Better method/function return value checking
  • Addressed bugs with nested enum support

New in Objeck 3.3.4_0 (Oct 28, 2014)

  • Bug fixes and minor enhancements.
  • Highlights of this release include the following:
  • Added better method/function return value checkin
  • Addressed bugs in nested enum support

New in Objeck 3.3.3_0 (Oct 7, 2014)

  • Fixed Unicode console support for OS X
  • Addressed a command line parsing bug for certain quoted strings

New in Objeck 3.3.2_1 (Jun 16, 2014)

  • The "+=" String append operator now supports the following types: String, Byte, Char, Int, Float and Bool (enhancement)
  • Fixed an issue with the debugger that caused the "continue" command to skip some breaks in loops (bug: medium)
  • Corrected a parsing bug with the new unary "" or "!" operator (bug: medium)
  • Launched the new project website http://www.objeck.org

New in Objeck 3.3.2_0 (Jun 7, 2014)

  • Keyword 'leaving' added that allows a block of code to always be executed upon exiting a function or method (new)
  • enhancement C-like syntax support (new)
  • Added support for string concatenation using the "+=" operator (new)
  • Added ODBC 'PreparedStatement' support Blobs and binary streams (new)
  • Support for unary 'not' expressions added (new)
  • Updated the syntax highlighting files to include new keywords and operators for: Notepad++, BBEdit, gedit and GeSHi (enhancement)
  • Addressed a compiler limitation that did not support nested method calls that included arrays for example 'Int->New[size]->Size()->PrintLine()' (enhancement)
  • Fixed a crash causing bug in the memory manager (major)
  • Resolved a bug that caused some highly multi-threaded programs that allocated chucks of memory concurrently to crash during garbage collection (medium)
  • Resolved an issue with the 'String->Find(offset, pattern)' API (major)
  • Refresh documentation and added new code examples

New in Objeck 3.3.1 (May 29, 2014)

  • Keyword 'leaving' added that allows a block of code to always be executed upon exiting a function or method (new)
  • Enhanced C-like syntax support (new)
  • Added ODBC 'PreparedStatement' support Blobs and binary streams (new)
  • Support for unary 'not' expressions added (new)
  • Addressed a compiler limitation that did not support nested method calls that included arrays for example 'Int->New[size]->Size()->PrintLine()' (enhanced)
  • Fixed a crash causing bug in the memory manager (major)
  • Resolved a bug that caused some highly multi-threaded programs that allocated chucks of memory concurrently to crash during garbage collection (medium)
  • Resolved an issue with the 'String->Find(offset, pattern)' API (major)
  • Refresh documentation and added new code examples

New in Objeck 3.3.0 (May 17, 2014)

  • Major bug fixes and new features added including support for an alternative C-like syntax.
  • Initial syntax support for C-like operators and statements (new)
  • Addressed to compiler limitation that did not support nested method calls that included arrays for example 'Int->New[size]->Size()->PrintLine()' (enhanced)
  • Fixed a crash causing bug in the memory manager (major)
  • Resolved an issue with the 'String->Find(offset, pattern)' API (major)
  • Refresh documentation and added new code examples

New in Objeck 3.2.6_1 (Dec 27, 2013)

  • JSON support for non-quoted strings and C++ style ("//") comments (new)
  • Fixed a bug that wasn’t properly recognizing casts to interfaces implemented by parent classes (bug:high)
  • Fixed a parsing bug in the JSON library (bug:high)
  • Added new code examples (new)
  • OS X build moved from GCC to Clang

New in Objeck 3.2.6_0 (Dec 20, 2013)

  • Fixed a bug that wasn't properly recognizing casts to interfaces implemented by parent classes (bug: high)
  • Added new code examples (new)
  • Windows build moved to Visual Studio 2013
  • OS X build moved from GCC to Clang

New in Objeck 3.2.5.4 (Sep 18, 2013)

  • Resolved a bug in the "Float->ToString()" method (bug: high)
  • Addressed an issue with the management of stack frames in multi-threaded programs (bug: high)
  • Fixed a bug in the "Vector->Remove()" function (bug: medium)
  • Added new code examples (new)

New in Objeck 3.2.5.3 (Aug 23, 2013)

  • Fixed a memory leak in the interpreter (bug: major)
  • Bug fix to the latest garbage collection algorithm (bug: major)
  • Resolved an issue that was incorrectly reading static integer/float array values from shared libraries (bug: major)
  • Resolved a parsing for some hexadecimal numbers (bug: medium)
  • Updates to the class libraries (enhancement)
  • Added support for empty statements (i.e. for(;i

New in Objeck 3.2.5.1 (Aug 20, 2013)

  • Bug fix to the latest garbage collection algorithm (bug: major)
  • Resolved an issue that was incorrectly reading static integer/float array values from shared libraries (bug: major)
  • Resolved a parsing for some hexadecimal numbers (bug: medium)
  • Added support for empty statements (i.e. for(;i

New in Objeck 3.2.4.0 (Jul 16, 2013)

  • Added the not ‘!’ operator (new)
  • Improved the handling of floating-point conditional logic in JIT compiled code (enhancement)

New in Objeck 3.2.3.3 (Jun 11, 2013)

  • Fixed a bug in the 'Float->ToString()' method (bug:medium)
  • Improved runtime performance, faster method calling (enhancement)
  • Garbage collection performance improved by at least 33% (enhancement)
  • Modified the way stack frames are managed (enhancement)
  • Added method 'Float->ToDegrees()' (enhancement)

New in Objeck 3.2.3.2 (Jun 10, 2013)

  • Fixed a bug in the 'Float->ToString()' method (bug:medium)
  • Improved runtime performance, faster method calling (enhancement)
  • Garbage collection performance improved by at least 33% (enhancement)
  • Modified the way stack frames are managed (enhancement)
  • Added method 'Float->ToDegrees()' (enhancement)

New in Objeck 3.2.3.1 (May 30, 2013)

  • Improved runtime performance, faster method calling
  • Garbage collection performance improved by at least 33%
  • Modified the way stack frames are managed

New in Objeck 3.2.2.0 (May 27, 2013)

  • Improved interpreter performance
  • Garbage collection performance improved by at least 33%

New in Objeck 3.2.1.0 (May 20, 2013)

  • Added support for anonymous classes
  • Updated class libraries, new examples and documentation

New in Objeck 3.2.0.3 (May 13, 2013)

  • Added Unicode support (enhancement)
  • Resolved a bug related to the upcasting of classes to interfaces (severity: high)
  • Fixed bugs in the command line debugger (severity: high)
  • On Windows, a bug was fixed in the "Console->ReadString()" method (severity: medium)
  • General code clean up (severity: minor)
  • Updated class libraries, new examples and documentation

New in Objeck 3.2.0.2 (May 8, 2013)

  • Added Unicode support (enhancement)
  • Resolved a bug related to the upcasting of classes to interfaces (severity: high)
  • Fixed bugs in the command line debugger (severity: high)
  • General code clean up (severity: minor)
  • Updated class libraries, new examples and documentation

New in Objeck 3.2.0.1 (May 2, 2013)

  • Added Unicode support (enhancement)
  • Fixed bugs in the command line debugger (severity: high)
  • General code clean up (severity: minor)
  • Updated class libraries and documentation

New in Objeck 3.2.0.0 (Apr 30, 2013)

  • Added Unicode support (enhancement)
  • Fixed bugs in the command line debugger (severity: high)
  • Updated class libraries and documentation

New in Objeck 3.1.11.0 (Apr 10, 2013)

  • Enhanced the XML parser to support names spaces (enhancement)
  • Added support for "@self->var" and "@parent->var" (enhancement)
  • Bug fixes to the HTTP and HTTPS classes (bug: medium)
  • Fixed bugs in the debugger (bug: medium)
  • Fixed bugs in the XML parser (bug: minor)

New in Objeck 3.1.10.1 (Apr 8, 2013)

  • Enhanced the XML parser to support names spaces (enhancement)
  • Bug fixes to the HTTP and HTTPS classes (bug: medium)
  • Fixed bugs in the debugger (bug: medium)
  • Fixed bugs in the XML parser (bug: minor)

New in Objeck 3.1.9.1 (Mar 28, 2013)

  • Added support for default method/function parameter values (new)
  • Compiler now detects invalid escaped character strings (bug/minor)
  • The "Sleep" method of the "Thread" class now uses milliseconds vs. seconds (enhancement)
  • Enhanced the stability of the debugger (bug/medium)
  • Added "FindLast" methods to the "String" class (enhancement)
  • Minor code refactoring (info)

New in Objeck 3.1.9.0 (Mar 21, 2013)

  • Support for default method/function parameter values (new)
  • Additional code examples added (info)

New in Objeck 3.1.8.5 (Mar 8, 2013)

  • Added a "Remove" method to the "Vector" class (enhancement)
  • Fixed a bug related to accessing class and instance variables in children derived from the "Thread" class (bug, major)
  • Resolved a runtime issue related to deriving classes from shared libraries (bug, major)
  • Fixed bugs in the "List" class (bug, major)
  • Fixed a packaging issue in the Linux and OS X distributions (bug, medium)
  • Additional code examples added (info)

New in Objeck 3.1.8.4 (Mar 4, 2013)

  • Fixed a bug related to accessing class and instance variables in children derived from the "Thread" class (major)
  • Resolved a runtime issue related to deriving classes from shared libraries (major) Additional code examples provided

New in Objeck 3.1.8.3 (Feb 25, 2013)

  • Bug fix related to the runtime checking of casted inference variables (medium)
  • Bug fix related to type validation in higher-order function signatures (medium)
  • Fixed a bug in the HTTPS class that required URLs to start with "http://" (medium)
  • Added some additional code examples

New in Objeck 3.1.8.2 (Feb 19, 2013)

  • Minor bug fixes (minor)
  • Added some additional code examples

New in Objeck 3.1.8.0 (Jan 28, 2013)

  • Added the ability to reference variables from within a string literal (new)
  • Added MD5 and RIPEMD-160 hash support (new)
  • Minor bug fixes to the language compiler, debugger and JIT compiler (minor)
  • Additional code examples

New in Objeck 3.1.7.0 (Jan 3, 2013)

  • SSL socket support (new)
  • HTTPS web client (new)
  • Support for AES-256 encryption and SHA-256 hashing (new)
  • New bundle structure (enhancement)
  • Bug fixes (minor)
  • Updated documentation

New in Objeck 3.1.6.2 (Dec 22, 2012)

  • Resolved a bug related to the static initialization of 2D arrays
  • Fixed a rarely encountered integer division bug in the VM JIT compiler

New in Objeck 3.1.6.1 (Dec 8, 2012)

  • Added the capability to get date information for files (new)
  • The Date class now has a "ToString" method (new)
  • The "obr" compiler binary can now be executed from outside of the “bin”, please see below (new)
  • Fixed a bug in the Date class (moderate)
  • Resolved a compiler bug related to nested method calls with inline casts (minor)

New in Objeck 3.1.6.0 (Nov 5, 2012)

  • New regular expression engine with better expression support and more operations (new)
  • Added Queue classes to the "struct" library (new)
  • Added a ‘Clear’ method to all collections in the "struct" library (enhancement)
  • Fixed a minor contextual analysis bug that did not detect certain invalid return statements (minor)

New in Objeck 3.1.5.0 (Oct 15, 2012)

  • New regular expression engine with better expression support and more operations (new)
  • Added Queue classes to the "struct" library (new)
  • Added a ‘Clear’ method to all collections in the "struct" library (enhancement)
  • Fixed a minor contextual analysis bug that did not detect certain invalid return statements (minor)

New in Objeck 3.1.4.4 (Sep 24, 2012)

  • JSON 'ToString' sterilization support (new)
  • Refactored the RegEx class. Modified the 'Find' method and added a 'FindIndex' method (enhancement)

New in Objeck 3.1.4.3 (Sep 8, 2012)

  • JSON 'ToString' sterilization support (new)
  • The 'Size' method for multi-dimensional arrays returns an array of sizes for each dimensional (new)
  • Modified the syntax for 2D static array initialization (enhancement)
  • Resolved bug in 'select' statements related to the location of the 'other' tag (high)
  • Improved error handling for runtime class cast exceptions (high)
  • Resolved bug in the XML parser related to processing XPath-type parameters (medium) Fixed a bug in the RegEx library sounding support for wildcard expressions (medium)

New in Objeck 3.1.4.2 (Sep 5, 2012)

  • JSON 'ToString' sterilization support (new)
  • Resolved bug in 'select' statements related to the location of the 'other' tag (high)
  • Improved error handling for runtime class cast exceptions (high)
  • Resolved bug in the XML parser related to processing XPath-type parameters (medium)
  • Fixed a bug in the RegEx library sounding support for wildcard expressions (medium)

New in Objeck 3.1.4.1 (Sep 3, 2012)

  • Bug in ‘select’ statements related to the location of the 'other' tag (high)
  • Fixed a bug in the XML parser related to processing XPath-type parameters (medium)
  • Fixed a bug in the RegEx library sounding support for wildcard expressions (medium)

New in Objeck 3.1.4.0 (Aug 18, 2012)

  • Initial JSON support (new)
  • Refactored the memory manager to better handle static memory references (high)
  • Bug related to casting an enum to an Int and then calling an associated method (medium)
  • Fixed a bug related to expressional comparisons between some enums and class types (medium)

New in Objeck 3.1.3.1 (Aug 6, 2012)

  • Added the ability to make nested method calls directly from "As" casts (enhancement)
  • Added better exception handling for array dereferencing (high)
  • Refactored the "String->Trim" method (medium)
  • Fixed a bug related to resolving "use" scope across multiple files (medium)
  • Modified the XML paring library such that hex chars are properly parsed (low)
  • Fixed a crash related compiler bug (low)

New in Objeck 3.1.3.0 (Jul 18, 2012)

  • Expanded support for method inlining

New in Objeck 3.1.2.3 (Jul 16, 2012)

  • Inlining support for method setters (new)
  • Additional VM performance tweaks (new)
  • Resolved a compiler bug related to the generation of invalid code for classes that were derived from the Thread class (high - fixed)
  • Fixed a bug introduced in 3.1.2_2 that caused logical floating potion expressions to be incorrectly computed in the interpreter (high - fixed)
  • Modified the size of the execution and call stacks to help prevent rare stack overflows (low - fixed)

New in Objeck 3.1.2.2 (Jul 9, 2012)

  • Inlining support for method setters (new)
  • Additional VM performance tweaks (new)
  • Resolved a compiler bug related to the generation of invalid code for classes that were derived from the Thread class (high - fixed)
  • Modified the size of the execution and call stacks to help prevent rare stack overflows (low - fixed)

New in Objeck 3.1.2.0 (Jun 28, 2012)

  • Performance tweaks (new)
  • Resolved a compiler bug related to the generation of invalid code for classes that were derived from the Thread class (high - fixed)

New in Objeck 3.1.1.1 (Jun 18, 2012)

  • Support for dynamic class loading (new)
  • In some cases, the compiler wasn't linking unused class libraries references (high - fixed)
  • Memory allocated using the C/C++ APIs might collect memory before valid references are stored (high - fixed)
  • Int to String API now handles negative numbers (high - fixed)
  • Strength reduction optimization bug was resolved (high - fixed)
  • Implicit casting for basic types was passed as parameters was fixed (high - fixed)
  • Improved error handling for Objeck APIs that leverage native C functions (high - fixed)
  • Compiler bug related to operator assignment statements with lvalues that were array elements was resolved (high - fixed)
  • Garbage collection stability bug was resolved on Windows (high - fixed)
  • A class cast bug was resolved (med - fixed)
  • Garbage collection threading code was fixed to improve overall performance on all platforms (med - fixed)
  • Compiler properly checks file extensions (low - fixed)

New in Objeck 3.1.0.0 (May 28, 2012)

  • Support for server sockets (new)
  • Date class enhancements (new)
  • Compiler bug related to linking class casts that are not referenced (low).
  • Resolved a bug that caused the runtime to crash when printing out exiting stack traces (low).

New in Objeck 3.0.1.2 (Apr 24, 2012)

  • The addition of more trigonometric functions (medium)
  • Fixed a bug related to nested floating point calculations that make method calls (medium)
  • A version key is now used to ensure that libraries and binaries are compatible with specific versions of the tool chain
  • Patched the debugger such that it looks for the required magic number in the correct place in order to properly load debug executables
  • Fixed a few bugs related to calling dynamic methods that are defined in library files.

New in Objeck 3.0.1.1 (Mar 15, 2012)

  • The addition of more trigonometric functions (medium)
  • Fixed a bug related to nested floating point calculations that make method calls (medium)
  • A version key is now used to ensure that libraries and binaries are compatible with specific versions of the tool chain
  • Patched the debugger such that it looks for the required magic number in the correct place in order to properly load debug executables

New in Objeck 3.0.1.0 (Mar 8, 2012)

  • The addition of more trigonometric functions (medium)
  • Fixed a bug related to nested floating point calculations that make method calls (medium)
  • A version key is now used to ensure that libraries and binaries are compatible with specific versions of the tool chain

New in Objeck 3.0.0.0 (Feb 13, 2012)

  • Full support for class interfaces
  • Relaxed syntax via type inference and inferred method call signature resolution
  • Regular expression support
  • Block scoping of variables
  • ODBC database support
  • Enhancements and bug fixes to existing class libraries
  • Increased stability and performance

New in Objeck 2.1.5.0 (Feb 6, 2012)

  • Rewrote the buggy "RegEx" class. Expect additional enhancements in the future (major)
  • Addressed a bug related to always linking the "String" class for support of non-referenced command line parameters (medium)
  • Fixed minor compiler bugs for enhanced stability

New in Objeck 2.1.4.0 (Jan 4, 2012)

  • Compiler fix related to the scoping of inferred variables (major - it was broken)
  • Fixed a compiler bug related to the management of multiple return statements that all have literal strings (minor)
  • Optimized the code generation for nested AND/OR expressions (medium)
  • Initial implementation of a regex pattern engine. Expect enhancements and/or bug fixes to follow (new)

New in Objeck 2.1.3.0 (Dec 27, 2011)

  • Full support for interfaces. The previous implementation lacked runtime support.
  • Fixed a bug in the String class related to the copying of byte buffers. This had cascading impacts.
  • Resolved an outstanding issue involving inheritance and virtual methods. One of the primary impacts was nested inheritance from (or to) classes in shared libraries.
  • Sped up the dynamic binding process by keeping references to class definitions as part of the class instance activation record.
  • The HttpClient class now supports cookies.
  • Fixed numerous bugs in the command line debugger, as I actually use it now to find bugs in larger libraries/programs.

New in Objeck 2.1.2.0 (Oct 29, 2011)

  • This release includes a refactored C++ API. Current and upcoming releases will leverage the native API to provide database (ODBC) and GUI (GTK+) support.
  • This interim release fixes critical bugs that were found during GTK+ integration.
  • The following bugs have been resolved:
  • Syntax tweaks to the XML parsing libraries; namely the 'XMLElement->FindElements(..)' method
  • The ODBC ParameterStatement class now supports Timestamps and Dates
  • Ability to use more than one source bundle for a compiled .obe file

New in Objeck 2.1.1.2 (Oct 10, 2011)

  • Fixed a memory manager bug related to the scanning of methods with higher-order functions
  • Fixed a compiler bug that was assigning the same type ID to certain static and instance memory blocks
  • Fixed a compiler bug that caused some character escaped string literals to be incorrectly represented
  • Resolved a recently introduced compiler bug that caused the compiler to crash if certain shared library references couldn’t be resolved
  • Resolved a bug in the String class’s Compare method
  • Changed the return value of the StringMap class’s Find method to return a Base class
  • Now allow more than one bundle to be defined in an .obe file

New in Objeck 2.1.1.1 (Oct 5, 2011)

  • Fixed a memory manager bug related to the scanning of methods with higher-order functions
  • Fixed a compiler bug that was assigning the same type ID to certain static and instance memory blocks
  • Resolved a recently introduced compiler bug that caused the compiler to crash if certain shared library references couldn’t be resolved
  • Resolved a bug in the String class’s Compare method
  • Changed the return value of the StringMap class’s Find method to return a Base class
  • Now allow more than one bundle to be defined in an .obe file

New in Objeck 2.1.1.0 (Oct 1, 2011)

  • Fixed a memory manager bug related to the scanning of methods with higher-order functions
  • Fixed a compiler bug that was assigning the same type ID to certain static and instance memory blocks
  • Resolved a recently introduced compiler bug that caused the compiler to crash if certain shared library references couldn’t be resolved

New in Objeck 2.1.0.1 (Sep 26, 2011)

  • Fixed a bug related to calling methods on static strings with 1 or more parameters
  • Resolved a validation bug that allowed some invalid operations to be used with objects
  • Fixed a bug in the String "Trim" method

New in Objeck 2.1.0.0 (Sep 24, 2011)

  • Fixed a bug related to calling methods on static strings with 1 or more parameters
  • Resolved a validation bug that allowed some invalid operations to be used with objects
  • Fixed a bug in the String "Trim" method

New in Objeck 2.0.4.0 (Aug 26, 2011)

  • Added a ‚ÄúCopy‚Äù function to the ‚ÄúRuntime‚Äù class. This function allows blocks of memory to be quickly copied from one array to another.
  • Optimized the ‚ÄúVector‚Äù classes such that operations dealing with 1M+ elements are over 90% faster.
  • Optimized ‚ÄúString‚Äù class operations by levering the new memory copying APIs.
  • Additional performance improvements to the collection classes.

New in Objeck 2.0.3.1 (Aug 23, 2011)

  • Fixed a major bug that caused some programs to crash when compiled with method inlining. Method inlining became a default setting with version 2.0.x. Method inlining has been disabled a bug will be fixed in a forthcoming release.
  • Opening a file in write or read/write mode will delete an existing file with the same name. All files are now opened in binary mode.
  • Fixed the "Post" method in the HttpClient class
  • Improved the String hashing algorithm.

New in Objeck 2.0.1.0 (May 30, 2011)

  • This release provides better support for method inlining. In addition, minor bugs have been resolved.

New in Objeck 2.0.0.0 (Apr 25, 2011)

  • Enhanced the class libraries and system bundles
  • Support for compile time method inlining
  • Reordered compiler optimizations for improved performance
  • Fixed an obscure floating point bug in the JIT compilers
  • General bug fixes
  • Updated documentation and code examples

New in Objeck 1.5.0.1 (Apr 9, 2011)

  • Initial support for data type serialization
  • Improved garbage collection performance
  • Better exception handling
  • Enhanced debugger functionality and bug fixes
  • General bug fixes

New in Objeck 1.5.0.0 (Apr 8, 2011)

  • This release provides support for data serialization. The virtual machine has been tuned for improved performance. The functionality of the debugger has been enhanced and known bugs resolved.

New in Objeck 1.4.2.1 (Mar 5, 2011)

  • Improved reporting of syntax errors.
  • Added “ToLower” and “ToUpper” to the Character class.
  • Bug fix related to passing "native" functions to the JIT compilers as parameters.

New in Objeck 1.4.2.0 (Mar 4, 2011)

  • Improved reporting of syntax errors.
  • Added “ToLower” and “ToUpper” to the Character class.

New in Objeck 1.4.1.0 (Feb 14, 2011)

  • Added support for object introspection.
  • Minor fixes that improve stability and error handling.

New in Objeck 1.3.0.1 (Dec 29, 2010)

  • This minor release contains basic fixes that better detect certain contextual compile errors. In addition, a program "exit" API was added to the Runtime class.
  • The Objeck programming language is a light-weight object-oriented programming language with functional features. The programming system consists of a compiler, virtual machine (with garbage collector and JIT compiler) along with a command line debugger.

New in Objeck 1.3.0.0 (Dec 13, 2010)

  • This release adds support for class interfaces.
  • In addition, a minor parsing bug was fixed related to casts within nested method calls.

New in Objeck 1.2.1.2 (Dec 4, 2010)

  • This point release was primarily focused on bug fixes and code cleanup. One new library class was added please refer to the readme.rtf file for details. Two significant bugs where resolved. The first fix was related to the collection of static object arrays. The second fix was related to the explicit casting of nested sub-expressions. In addition, compiler stability was improved.

New in Objeck 1.2.1.1 (Nov 26, 2010)

  • This point release was primarily focused on bug fixes and code cleanup.
  • Two significant bugs where resolved.
  • The first fix was related to the collection of static memory that went out of scope.
  • The second fix was related to the way the memory manager swept floating point values that were mapped by the x86_64 JIT compiler.
  • Additionally, there was some minor code clean up in the compiler.

New in Objeck 1.2.1.0 (Nov 15, 2010)

  • This release provides support for application threads. There's also one major bug fix related to the referencing of static class variables from instance methods. Additionally, there was some minor code clean up.

New in Objeck 1.2.0.0 (Oct 21, 2010)

  • Added 64-bit JIT support for Linux and OSX
  • Fixed a bug related to the power and square root Float methods.
  • Fixed a major bug related to floating point comparisons in the IA32 and AMD64 JIT compilers

New in Objeck 1.1.5.0 (Sep 27, 2010)

  • This release provides bug fixes and enhanced XML support including basic support for XPath queries.
  • There's also one major bug fix related to passing '@self' variables to methods and functions.
  • Additionally, there's a minor enhancement to the compiler that provides better support for untyped variable assignments.

New in Objeck 1.1.4.0 (Sep 24, 2010)

  • This release adds initial support for XML parsing and DOM querying. Please see the Programmer's Guide for more information. There's also one major and one minor bug fix included in this release.
  • The Objeck programming language is a light-weight object-oriented programming language with functional features. The programming system consists of a compiler, virtual machine (with garbage collector and JIT compiler) along with a command line debugger.

New in Objeck 1.1.3.1 (Sep 20, 2010)

  • Major bug fixed related to TCP/IP socket buffers copying garbage into strings.
  • Major bug fixed related to nested loops not terminating due to the recent addition of ‘break’ statements.

New in Objeck 1.1.2.0 (Aug 27, 2010)

  • Add the String “Split” method.
  • Add additional Float method such as “Power” and “SquareRoot”.

New in Objeck 1.1.1.0 (Aug 7, 2010)

  • Fixed a bug related to the Nil casting of arrays.
  • Enhanced the existing class libraries (see the Programmer's Guide).
  • Add additional code examples.

New in Objeck 1.1.0.0 (Aug 3, 2010)

  • Added support for first-class functions.
  • Enhanced the existing class libraries (see the Programmer's Guide)
  • Minor enhancements to the command-line debugger.
  • Bug fixes for a number of minor issues.

New in Objeck 1.0.0.1 (Jul 12, 2010)

  • Added new classes to the class libraries and enhanced existing ones.
  • Fixed a compiler bug that allowed duplicate classes names to be in the same source file.
  • Optimized jump table look code for interpreted VM execution.
  • Fixed a JIT VM bug related to machine code generation of intermediate XOR instructions
  • Re-factored the class libraries so that method names and operations are more consistent across class types.
  • Fixed a bug in the compiler related to linking of = stack instructions

New in Objeck 1.0.0 (Jul 7, 2010)

  • Refactored the HttpClient class.
  • Added a new set of Hash class libraries that support hash table functionality
  • Provided additional default implementations of the Map class
  • Added a method to the default Base class that supports returning uniques instance identifiers.
  • Fixed a bug related to linking nested inherited methods in class libraries for source inherited classes.

New in Objeck 0.9.11 (Jun 30, 2010)

  • Added a new command-line debugger “obd” to the Objeck toolset
  • Fixed a parser bug related to integer constant subtraction

New in Objeck 0.9.11 (Jun 14, 2010)

  • Added a new command-line debugger “obd” to the Objeck toolset
  • Fixed a parser bug related to integer constant subtraction
  • Fixed a Windows specific compiler bug related to command line parameter parsing

New in Objeck 0.9.10 (May 10, 2010)

  • Added a new command-line debugger “obd” to the Objeck toolset
  • Fixed a parser bug related to integer constant subtraction
  • Fixed a Windows specific compiler bug related to command line parameter parsing

New in Objeck 0.9.9 (Apr 15, 2010)

  • Added “Nil” pointer and array bounds checks in JIT generated machine code
  • Fixed a bug in the String “SubString” method

New in Objeck 0.9.8 (Apr 12, 2010)

  • Compiler: VM : New : added socket support
  • Compiler: Fix : bug related to VAR_TYPE assignment for indexed arrays

New in Objeck 0.9.7 (Apr 6, 2010)

  • Compiler: VM : New : added support for do/while loops
  • Compiler: Fix: bug that didn't allow arrays to be assigned to VAR_TYPE; explicit cast was required
  • Compiler: Fix: bug related to case statement generation

New in Objeck 0.9.4 (Feb 27, 2010)

  • Re-factored the garbage collector so that memory that was already visited is 'marked' vs. searching to see if memory has already been visited.
  • Re-factored the source compiler so that only classes that are referenced in the program are linked into the target file for executables.
  • Minor bug fixes