Skip to content
Tech News
← Back to articles

The Ü Programming Language

read original get Ü Programming Language Book → more articles
Why This Matters

The Ü programming language introduces a reliable, fast, and memory-safe alternative inspired by C++ and Rust, leveraging LLVM for broad platform support. Its design aims to simplify complex programming tasks while maintaining high performance, making it a significant development for both industry and consumers seeking efficient, safe software solutions.

Key Takeaways

The Ü programming language

Ü is a statically-typed compiled programming language, designed for writing programs, which should be both reliable and fast. It has safe and unsafe code separation, compile-time correctness checks, powerful abstractions like RAII and templates, encapsulation, rich type system, lambdas, coroutines and many other useful features. Ü uses RAII for memory and resources management (no GC is involved), but manual memory management may be still used in unsafe code. Ü is memory-safe and race-condition-safe, as long as no unsafe code is involved at all or as long as unsafe code is correctly written.

Ü is heavily inspired by C++, but doesn't have its downsides. Also it was influenced by Rust, but only slightly and thus is way easier to use in comparison to Rust. Any possible coincidence with design and features of other programming languages is unintentional.

Ü compiler is based on LLVM library and thus leverages many its powers, including numerous optimizations and code generation support for many CPU architectures and operating systems. Even more, there are two Ü compilers, the first one is written in C++ and the second one is mostly written in Ü itself (frontend part, backend is still LLVM).

Besides the compiler Ü has a lot of other components. Ü provides its own standard library containing basic container classes, helpers and operating system interaction functionality. There is a build system, which simplifies complex Ü programs building and (partially) package management. For better development experience there is a language server and variety of syntax highlighting files for some IDEs and text editors. Last but not least, Ü has a tool for C headers conversion, which allows to simplify interaction with foreign code.

Supported systems

The table below lists supported operating systems and architectures for Ü compiler hosting and targeting.

Operating system Architecture Hosting Ü compiler Targeting Notes Windows x86 + + MSVC installation may be necessary. Windows x86_64 + + MSVC installation may be necessary. Supports also running Ü compiler built for x86. GNU/Linux x86 + + 32-bit C libraries installation may be necessary. GNU/Linux x86_64 + + GNU/Linux AArch64 + + FreeBSD x86_64 + + OS X AArch64 + ± Still experimental, some standard library functionality may not work properly.

CPU architectures besides x86, x86_64 and AArch64 aren't tested, but they may work if Ü compiler is built with these architecture support (see LLVM_TARGETS_TO_BUILD option). GNU/Linux with x32 ABI isn't supported due to some bugs in LLVM library.

Documentation

... continue reading