Fuse es un lenguaje de programación de tipado estático y funcional puro que incorpora tipos de orden superior (higher-kinded types) y polimorfismo ad hoc mediante traits. Su compilador se apoya en GRIN, un optimizador de programa completo, y delega la generación de código nativo en LLVM, lo que produce binarios pequeños y rápidos con abstracciones de coste cero.
El sistema de tipos está basado en System F con polimorfismo de orden superior, e incluye tipos de datos algebraicos, genéricos y traits para modelar dominios complejos. Todo el código es puro: no hay efectos colaterales en las funciones, y la expresividad se construye con pattern matching, funciones de orden superior y do-notation. La inferencia de tipos es bidireccional y cubre incluso tipos de orden superior, de modo que el programador solo necesita anotar las signaturas de función; el resto lo deduce el compilador.
La sintaxis combina influencias de Rust, Python, Scala y Haskell: bloques por indentación, lambdas ligeras y un estilo ML pensados para resultar legibles sin renunciar a la pureza funcional. El repositorio muestra ejemplos como la definición de un trait Functor, su implementación para List y el uso de fmap sobre una lista, además de utilidades como fold y sum. La instalación se realiza con un único comando curl en Linux x86_64 y macOS ARM64. El proyecto está publicado en fuselang.github.io y se distribuye como software libre.
