Ü es un lenguaje de programación compilado y de tipado estático que prioriza la seguridad y el rendimiento. Inspirado en C++, pero sin sus desventajas, y con influencias menores de Rust, Ü ofrece una separación entre código seguro e inseguro, verificación en tiempo de compilación y abstracciones como RAII y plantillas. No utiliza recolección de basura (GC); la gestión de memoria se realiza mediante RAII, aunque en código inseguro se permite la gestión manual. Ü garantiza seguridad de memoria y contra condiciones de carrera siempre que no se utilice código inseguro o este esté correctamente implementado.
El compilador de Ü está basado en LLVM, lo que le proporciona optimizaciones avanzadas y soporte para múltiples arquitecturas de CPU y sistemas operativos. Existen dos compiladores: uno escrito en C++ y otro mayoritariamente en el propio Ü. Además del compilador, Ü cuenta con una biblioteca estándar que incluye contenedores básicos, funciones de ayuda e interacción con el sistema operativo. Dispone de un sistema de construcción para gestionar proyectos complejos, un servidor de lenguaje y resaltado de sintaxis para varios editores e IDE. También incluye una herramienta para convertir encabezados de C, facilitando la interoperación con código externo.
Ü es compatible con Windows (x86/x86_64), GNU/Linux (x86/x86_64/AArch64), FreeBSD (x86_64) y OS X (AArch64, experimental). La documentación está disponible en inglés y ruso.
La tabla comparativa del proyecto muestra que Ü es el único lenguaje entre C, C++, Swift, Zig, Odin y Rust que combina todas las características importantes: constructores, destructores, encapsulación, seguridad de memoria, seguridad de hilos, plantillas, duck typing, referencias, sobrecarga de funciones y operadores, copia profunda, cálculos en tiempo de compilación, información de tipos en tiempo de compilación, herencia de clases, ausencia de excepciones, funciones asíncronas y lambdas. Ü destaca por ofrecer todas estas funcionalidades sin las limitaciones de otros lenguajes.
Para construir el proyecto se requiere un compilador moderno de C++ (clang, GCC, MSVC), CMake y Ninja. Es necesario descargar los fuentes de LLVM (versión 17.0.6) y configurar la compilación con LLVM_SRC_DIR.
En resumen, Ü se presenta como una opción superior en seguridad, fiabilidad, expresividad y disponibilidad de características para el desarrollo de sistemas, aunque su ecosistema aún es emergente y su adopción depende de la madurez de la comunidad.
