Release Notes: An explanation of multiple dispatch was added to the FAQ. A bug in the 'str' function for 'complex' was fixed. The interpreter was improved to support startsWith, endsWith, array_min_position, heapstat, and @:= (for ref_lists). The compiler suport for drw_cpy, ref_trace, arr_head, arr_tail, arr_idx, varfunc, wintype, array literals, and dynamic functions (for enumerations) was improved. The compiler now writes a message when an uncaught exception was raised. The compiler was changed such that destr functions also accept a NULL. The compiler now compiles snake.sd7 and toutf8.sd7.
Release Notes: The file version.h was removed to force the creation of it with the "make depend" command. The read_me was changed such that "rm version.h" is not necessary to compile. Several constant types were defined in data_rtl.h. The files str_rtl.c, str_rtl.h, set_rtl.c, and set_rtl.h were changed to use constant types. A bug with compare functions for array sorts and hash tables was fixed. The makefile mk_linux.mak was added as copy of 'makefile'. The makefile mk_msvc.mak was added to allow experimental compilation with nmake and cl.
Release Notes: As suggested by several users, the include files were moved to the 'lib' directory. The search for include files was improved to work with an internal search path array. The 'hi' interpreter now contains a hardcoded include directory path defined in version.h. The makefiles mk_mingw.mak, mk_msys.mak, and mk_nmake.mak were added for compilation under MinGW. The bigInteger multiplication was changed to use Karatsuba multiplication for bigger integers. Several constant types were defined in common.h.
Release Notes: The compiler support for result variables, which are initialized with expressions, was improved. The bas (basic interpreter) example program was improved. The bigrat.s7i and rational.s7i libraries were improved. Some multiplication test cases were added to the chkbig.sd7 example program. The compiler was changed to mark its temporary *.c files with a temp_marker. Several performance improvements for uBigMultSub, uBigAddTo, uBigDiv, uBigMult, uBigMultIntoHelp, bigGrow, bigMult, and bigShrink were made.
Release Notes: The support and documentation for the functions split, join, log2, bitLength, and the operator *:= were improved. The compiler support for the functions raise, log2, and split was improved. The bas (basic interpreter) example program was improved to support print using statements. Support for the for-step loop in the seed7_05.s7i include file was improved. Some improvements for the bigRational and bigInteger library were done. A bug in uBigAddTo that could cause an error in bigDiv, bigRem, bigMDiv, or bigMod was fixed. The chkbig.sd7 and chkstr.sd7 programs were improved with more checks.
Release Notes: The interpreter was changed to execute programs only when they have no errors. The option -x, to execute programs even when they have errors, was added to the interpreter. The *:= operator for the types integer, float, bigInteger, and bigRational was added. The chkbig.sd7 program was improved to check the *:= operator for big integers. The compiler was improved to support the *:= operator and the arr_cat action. Several improvements for compile time error messages were made. The err.sd7 example program, which checks compile time error messages, was improved.
Release Notes: The support for float was changed to use IEEE 754 NaN and Infinity instead of exceptions. The exception checking program chkexc.sd7 was improved and the chkflt.sd7 program was added. All exponentiation operators were improved to evaluate 0 ** 0 to 1. The associativity of the ** operator was changed to work right to left. A declaration for an = and <> operator was added for interface types. Basic support for exceptions in compiled programs was added. Parts of the manual describing float operations and exponentiation were improved. The compiler was improved for several primitive actions.
Release Notes: Support for hash tables, sets, and console output in compiled programs was improved. Support for multiple dispatch of interface (DYNAMIC) functions was added to the compiler. Handling of parameters in the dispatch functions generated by the compiler was improved. Variable global arrays and structs in compiled programs are now initialized with a copy of the initialisation value. The compiler was improved to produce better code for the primitive actions arr_idx, chr_ge, chr_gt, chr_le, chr_lt, fil_seek, set_cpy, str_cpy, prc_option, prg_match, ref_itftosct, typ_isderived, and typ_meta.
Release Notes: An abstract data type to create interface types was added. The matching of functions was changed such that interface functions are preferred over non-interface functions. The error message that flags incorrect access rights of actual parameters was improved. The handling of interface (DYNAMIC) functions in the compiler was improved. The compiler was improved to support the actions arr_cpy, drw_create, drw_destr, drw_pfarcchord, and drw_pfarcpieslice. Several access rights changes for file functions in seed7_05.s7i and other libraries allow the compiler to produce better code for more file functions.
Release Notes: The compiler was improved to support interfaces (dynamic functions). With this improvement, several example programs can be compiled. The support for the actions gkb_busy_getc, gkb_xpos, gkb_ypos, kbd_busy_getc, drw_pfellipse, and arr_arrlit2 was added to the compiler. The X11 keyboard driver was improved.