RPL/2 Changelog

New in version 4.1.16

November 29th, 2013
  • OpenMotif is now patched to correctly detect fontconfig.
  • Sqlite and ncurses are updated. rpl.inc is fixed.
  • rpl() now sends arguments to RPL/2 subroutines.
  • The rpl() prototype is fixed (rpl_home is an unsigned char *, not an unsigned char **).
  • GSL is upgraded.
  • A major bug is fixed in the READ intrinsic (it only occurs on Unix devices).

New in version 4.1.15 (September 6th, 2013)

  • RGDL and RGDR (ragged left and ragged right) new intrinsic functions have been added since 4.1.14.
  • A major bug is fixed in the initialization sequence (segfault).
  • It only occurs when RPL/2 is built with a forced localization.
  • EXIT regression is fixed,

New in version 4.1.14 (June 24th, 2013)

  • The number of pipes between process was reduced.
  • Gnuplot was upgraded and patched so that it can be built without a texinfo error.
  • Libiconv was patched to support recent GLIBC (C11) versions.
  • Some race conditions were fixed. Sqlite was upgraded.
  • Major regressions were fixed in the IFERR/END structure and inin evaluation().
  • Local variables were exported to called definitions.
  • All users should upgrade to this release.

New in version 4.1.13 (April 2nd, 2013)

  • This version contains a lot of bugfixes and some minor improvements. All users should upgrade to 4.1.13.

New in version 4.1.12 (February 28th, 2013)

  • A minor bug inrecherche_type() was fixed. { "\"" } was not evaluated as expected as an inner quote was not escaped.
  • A new CIPHER intrinsic was added for performing key generation, decryption, and encryption.
  • CBC-CMAC and HMAC digests were added.
  • A DIGEST intrinsic was added.
  • Signal management on NetBSD was fixed.
  • RPL/CAS auto-configuration is upgraded.

New in version 4.1.11 (December 19th, 2012)

  • Shared and static variables are now stored in a tree.
  • Only giac/src is built in rplcas (giac/Makefile.am is modified).
  • Gnuplot, lapack, giac, units, and ncurses are upgraded.
  • Interprocess capabilities are removed when RPL/2 cannot run its initialization routine to keep operating system as clean as possible.
  • Signal management is rewritten to avoid a strange bug on NetBSD where a signal handler can be called within a special thread and not in the calling thread.
  • A major bug is fixed in STO intrinsic.
  • STO returns an error when it has to create a global variable if intrinsic none (default) is set.

New in version 4.1.10 (October 3rd, 2012)

  • FORALL intrinsic is added.
  • A major bug (deadlock) is fixed in CYCLE that only occurred when CYCLE is called to interrupt a loop from a subroutine within a compiled program.
  • There is a workaround to avoid strange bug on slow networks in READ intrinsic.
  • CRITICAL/END structure is added.
  • When a program enters in a critical section, all other threads of the same process sleep until the program leaves the critical section.

New in version 4.1.9 (August 23rd, 2012)

  • Tools are upgraded (giac, ncurses, sqlite, units, and lapack).
  • LENGTH*(...) format is fixed.
  • Some patches have been added to build RPL/2 on NetBSD.
  • Escaped characters are fixed in READ and WRITE operations.
  • A major bug is fixed in READ intrinsic (on socket) as End Of File condition was randomly caught on slow networks.
  • stdin can now handle espaced characters strings in SYSEVAL.
  • --with-gcc-version is added to the configure script to force the gcc version, as gfortran 4.7 is broken and crashes with a segmentation fault.

New in version 4.1.7 (April 17th, 2012)

  • Some minor bugs are fixed.
  • Double quotes are escaped in INPUT and PROMPT intrinsic functions.
  • An error is returned (instead of a warning) when an unavailable intrinsic function is called.
  • RPL/2 can now be cross compiled until Debian archive generation.
  • All table, vector, and matrix dimensions are now treated as unsigned long.
  • The recherche_type() function is modified to use cached memory.