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


Groups > comp.compilers > #2595

Seed7 Release 2020-08-30

From mertesthomas@gmail.com
Newsgroups comp.compilers
Subject Seed7 Release 2020-08-30
Date 2020-09-09 03:10 -0700
Organization Compilers Central
Message-ID <20-09-024@comp.compilers> (permalink)

Show all headers | View raw


Hello,

I have released a new version of Seed7: seed7_05_20200830.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 file README.md, which uses the markdown format, has been added.
- Answers to seven new questions have been added to the FAQ.
- Descriptions of array, hash, set and struct in the manual have been
  improved to contain examples of type declaration and usage.
- In array.s7i the functions remove() and insert() have been improved
  to avoid copying whole elements.
- The string slice functions have been changed to raise INDEX_ERROR for
  negative indices or lengths.
- The array slice functions have been changed to raise INDEX_ERROR for
  negative indices or lengths.
- In chkstr.sd7 the tests for string slices have been adjusted to the
  new behavior.
- The example program chkidx.sd7 has been added. This program checks
  if INDEX_ERROR is correctly raised for string operations.
- The example program chkarr.sd7 has been added. This program checks
  if array operations work correct.
- The program chk_all.sd7 has been improved to call and check the new
  programs chkidx.sd7 and chkarr.sd7.
- Compiler and interpreter have been improved to support the actions
  ARR_INSERT, ARR_INSERT_ARRAY and ARR_REMOVE_ARRAY.
- The compiler has been improved to support name parameters with
  varfunc instead of func.
- The file comp/arr_act.s7i has been improved to support ARR_INSERT,
  ARR_INSERT_ARRAY and ARR_REMOVE_ARRAY.
- The file comp/str_act.s7i has been improved to support the changed
  string slice functions.
- The functions arr_insert(), arr_insert_array() and arr_remove_array()
  have been added to arrlib.c. These functions work without copying
  whole elements. Instead a memmove() is used on a part of the array to
  move object records.
- The functions arrInsert(), arrInsertArray() and arrRemoveArray() have
  been added to arr_rtl.c. These functions work without copying whole
  elements. Instead a memmove() is used on a part of the array to move
  64-bit elements.
- The functions addCopiedStriToArray() and addCopiedStriToRtlArray()
  in strlib.c respectively str_rtl.c have been improved to scale
  better. Now these functions double the array size every time a
  realloc() is necessary. In the end the size is reduced to the actual
  array size.
- In strlib.c the functions str_head(), str_range(), str_substr() and
  str_tail() have been improved to check for INDEX_ERROR.
- In str_rtl.c the function strHeadSlice(), strHead(), strHeadTemp(),
  strRangeSlice(), strRange(), strSubstrSlice(), strSubstr(),
  strTailSlice() and strTail() have been improved to check for
  INDEX_ERROR.
- The function strTailTemp() has been added to str_rtl.c. This function
  is used by the compiler to optimize expressions like: s := s[n ..];
- In cmd_rtl.c the functions cmdMkdir(), cmdRemoveFile(),
  cmdRemoveTree(), cmdSetATime(), cmdSetFileMode(), cmdSetMTime() and
  cmdSymlink() have been improved.
- In cmd_unx.c the memory management of cmdSetGroup() and cmdSetOwner()
  has been improved.

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 2020-08-30 mertesthomas@gmail.com - 2020-09-09 03:10 -0700

csiph-web