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.