Release Notes: The handling of closure parameters in the compiler was improved. A free string memory management for small strings was introduced. The "socket.s7i" library was improved to provide protocol independent network access. The function 'addrFamily' was added to the "socket.s7i" library. Several changes were made to support compiling with a C++ compiler. The macros 'likely' and 'unlikely' were added to if-statements checking for exception conditions. The compiler was improved to generate better code when accessing an array element when the array is result of another computation.
Release Notes: The comanche.sd7 Web server was improved to support CGI programs. The chapter explaining "operating system access" in the manual was improved. The function "getCgiParameters(file)" was added to "cgi.s7i". The functions "setenv" and "file(PROGRAM)" were added to "seed7_05.s7i". The interpreter and the compiler were improved to support the function "getenv". Several changes were done to support compiling with a C++ compiler. The compiler (comp.sd7) was improved to generate runtime library prototypes with constant types. The function timFromIntTimestamp was introduced in "tim_rtl.c".
Release Notes: The function convDosPath was added to the "seed7_05.s7i" library. It converts a path with backslashes and drive letters to the standard path representation. Functions with path parameters or path result were improved to accept and return file paths with the standard path representation. The functions path(PROGRAM) and dir(PROGRAM) were added to the "seed7_05.s7i" library. The function path(PROGRAM) returns the absolute path of the program. The function dir(PROGRAM) returns the directory containing the program. The function getenv was improved to work with Unicode environment variables.
Release Notes: The chapter explaining exception handling in the manual was improved. The support for bitmap fonts was improved to use fontProperties as base type. The '-' function, which computes the differance of two 'time' values (with a 'duration' result) in "time.s7i", was improved. In the file "fil_rtl.c" the functions myLseek, myFseek, and myFtell were renamed to os_lseek, os_fseek, and os_ftell respectively. The makefiles were changed to define os_fseek, os_ftell, C_COMPILER_VERSION, and GET_CC_VERSION_INFO. Documentation comments were added to the function alternate_utime in the file "tim_win.c".
Release Notes: The chapter explaining string indexing in the manual was improved. The compiler (comp.sd7) and the hi interpreter were improved to support the actions "ITF_CMP" and "ITF_HASHCODE". The compiler was improved such that compiled programs that use SIGALARM (the functions 'wait' and 'await' from the "time.s7i" library may use SIGALARM) can be terminated with ctrl-c followed by * and enter. Parameter names were added to the prototypes in the file "drw_drv.h". The function drwPFArcPieSlice in "drw_win.c" was implemented. The functions drwFCircle and drwPFCircle in "drw_x11.c were improved.
Release Notes: The chapter explaining the type 'time' in the manual was improved. The support for source level debugging in the compiler (comp.sd7) was improved. Now the option -g generates better #line directives, and the 'main' function was arranged such that the current line shown by a debugger is correct when the program is started. In the "seed7_05.s7i" library, the function "rpos" was overloaded to do a reverse search for a character in a string starting from a given position. The files "str_rtl.c", "strlib.c", "primitiv.c", and the compiler were improved to support the primitive action STR_RCHIPOS.
Release Notes: Two example programs (dragon.sd7 and fractree.sd7), which draw a dragon curve and a fractal tree, were added. The chapters explaining the types 'time' and 'duration' in the manual were improved. The '-' function, which computes the difference of two 'time' values (with a 'duration' result) in "time.s7i", was improved. Several functions in "time.s7i" were added or renamed. The makefiles were improved to determine the size and the signedness of time_t values. The functions 'timToTimestamp' and 'timSetLocalTZ' in "tim_rtl.c" were improved to take the size and signedness of time_t into account.
Release Notes: The first steps towards support of variable functions and closures in the compiler ("comp.sd7") were made. The generation of code for 'for' loops and the 'div' operator in the compiler was improved. The compiler function 'getTemporaryToResultExpr' was improved to generate code without casts from 'floattype' to 'generictype'. The function 'rand_32' in "int_rtl.c" was renamed to 'uint_rand' and improved to work better for 64-bit integers. A bug that could occur when a saved game is loaded was fixed in "castle.sd7". Tests for conversions from integer to float were added to "chkflt.sd7".
Release Notes: The Seed7 interpreter (hi) was improved to support stack traces with function call notation. The "progs.s7i" library was improved to support indexing and 'for' loops for 'bstring' values. Indexing tests for constant arrays were added to the "chkexc.sd7" program. The compiler was improved to create dynamic dispatcher functions, which copy a struct value when necessary. The compiler ("comp.sd7") was improved to initialize constant 'bstring' values correctly. The compiler option -e was improved to create an executable that sends a signal when an uncaught exception occurs.
Release Notes: Documentation comments were added to several libraries. An option to enable exception tracing (-te) was added to the compiler. The interpreted for-loop was improved such that loop variables have correct values when exceptions occur. The performance of several string functions in "str_rtl.c" was improved. The functions "bigIncr" and "bigDecr" in "big_rtl.c" were improved to work as transactions in out-of-memory situations. The compilation of programs with huge array constants was speeded up. The macro "unlikely" was added to if statements which check for error conditions in several files.