Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > comp.compilers > #1974

Seed7 Release 2018-03-04

From mertesthomas@gmail.com
Newsgroups comp.compilers
Subject Seed7 Release 2018-03-04
Date 2018-03-04 14:46 -0800
Organization Compilers Central
Message-ID <18-03-017@comp.compilers> (permalink)

Show all headers | View raw


Hello,

I have released a new version of Seed7: seed7_05_20180304.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:
- In fil_rtl.c and ut8_rlt.c the functions filLineRead, filWordRead,
  ut8LineRead and ut8WordRead have been improved to use
  getc_unlocked() instead of getc(). This way the performance of the
  functions has been improved by a factor of 2 (filLineRead has been
  measured with gcc and valgrind).
- In listutl.c the performance of the function copy_list has been
  improved by 15% (measured with gcc and valgrind).
- In getf.s7i the performance of the function readf has been improved
  by a factor of 4 (measured with gcc and valgrind).
- The functions free_helem and free_hash in hshlib.c have been
  improved to stop searching for helems as soon as the last helem
  has been freed. This improves the performance free_hash by 36%
  (measured with gcc and valgrind).
- In fil_rtl.c the function read_and_alloc_stri and filGets have been
  improved to have less usages of err_info and num_of_chars_read.
- In soc_rtl.c the function receive_and_alloc_stri has been improved
  to have less usages of err_info and better logError messages.
- In hsh_rtl.c and hshlib.c the function create_hash has been
  improved to use memset to initialize empty hash tables.
- The functions bstCmp, genericCmp, ptrCmp, rflCmp and typCmp have
  been improved to use a result variable named signumValue.
- Interpreter and compiler have been improved to support the actions
  ACT_ICONV1, ACT_ICONV3, INT_ICONV1, INT_ICONV3 and REF_HSHLENGTH.
- The libraries integer.s7i, bin32.s7i, bin64.s7i, category.s7i and
  graph.s7i have been improved to use the new primitive actions.
- The function boolean(), which converts a string to a boolean value,
  has been added to boolean.s7i.
- The function char(), which converts a string to a char value, has
  been added to char.s7i.
- The function float(), which converts a string to a float value, has
  been added to float.s7i.
- The compiler has been improved to support the actions ACT_GEN and
  TYP_VARFUNC.
- The compiler now uses the function process_call_by_name_expr to
  create code for loop conditions, loop bodies and other call by name
  parameters.
- The functions process_match and process_inline_param have been
  added to the compiler.
- The compiler has been improved to implement functions, which just
  call one of the special actions HSH_CONTAINS, HSH_EXCL, HSH_INCL,
  HSH_KEYS, SET_BASELIT, SET_CONV, SET_ELEM, SET_EXCL, SET_INCL,
  SET_NOT_ELEM, as inline functions. This allows optimizations for
  the types set of char and set of string.
- The compiler has been improved to optimize the action HSH_CONTAINS,
  when the hash table is constant.
- The compiler optimizations for the actions SET_ELEM and
  SET_NOT_ELEM have been improved.
- A test, that checks for-loops over hash tables, has been added to
  chkhsh.sd7.
- Set membership tests for char and string have been added to
  chkset.sd7.
- Functions to handle inline parameters have been moved from s7c.sd7
  to the new file comp/inline.s7i.
- The program chkccomp.c has been improved to determine the presence
  of the functions flockfile(), funlockfile() and getc_unlocked().
- The function match_object3 has been added to match.c. This function
  assures that BLOCKOBJECT and ACTOBJECT objects are always preceeded
  by a MATCHOBJECT.
- The action RFL_SETVALUE has been ranamed to RFL_SET_VALUE.
- Several C run-time library functions (in *lib.c files) have been
  renamed such that action name and function name correspond to each
  other.

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.

Back to comp.compilers | Previous | Next | Find similar


Thread

Seed7 Release 2018-03-04 mertesthomas@gmail.com - 2018-03-04 14:46 -0800

csiph-web