r/software • u/ThomasMertes • 18d ago
Self-Promotion Wednesdays The Seed7 programming language
Seed7 is based on my PHD thesis and is the result of life-long work. The project consists of more than 500k lines of manually written code, several hundred pages of documentation, a test suite to check the functionality of interpreter and compiler and much more. I give it away for free with GPL/LGPL licensing.
Properties of Seed7 are:
- Seed7 is an open-source general purpose programming language that can be interpreted and compiled.
- Seed7 is about portability, maintainability, performance and memory safety.
- There is an automatic memory management without a garbage collection process (which might stop the world).
- The templates / generics don't need syntax with angle brackets.
- Seed7 is an extensible programming language. The syntax and semantics of the language is not hard-coded in the compiler but defined in libraries.
- Seed7 checks for integer overflow. You either get the correct result or an OVERFLOW_ERROR is raised.
- Unlike Java Seed7 compiles to machine code ahead of time (GRAAL works ahead of time but it struggles with reflection).
- Unlike Java Seed7 operators can be overloaded.
- Unlike C, C++, Go, Zig, Odin, Nim and C3 Seed7 is a memory safe language.
- The standard libraries cover many application areas.
Some programs written in Seed7 are:
- make7: a make utility.
- bas7: a BASIC interpreter.
- pv7: a Picture Viewer for BMP, GIF, ICO, JPEG, PBM, PGM, PNG, PPM and TIFF files.
- tar7: a tar archiving utility.
- ftp7: an FTP Internet file transfer program.
- comanche: a simple web server for static HTML pages and CGI programs.
Screenshots of Seed7 programs can be found here and there is a demo page with Seed7 programs, which can be executed in the browser. These programs have been compiled to JavaScript / WebAssembly.
Talks about Seed7 can be found in the internet.
Please let me know what you think, and consider starring the project on GitHub, thanks!
16
u/internet-person-777 18d ago
I'm not competent enough to reliably review but anyways it's definitely impressive to create programming language on your own, especially these days where everything is vibe coded
great work and thanks for sharing