Related articles |
---|
Seed7 Release 2019-12-29 mertesthomas@gmail.com (2019-12-29) |
From: | mertesthomas@gmail.com |
Newsgroups: | comp.compilers |
Date: | Sun, 29 Dec 2019 10:14:51 -0800 (PST) |
Organization: | Compilers Central |
Injection-Info: | gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="6946"; mail-complaints-to="abuse@iecc.com" |
Keywords: | OOP, available |
Posted-Date: | 30 Dec 2019 11:28:57 EST |
Hello,
I have released a new version of Seed7: seed7_05_20191229.tgz
The download is here: https://sourceforge.net/projects/seed7/files
In the Seed7 programming language new statements and operators can
be declared easily. Types are first class objects and therefore
templates/generics need no special syntax. Object orientation is used
when it brings advantages and not in places when other solutions are
more obvious.
Seed7 is covered by the GPL (and LGPL for the Seed7 runtime library).
Changelog:
- Spelling corrections have been done in several files. Many thanks go
to Jens Schleusener, for sending a source code misspelling report
from Fossies.
- The memory management has been improved:
- In exec.c the functions res_restore() and exec_action() have been
improved to free unneeded memory, in case an exception has been
raised.
- In prclib.c the functions prc_block(), prc_block_catch_all() and
prc_block_otherwise() have been improved to free the
fail_expression, in case an exception has been caught.
- In numutl.c the function getDecimalBigRational() has been improved
to free the temporary string.
- In sql_rtl.c the function sqlColumnBigRat() has been improved to
free the old values of numerator and denominator.
- In sql_base.s7i the function openDatabase() with DB_ODBC and dbPath
has been improved to use a DSN (data source name), if colon and slash
are missing. E.g.: openDatabase(DB_ODBC, "anyDsn", "test", "test")
- The compiler has been improved to support the action PRC_HEAPSTAT.
- In flistutl.c the functions heapStatistic() and check_heap() have
been improved to consider processes, sql functions, databases,
prepared statements and fetched data. The function heap_statistic()
has been renamed to heapStatistic().
- In sql_cli.c the functions sqlColumnBigInt(), sqlColumnBigRat(),
sqlColumnBStri(), sqlColumnFloat() and sqlColumnStri() have been
improved to check, if the length returned by the database is greater
than the buffer_length. In this case a DATABASE_ERROR is raised.
- In sql_cli.c the function setDecimalBigRat() has been improved to
convert integers to a string without decimal point.
- The function SQLGetFunctions() has been removed from db_odbc.h,
sql_cli.c and the makefiles (variable OBJCOPY_PARAMS).
- In sql_cli.c the element SQLDescribeParam_supported has been removed.
Instead the function pointer of SQLDescribeParam is checked and the
result of SQLDescribeParam() is compared with SQL_SUCCESS.
- In sql_odbc.c the function driverConnect() has been improved to
search only for a driver, if the driver name is not empty.
- In sql_odbc.c the function sqlOpenOdbc() has been improved to use
the dbName as DSN (data source name) only, if no driver and no server
are given.
- In sql_post.c the function setupDll() has been improved to call
dllOpen() instead of a recursive call of setupDll().
- The new macro ALLOC_RECORD2() has been added to heaputl.h. The macro
is used in drw_win.c, drw_x11.c, sql_cli.c, sql_fire.c, sql_lite.c,
sql_my.c, sql_oci.c and sql_post.c.
- The new macros COUNT_GROW_STRI() and COUNT_SHRINK_STRI() have been
added to heaputl.h. This macros are currently empty. They are planned
for a heap statistic concerning unused chars in strings with
capacity.
- In chkccomp.c several improvements have been done. In
determineFireDefines() a search for the Firebird home directory has
been added. In determineDb2Defines() the environment variable
DB2_HOME is used now, to determine the Db2 home directory. In
determineConsoleDefines() and determineSqlServerDefines() the list
of DLLs has been improved.
- The heap statistic for strings has been improved to use the string
capacity instead of the string size.
- The file config.h has been changed to define the macros
USE_ALTERNATE_NEXT_CHARACTER, USE_INFILE_BUFFER, USE_CHUNK_ALLOCS,
USE_ALTERNATE_CHUNK_ALLOCS and USE_MAXIMUM_MALLOC_CHECK always. Now
these macros can have a value of 0 or 1.
Regards,
Thomas Mertes
--
Seed7 Homepage: http://seed7.sourceforge.net
Seed7 - The extensible programming language: User defined statements
and operators, abstract data types, templates without special
syntax, OO with interfaces and multiple dispatch, statically typed,
interpreted or compiled, portable, runs under linux/unix/windows.
Return to the
comp.compilers page.
Search the
comp.compilers archives again.