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


Groups > comp.compilers > #1444 > unrolled thread

Seed7 Release 2014-12-07

Started bymertesthomas@gmail.com
First post2014-12-08 00:02 -0800
Last post2014-12-11 00:50 -0800
Articles 2 — 1 participant

Back to article view | Back to comp.compilers


Contents

  Seed7 Release 2014-12-07 mertesthomas@gmail.com - 2014-12-08 00:02 -0800
    Re: Seed7 Release 2014-12-07 mertesthomas@gmail.com - 2014-12-11 00:50 -0800

#1444 — Seed7 Release 2014-12-07

Frommertesthomas@gmail.com
Date2014-12-08 00:02 -0800
SubjectSeed7 Release 2014-12-07
Message-ID<14-12-001@comp.compilers>
Hello,

I have released a new version of Seed7: seed7_05_20141207.tgz 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 paragraph in src/read_me.txt, that desribes the compilation
  under Mac OS X, has been improved.
- The function bigIPow1 in big_rtl.c has been changed to call
  bigLog2BaseIPow instead of bigLShiftOne when the base is a power of
  two. This avoids an integer overflow when the shift count is
  computed.
- The function fltIPow in flt_rtl.c has been changed to avoid a
  division by zero when CHECK_FLOAT_DIV_BY_ZERO has been defined.
- The function fltIPow in flt_rtl.c has been improved to return
  -Infinity for (-0.0) ** n when n is negative.
- The function uint_rand (in int_rtl.c) has been renamed to uintRand
  and changed to ommit the initialisation of the random seed.
- The function setupRand has been added to int_rtl.c. This function
  initializes the random seed of uintRand.
- The function uintRandLimited has been added to int_rtl.c.
- The runtime of the integer random number generator has been reduced
  to 45%.
- The compiler has been improved to generate optimized code for
  special cases of the action INT_RAND. For special cases the
  functions uintRand and uintRandLimited are used instead of intRand.
- The compiler has been improved to optimize the binomial coefficient
  operator (infix operator symbol: ! ).
- Tests for the binomial coefficient (infix operator symbol: ! ) have
  been added to chkint.sd7 and chkovf.st7
- Tests for the integer random number generator have been added to
  chkint.sd7.
- Tests for powers of negative zero have been added to chkflt.s7i.
- The database interface headers db_lite.h, db_my.h, db_oci.h,
  db_odbc.h and db_post.h have been added. This include files are
  used when the original database include files are not available.
- The functions decimalValue and basedValue in numlit.c have been
  improved to use an unsigned integer value and a simplified test for
  the maximum value of a literal. The change reduces the runtime of
  decimalValue by 6% (measured with gcc and valgrind).
- The function intBinom (in int_rtl.c) has been improved to work
  correctly as long as the result is representable in an integer of
  type intType. When the result is not representable in an integer
  the exception OVERFLOW_ERROR is raised.
- The function uintBinomNoChk has been added to int_rtl.c. This
  special case function is used by the compiler, when n_number is
  less than a limit.
- The function intSafeMult has been renamed to intMultOvfChk.
- The makefile mk_osxcl.mak has been added. This makefile supports
  compilation under Mac OS X with the clang compiler.
- The file sql_ite.c has been renamed to sql_lite.c.
- The makefiles have been improved to write additional macros to
  chkccomp.h. This macros are used by chkccomp.c to do the database
  investigation.
- The database drivers sql_lite.c, sql_my.c, sql_oci.c, sql_odbc.c
  and sql_post.c have been improved.
- The configuration program chkccomp.c has been improved:
  - Now it writes definitions of INT8TYPE and INT16TYPE to version.h.
  - Now it adds /opt/X11/include to the include path, when
    /usr/include/X11 does not exist. This is required for Mac OS X.
  - The functions that write define macros for databases have been
    improved to take the new database interface headers (db_*.h) into
    account.

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.

[toc] | [next] | [standalone]


#1445

Frommertesthomas@gmail.com
Date2014-12-11 00:50 -0800
Message-ID<14-12-002@comp.compilers>
In reply to#1444
On Tue, 2014-12-09 23:39:21 UTC+1 mertes...@gmail.com wrote:
> Hello,
>
> I have released a new version of Seed7: seed7_05_20141207.tgz 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 version 2014-12-07 has some issues with building under Windows.
This has to do with database drivers and initialization values in
makefiles. To fix that I released version 2014-12-10:
seed7_05_20141210.tgz

ChangeLog:
- The database drivers sql_lite.c, sql_my.c, sql_oci.c, sql_odbc.c
  and sql_post.c have been improved to select a shared library / DLL
  from a list of candidates.
- The program chkccomp.c has been improved to configure database
  drivers with a list of shared libraries / DLLs.
- The makefiles mk_bcc32.mak, mk_bccv5.mak, mk_msvc.mak, mk_msys.mak,
  mk_mingc.mak, mk_mingw.mak and mk_nmake.mak have been improved to
  write definitions of the C macros MYSQL_DLL, SQLITE_DLL and
  POSTGRESQL_DLL to the file chkccomp.h.
- The chapters about integer, rational and exceptions in the manual
  have been improved.
- In bigint.s7i the performance of the binomial coefficient operator
  (infix operator symbol: ! ) has been improved by 17% (measured with
  gcc and valgrind).
- The optimization of constant expessions in the compiler has been
  improved.
- The program esc2qte.c has been added. This program searches for
  backslash escaped spaces and quotes the string instead. It is used
  by mk_nmake.mak to process the file depend.
- Documentation comments in integer.s7i have been improved.
- The recognition of integer formats in chkccomp.c has been improved
  (the test programs now include <string.h>).
- The makefiles mk_msys.mak and mk_nmake.mak have been improved to
  use wrdepend.exe to determine the dependencies.
- The program wrdepend.c has been changed to include config.h (this
  way the macro MAP_ABSOLUTE_PATH_TO_DRIVE_LETTERS is available).
- A cast has been added to sudo.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.

[toc] | [prev] | [standalone]


Back to top | Article view | comp.compilers


csiph-web