Filosofia
Thrust ofrece control de bajo nivel como C, y al mismo tiempo permite usar abstracciones de alto nivel cuando las necesitas. La idea es mantener un modelo mental simple: si razonas en C, tambien puedes razonar en Thrust.
Un lenguaje de sistemas, estatico y tipado, para escribir codigo verboso, preciso y rapido.
Thrust ofrece control de bajo nivel como C, y al mismo tiempo permite usar abstracciones de alto nivel cuando las necesitas. La idea es mantener un modelo mental simple: si razonas en C, tambien puedes razonar en Thrust.
Enlaces directos al ejecutable desde GitHub Releases.
./thrustc fibonacci.thrust -cc-args="-o fibonacci" && ./fibonacci
import std::io;
fn fibonacci [T] (n: T) T @public {
if n <= 0 { return 0; }
if n == 1 { return 1; }
var a: T = 0;
var b: T = 1;
var i: T = 2;
var result: T = 0;
while i <= n {
result = a + b;
a = b;
b = result;
i++;
}
return result;
}
fn main() s32 @public {
var result: s32 = fibonacci[s32](10);
// Expected result: fib(10) = 55
io::print("fib(%d) = %d\n", 10, result);
return 0;
}
Un modelo mental cercano a C, con comportamiento explicito y predecible para sistemas.
Funciones y estructuras genericas con instanciacion explicita, sin costo dinamico extra.
Integracion directa con C mediante @extern y @convention("C").
Usa @if, @elif y @else para elegir codigo por plataforma al compilar.
Compila para Linux, Windows, macOS, RISC-V, WebAssembly y mas desde una sola maquina.
Builtins de tipos/layout como sizeOf, alignOf e isSameType.