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


Groups > comp.compilers > #2031

Seed7 Release 2018-04-01

Path csiph.com!goblin3!goblin.stu.neva.ru!news.misty.com!news.iecc.com!.POSTED.news.iecc.com!nerds-end
From mertesthomas@gmail.com
Newsgroups comp.compilers
Subject Seed7 Release 2018-04-01
Date Sun, 1 Apr 2018 23:43:15 -0700 (PDT)
Organization Compilers Central
Lines 93
Sender news@iecc.com
Approved comp.compilers@iecc.com
Message-ID <18-04-001@comp.compilers> (permalink)
Mime-Version 1.0
Content-Type text/plain; charset="UTF-8"
Injection-Info gal.iecc.com; posting-host="news.iecc.com:2001:470:1f07:1126:0:676f:7373:6970"; logging-data="54575"; mail-complaints-to="abuse@iecc.com"
Keywords available, OOP
Posted-Date 03 Apr 2018 11:15:09 EDT
X-submission-address compilers@iecc.com
X-moderator-address compilers-request@iecc.com
X-FAQ-and-archives http://compilers.iecc.com
Xref csiph.com comp.compilers:2031

Show key headers only | View raw


Hello,

I have released a new version of Seed7: seed7_05_20180401.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:
- The new library logfile.s7i has been added. It defines the interface
  logFile. A logFile works like a normal file unless the log file
  has the value STD_NULL. When a logFile has the value STD_NULL string
  expressions written to the logFile are not evaluated. This reduces
  the overhead, when logging is turned off.
- The bas7.sd7 (basic interpreter) example program has been improved.
  The logging is now done via the new logFile type. This improves the
  performance, when no logging is done. Several DATA statements in one
  line are processed correctly now. Support for IF GOSUB and DISPLAY
  statements and for the function COMMAND$ has been added.
- Tests of nested bigInteger for loops have been added to chkbig.sd7.
- A test with the assignment of a hash variable to itself have been
  added to chkhsh.sd7.
- Tests of the replace function have been added to chkstr.sd7.
- In striutl.c the functions conv_from_os_stri, cstri8_to_stri and
  cstri8_buf_to_stri have been improved. Now they call realloc()
  only, when the size has changed. This improves the performance of
  conv_from_os_stri by 32% (measured with gcc and valgrind, when
  reading a directory).
- In str_rtl.c the function strUtf8ToStri has been improved to call
  realloc() only, when the size has changed.
- In cmd_rtl.c the functions add_stri_to_array and
  complete_stri_array have been renamed to addStriToRtlArray and
  completeRtlStriArray respectively. The renamed functions have also
  been improved to work with a simpler parameter list. Together with
  the improvement of conv_from_os_stri this improves the performance
  of cmdLs by 14% (measured with gcc and valgrind, when reading a
  directory).
- In cmdlib.c the function cmd_ls has been rewritten to be based on
  cmdLs. The functions cmp_mem and read_dir have been removed.
- In cmdlib.c the main loop in the function toArrayType has been
  optimized for performance.
- In str_rtl.c the function add_stri_to_array has been renamed to
  addCopiedStriToRtlArray and the function completeRtlStriArray has
  been introduced. The code of addCopiedStriToRtlArray has also been
  improved to work with a simpler parameter list.
- In strlib.c the function add_stri_to_array has been renamed to
  addCopiedStriToArray and the functions freeStriArray and
  completeStriArray have been introduced. The code of
  addCopiedStriToArray has also been improved to work with a simpler
  parameter list.
- The compiler has been improved to optimize the action HSH_CONTAINS,
  when the hash table is constant and contains one element.
- In the compiler (in comp/const.s7i) the actions BLN_ORD, CHR_ICONV1,
  CHR_ORD and INT_ODD have been added to the list of special actions.
  The compiler implements functions, which just call one of the
  special actions as inline functions. This allows optimizations for
  the boolean and char random number generator.
- The compiler (s7c) has been improved (in comp/destr.s7i) to define
  interface destructors, which take all possible implementation
  types into account. Additionally a switch statement is used instead
  of an if-then-else chain. Double entries are also avoided now.
- The function strChRepl has been added to str_rtl.c.
- The compiler has been improved to use strChRepl instead of strRepl,
  to optimize split operations.
- Unnecessary function parameters have been removed in several
  include files of the compiler.
- In flt_rtl.c the function doubleToCharBuffer has been improved to
  determine the integer value of the exponent without calling
  strtol().
- The function freeRtlStriArray has been added to arr_rtl.c.
- Several #define flags in pol_sel.c have been improved.
- The macro CSTRI_LITERAL_TO_STRI has been defined in striutl.h and
  used in analyze.c, arr_rtl.c, cmd_rtl.c, cmd_unx.c, infile.c,
  pcs_unx.c and pcs_win.c.
- Calls of logError have been added to functions in cmd_rtl.c,
  con_inf.c, prclib.c, soc_rtl.c, tim_dos.c, tim_rtl.c, tim_unx.c and
  tim_win.c.
- Documentation comments have been added or improved in cmdlib.c,
  int_rtl.c and tim_rtl.c.

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-04-01 mertesthomas@gmail.com - 2018-04-01 23:43 -0700

csiph-web