Project presentation

The Klyn language, pronounced "clean", is a new programming language that seeks to synthesize the best aspects of the following languages:

  • Python: for the simplicity and compactness of its syntax
  • C++: for its strict typing, its support for generics, and above all its performance
  • Java: for its clean OOP model, its robustness, and its maintainability
  • C#: for its property system and several other pleasant parts of its syntax
  • Perl: for its regular expression syntax
Klyn visual presentation

I like to believe that Klyn takes these different aspects and combines them efficiently to produce a modern, efficient, readable, and maintainable language.

The place of AI in this project

Many people still doubt, or even do not believe, in the ability of AI to produce complex and high-quality code. To help challenge these concerns, I initiated this development project within DeepCodIA, a company specialized in AI-assisted development. I am convinced that such a project represents a very large challenge, even for human development teams already experienced in software engineering.

The Klyn project is therefore an experiment intended to evaluate the ability of current agentic AI systems to produce complex applications. The project is made up of several parts, all generated by AI:

  • The Klyn compiler and its runtime, written in C++
  • A set of native C++ libraries: klyn.io, klyn.net, klyn.cryptography, klyn.threading...
  • A set of complementary libraries written in the Klyn language itself*: klyn.gui.terminal, klyn.llm, klyn.database.sql...
  • A set of complementary tools also written in the Klyn language*: klyndoc, metrik (a source-code metrics tool)
  • A rich documentation set: user guide with tutorials and the API reference guide

(*) Note: when the project started, the Klyn language was unknown to every AI system that was used.

Only the testing part remained under my responsibility. That was my way of ensuring that the AI did not drift away from my language design choices.

Klyn and performance

Performance is a central goal of Klyn. The language is designed with static typing, native compilation, object-file caching, and concrete specialization of generic classes so that everyday Klyn code can move toward the execution profile expected from a serious systems-oriented language.

This work is still ongoing. In the current early-access release, not every execution path has reached the same level of optimization yet, especially in recently added libraries and higher-level runtime services. Performance work will therefore continue as a permanent part of the project: improving the compiler, reducing runtime overhead, and optimizing standard-library hot paths without weakening the language model.

Test Python Klyn --clean* Klyn C++ -O3
ComputePI
Computes 1500 digits of PI with a bounded-integer spigot algorithm.
1286.25 ms 138.30 ms 9.30x faster than Python 44.81 ms 28.71x faster than Python 26.83 ms 47.95x faster than Python
Mandelbrot
Renders a 1000x700 Mandelbrot set to a binary PPM image.
1011.16 ms 169.85 ms 5.95x faster than Python 59.98 ms 16.86x faster than Python 32.08 ms 31.52x faster than Python
Prime
Finds the first 400000 prime numbers with the Sieve of Eratosthenes.
1386.29 ms 116.70 ms 11.88x faster than Python 56.64 ms 24.47x faster than Python 16.20 ms 85.59x faster than Python
* Klyn --clean removes the local cache before each execution. This column measures the worst startup scenario: rebuilding generated objects and then running the script. The Klyn column measures the normal cached startup path.

The benchmark source files are included in the Klyn distribution under samples/perf for curious users who want to inspect, run, or adapt them.

Downloading Klyn

IMPORTANT: for now, the project remains an experiment and is not intended to be deployed in production, not yet.

There are certainly still many issues and missing aspects in the language and its libraries. If you are curious and want to see what AI has produced, you can download the early-access version (version 0.1.3) and test it. DeepCodIA declines all responsibility for the way this new programming language may be used.

At the moment, Klyn targets Linux platforms through native packages, and Windows x64 through a portable ZIP archive.

Because this is an early-access build, we recommend testing Klyn inside an isolated environment first, for example a Docker image or a virtual machine. This keeps experiments separate from your main workstation while the language and libraries continue to mature.

If you notice bugs, missing parts, or any other issue and would like to report it, you can contact us at klyn@deepcodia.fr.

To follow language updates, visit the Klyn LinkedIn page.

Note: when launching a Klyn program for the first time, a compilation phase for Klyn sources must run. Subsequent launches will be more efficient.

Documentation

If you want to explore the language, you can consult the tutorials as well as the API reference guide.

Once again, if you notice any error or inconsistency, feel free to report it to klyn@deepcodia.fr.

The authors of the Klyn language

  • Project lead: Dominique Liard
  • Dev team: DeepCodIA tools, Codex, GPT, Claude, Gemini, Mistral Vibe, Qwen, Llama, and a few others
  • QA team: Dominique Liard (for writing the tests), Codex and Qwen (for test supervision and the resulting fixes)