Seed7

Software Screenshot:
Seed7
Software Details:
Version: 2018-04-01 updated
Upload Date: 22 Jun 18
Developer: Thomas Mertes
Distribution Type: Freeware
Downloads: 20

Rating: 2.0/5 (Total Votes: 1)

Comparing it with Ada, C/C++ and Java, the Seed7 programming language is more powerful and versatile, as its developer describes it on the project’s website. It is capable of translating programs to C apps, which are then compiled into machine code. With Seed7, functions with type parameters and type results become more elegant than generics concept or templates.

Features at a glance

Key features include user-defined operators and statements, support for object orientation (multiple dispatch and interfaces), support for debugging source code, strong typing support, exception handling support, overloading of procedures, statements, operators and functions, as well as support for various predefined types, such as resizable arrays, bitsets, hashes, structs, time, color, duration, etc.

Additionally, Seed7 supports bigRational and bigInteger types for numbers, allows users to easily define generics and templates without using a special syntax, and it comes with predefined constructs, such as for-loops and arrays. Another interesting feature is that the software allows developers to create programs that are portable from the get-go, without having to modify the source code.

Automatic memory management

Seed7 also comes with automatic memory management functionality, which works out-of-the-box without having to use a garbage collector. In addition, the software helps developers to easily find errors when compiling their programs, thanks to the absence of automatic casts and static type checking.

Supported OSes, licenses and availability

Seed7 runs under any GNU/Linux operating system, as well as various UNIX and Microsoft Windows OSes. It is good to know that while the runtime library is distributed under the LGPL license, the interpreter and the example programs are available for download with a GPL license.

What is new in this release:

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version :

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version 2016-04-30:

New in Seed7 2014-01-19 (January 20th, 2014)

What is new in version 2016-03-30:

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version 2016-02-29:

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version 2016-01-30:

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version 2015-11-29:

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version 2015-09-14:

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version 2015-07-05:

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version 2015-06-01:

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version 2015-05-03:

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version 2015-02-16:

  • The manual chapter describing the foreign function interface has been improved.
  • The handling of Unicode in the console has been improved.
  • All strings which are passed to C functions are checked now.
  • The performance of several runtime functions has been improved.
  • New flexible conversion functions have been added to bytedata.s7c.
  • Documentation comments have been added or improved in several files.
  • The program chk_all.sd7 has been improved to check several compiler options.
  • The compiler has been improved to do more optimizations.
  • Checks have been added to chkbig.sd7, chkexc.sd7, and chkflt.sd7.

What is new in version 2014-01-19:

  • The library tdes.s7i with Triple DES cipher support has been added.
  • The library tls.s7i has been improved to accept CertificateRequest messages.
  • Checks for mdiv and mod have been added to chkbig.sd7.
  • The compiler has been improved to do more optimizations for if-statements, the action BIG_MOD (operator mod), and BIG_MDIV (operator mdiv).
  • New functions to open files have been introduced in various libraries.
  • The old functions are still supported, but they are deprecated.
  • Documentation comments have been added or improved in various files.
  • The function getValue for boolean values has been added.

What is new in version 2014-01-05:

  • The library des.s7i with DES (Data Encryption Standard) cipher support has been added.
  • Several functions and support to write values have been added to bin32.s7i.
  • The new library unicode.s7i, with functions to convert between Unicode encodings, has been added.
  • The library gethttps.s7i has been improved to accept links to HTTP.
  • Several checks have been added to chkbig.sd7.
  • The compiler has been improved to do more optimizations for bigInteger functions.
  • A check for the keyword 'restrict' has been added to chkccomp.c.
  • The performance of UTF-8 conversion functions has been improved by up to 6%.

What is new in version 2013-12-22:

  • Consecutive calls of write in bas7.sd7 have been combined into single calls of write respectively writeln.
  • Several links have been added to the FAQ.
  • The types cardSuit and cardRank and the functions cardPixmap and cardBackside have been added to the library cards.s7i.
  • The library cards.s7i has been improved to use functions from pic_util.s7i.
  • The program carddemo.sd7 has been improved to use the new types and functions from cards.s7i.

