Related articles |
---|
Seed7 Release 2017-03-28 mertesthomas@gmail.com (2017-03-29) |
From: | mertesthomas@gmail.com |
Newsgroups: | comp.compilers |
Date: | Wed, 29 Mar 2017 00:24:46 -0700 (PDT) |
Organization: | Compilers Central |
Injection-Info: | miucha.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="14451"; mail-complaints-to="abuse@iecc.com" |
Keywords: | OOP, available |
Posted-Date: | 29 Mar 2017 10:36:02 EDT |
Hello,
I have released a new version of Seed7: seed7_05_20170328.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:
- A chapter about signals has been added to the manual.
- The handling of ctrl-c (respectively the signal SIGINT), when s7 or
s7c are used with the option -ts, has been improved:
- A dialog offers several possibilities: Continue, terminate,
trigger SIGFPE or raising an exception.
- If the program was waiting for an input at the console the input
can be entered again.
- Under windows signal handler and the program that waits for an
input are synchronized now.
- The library aes.s7i with AES (Advanced Encryption Standard) cipher
support has been improved to support key lengths of 192 and 256
bits.
- The library tls.s7i has been improved to support the cipher suits
TLS_RSA_WITH_AES_256_CBC_SHA, TLS_RSA_WITH_AES_128_CBC_SHA256 and
TLS_RSA_WITH_AES_256_CBC_SHA256.
- The performance of the function bigMultAssign in big_rtl.c has been
improved by a factor of 22 (measured with gcc and valgrind when
big1 := 123456789_**123456; big1 *:= 123456789_**123456; is
computed). Now Karatsuba multiplication is used to compute *:= .
- The functions wildcardMatch and findMatchingFiles have been moved
from cli_cmds.s7i to the new library wildcard.s7i.
- The function flush has been added to pixmap_file.s7i.
- The signal handling of interpreted and compiled programs has been
unified. Now the signal handling is done in sigutl.c.
- Sigutl.c has been moved from the library s7_comp.a to the run-time
library seed7_05.a.
- Code to generate signal handling functions has been removed from
s7c.sd7.
- The functions kbdKeyPressed and kbdGetc in con_win.c have been
rewritten to use Win32 functions (PeekConsoleInputW and
ReadConsoleInputW) instead of functions from conio.h (kbhit and
getch). The include directive for conio.h has been removed.
- Code to use conio.h has been moved from con_win.c to con_con.c.
- In fil_win.c the function stdinReady has been added and calls of
kbhit have been replaced by calls of stdinReady. The include of
conio.h has been removed.
- Checks that test if NaN is returned as error value for math
functions have been added to chkflt.sd7.
- Checks that test if sqrt of a negative number raises NUMERIC_ERROR
have been added to chkbig.sd7 and chkint.sd7.
- Checks for sqrt have been added to chkint.sd7.
- Checks for *:= have been added to chkbig.sd7.
- The configuration value SQRT_FUNCTION_OKAY has been added to
cc_conf.s7i.
- The program esc2qte.c has been improved to avoid generating output
with a newline character inside a quoted part.
- The function readChar has been renamed to readCharChkCtrlC and
moved from fil_rtl.c to fil_unx.c and fil_win.c.
- The function readCharFromTerminal has been added to fil_rtl.c.
This function allows to re-enter the input, when a program is
resumed after a ctrl-c.
- The functions doLineRead and doWordRead have been removed from
fil_rtl.c. The content of this functions has been moved to
filLineRead respectively filWordRead.
- The function fltSqrt has been added to flt_rtl.c. This function
checks for negative arguments. This avoids a bug of MinGW-w64 where
sqrt(-2.0) returns -2.0 instead of NaN.
- The configuration value SQRT_FUNCTION_OKAY has been added to
cc_conf.s7i.
- The compiler (s7c) has been improved to use fltSqrt when
SQRT_FUNCTION_OKAY is FALSE.
- The functions sqlCpyDbGeneric, sqlCpyStmtGeneric,
sqlCreateDbGeneric, sqlCreateStmtGeneric, sqlDestrDbGeneric and
sqlDestrStmtGeneric have been added to sql_rtl.c.
- The function suspendInterpreter has been added to exec.c.
- The function uncaught_exception has been added to runerr.c.
- In executl.c the functions old_do_create, do_create, do_destroy,
old_do_copy and do_copy have been improved. Now the functions write
a message about an uncaught exception, when the function fails and
exception tracing is switched on.
- The file stat_drv.h has been improved to optionally define the
st_mode macros and the struct stati64Ext.
- In stat_win.c the function fstati64Ext has been improved to use
os_fstat_orig or for work without os_fstat_orig.
- In chkccomp.c the code that searches for the MySql include file
has been fixed.
- The program chkccomp.c has been improved to define the macros
likely, unlikely, NORETURN, INTPTR_T_DEFINED, FLOAT_ZERO_DIV_ERROR,
FREXP_INFINITY_NAN_OKAY and LIMITED_CSTRI_LITERAL_LEN always.
- The program chkccomp.c has been improved to define the macro
DIGRAPH_SEQUENCES_ARE_REPLACED.
- The file config.h has been changed to define the macros
WITH_STRI_CAPACITY, ALLOW_STRITYPE_SLICES, ALLOW_BSTRITYPE_SLICES,
WITH_LIST_FREELIST, WITH_NODE_FREELIST, WITH_FILE_FREELIST,
STACK_LIKE_ALLOC_FOR_OS_STRI, FLOATTYPE_DOUBLE,
MAP_ABSOLUTE_PATH_TO_DRIVE_LETTERS, FORBID_DRIVE_LETTERS and
EMULATE_ROOT_CWD always.
- At several places #ifdef has been replaced by #if to adopt to the
macros that are always defined.
- Documentation comments have been added or improved in big_rtl.c,
con_cap.c, con_con.c, con_cur.c, con_dos.c, con_rtl.c, con_tcp.c,
intlib.c, asn1.s7i and wildcard.s7i.
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.