What is new in version 2013-12-08:

  • Explanations regarding how Seed7 compares to Java and an elegant way to initialize data have been added to the FAQ.
  • Several functions have been moved from shell.s7i to the new library process.s7i.
  • The function commandPath has been added to process.s7i.
  • As a correction of a failure of Windows, the program chk_all.sd7 has been improved to catch an exception.
  • Several pictures have been added or improved in pic16.s7i and pic32.s7i.
  • The function cmdPipe2 in cmd_win.c has been improved to open stdin and stdout in text mode.
  • The function filInputReady has been improved to return TRUE after a hang up.

What is new in version 2013-11-24:

  • The library pic_util.s7i, with picture utility functions, has been added.
  • The pictures cancel_pic, folder_pic, and reset_pic have been added to pic16.s7i and pic32.s7i.
  • A function to convert a pixmap image to BMP format and the function getPixelColor have been added to draw.s7i.
  • All usages of the function clear without parameters have been replaced with clear(black).
  • The performance of the function strCLit in str_rtl.c has been improved by a factor of 10.
  • The functions init_bstri_constants and init_win_constants in s7c.sd7 have been improved.
  • Spelling errors in several files have been fixed.

What is new in version 2013-11-10:

  • Compiler and runtime library have been improved to work on Sparc
  • 64-bit machines under OpenBSD. Thanks go to Brian Callahan, for
  • his support and for providing access to his Sparc 64-bit machine.
  • The FAQ explanation concerning portability has been improved.
  • The new library cc_conf.s7i has been added. This library manages
  • configuration values for C compiler and runtime.
  • The compiler has been improved to use the library cc_conf.s7i.
  • The chapter about the defines used in version.h has been improved
  • in src/read_me.txt.
  • The type rtlGenerictype has been renamed to generictype in the
  • files of the runtime library. Now compiler and runtime library
  • both use the name generictype.
  • The function checkForLimitedStringLiteralLength, a check for
  • trigraph sequences and checks for the presence of getrlimit()
  • and siglongjmp() have been added to chkccomp.c.
  • The function setupStack has been added to cmd_rtl.c. This function
  • tries to raise the stack limit to STACK_SIZE.
  • Usages of USE_SIGSETJMP have been renamed to HAS_SIGSETJMP.
  • The table key_code has been improved in kbd_inf.c and kbd_poll.c.
  • Now the erase char of the terminal interface (VERASE) is always
  • returned as backspace (KEY_BS respectively '8'). This improves
  • the behavior under Cygwin.
  • The function utf8_init has been changed in kbd_inf.c and
  • kbd_poll.c to assume UTF-8 mode when no locale environment
  • variable is set.
  • The function msgDigest in msgdigest.s7i has been changed to use
  • in-parameters.
  • The function configValue has been moved from osfiles.s7i to
  • cc_conf.s7i.
  • The macro REALLOC_STRI_SIZE_SMALLER has been added to heaputl.h.
  • Several usages of REALLOC_STRI_SIZE_OK in the runtime library have
  • been changed to usages of REALLOC_STRI_SIZE_SMALLER.
  • The compiler has been improved to initialize boolean and
  • enumeration elements of structs with the values value.boolvalue
  • respectively value.enumvalue. This is necessary to work correctly
  • on big-endian systems.
  • Interpreter and compiler have been improved to support the actions
  • ACT_EQ and ACT_NE.

What is new in version 2013-10-27:

  • The compiler and runtime library have been improved to support big-endian systems.
  • The documentation in src/read_me.txt has been improved.
  • The library tls.s7i has been improved to avoid raising an exception, when the remote side closes the socket.
  • Documentation comments have been added or improved in several source files.
  • Several functions have been optimized.
  • The function typNum has been improved to use a hashtable.
  • The functions typ_num and typ_str have been improved to call typNum respectively typStr.
  • Support for the actions ACT_ICONV and ACT_ORD has been added to the interpreter and compiler.

What is new in version 2013-10-13:

  • Libraries for TLS/SSL and HTTPS support have been added.
  • Comparison operators for < (proper subset) and > (proper superset) have been added to hashsetof.s7i.
  • The type digestAlgorithm and functions for it have been added to msgdigest.s7i.
  • The function hex has been added to bytedata.s7i.
  • The example program castle.sd7 has been improved.
  • Documentation comments have been added to several files.
  • The padding in the message digest functions of msgdigest.s7i has been corrected.
  • The function getHttp in gethttp.s7i has been improved to use a case-insensitive comparison for HTTP header field names.

What is new in version 2013-09-29:

  • The functions bStriLe, bytesLe, bStriBe, and bytesBe have been added to bytedata.s7i. These functions convert an integer to a sequence of bytes.
  • The compiler has been improved to generate inline code for the action STR_PUSH.
  • This action appends a character to a string (it is used by the operator &:= ).
  • Conversion functions have been added to time.s7i.
  • Checks for several operators and functions have been added to chkbig.sd7, chkint.sd7, and chkstr.sd7.
  • The function doLocalDeclsOfStatement has been added to the compiler. This function is used to simplify the processing of various statements.

What is new in version 2013-09-08:

  • The makefile mk_freebsd.mk has been added to support compilation under freeBSD.
  • Functions to convert between sequences of bytes and bigInteger numbers have been added to bytedata.s7i.
  • The functions bytesLeAsInt and bytesBeAsInt have been renamed to bytesLe2Int and bytesBe2Int.
  • Checks have been added to chkbig.sd7 and chkset.sd7.
  • The function bigRand in big_rtl.c has been improved to avoid conditions in which a random number is outside the required range.
  • Parameter names have been added to several files.
  • The compiler has been improved to use charvalue instead of intvalue when characters are initialized.

What is new in version 2013-08-20:

  • The sha1.s7i library was renamed to msgdigest.s7i.
  • The message digest and secure hash functions md4, md5, sha224, and sha256 have been added to msgdigest.s7i.
  • A new propertyfile.s7i library which defines functions for reading a property file into a hash table was added.
  • The performance of the random number generator was improved.
  • A bytesLeAsInt function was added to the bytedata.s7i library.
  • In bytedata.s7i, the int64AsBytesBytesLe function was renamed to int64AsEightBytesLe.
  • A variant of the skipWhiteSpace function was added to the scanfile.s7i library.

What is new in version 2013-07-22:

  • Spelling errors in chlog.txt, faq.htm, and faq.txt have been fixed.
  • The function conText (in con_win.c) has been improved to work correctly for long strings (when WriteConsoleW would fail).
  • Several functions have been moved from drw_win.c to the new file gkb_win.c.
  • Incorrect usages of inIntRange have been replaced with better code in drw_win.c.
  • In con_win.c, the table map_key has been improved such that kbdGetc recognizes the key F12.
  • The program chk_all.sd7 has been improved to call chkhsh.sd7.
  • The compiler has been improved to generate compare functions with the correct prototype.

What is new in version 2013-06-16:

  • Documentation comments have been added or improved in several files.
  • The functions lower and upper in string.s7i and char.s7i have been improved to use the default Unicode case mapping.
  • The performance of the deflate compression has been improved by a factor between 5 and 10.
  • The performance of the functions str_cmp, str_range, str_substr, strCompare, strRangeSlice, strRange, strSubstrSlice, and strSubstr has been improved.
  • Tests for several string functions have been added to chkstr.sd7.
  • The compiler has been improved to inline code for the actions STR_HASHCODE, STR_RANGE and STR_SUBSTR.

Screenshots

seed7_1_70722.png

Similar Software

PL/1 for GCC
PL/1 for GCC

2 Jun 15

Snake
Snake

12 May 15

GCC MELT
GCC MELT

17 Feb 15

byacc
byacc

3 Jun 15

Comments to Seed7

Comments not found
Add Comment
Turn on images!