Hello! I am Kevin Benavides. I am a programmer focused on the development, design, and scalability of web/apps/APIs and the design and construction of compilers for dialects or programming languages such as C, Rust, or C++ with LLVM, QBE, or GCC.
On the other hand, I speak languages, such as Spanish (native) and English (B2), corresponding to the CEFR. I am very determined when there are pending tasks to do, in addition to being patient and a good conversationalist with people. Some facts about this are that I started in the world of programming more than 6 years ago.
On the other hand, I am currently developing my own programming language powered by LLVM and Q# for traditional and quantum programming.
- Everything you will see in this place is entirely studied in a completely self-taught way. -
The Thrush Programming Language. A programming language dedicated to creating maintainable and modular software.
- High level abstraction.
- Non-explicit cast for primitive types.
- Strongly statically typed.
- Strongly in OOP paradigm.
- Automatic memory management.
- Partial memory safety.
- Ahead of time compilation.
- Faster compilation times.
- Faster as C.
- Compiled to machine code.
- Support for quantum programming for quantum machines using Q# underhood.
The Thrush Programming Language compiles using the LLVM project as its primary code generator, which is a backend compiler. It generally compiles bytecode or intermediate languages to assembler or machine code for the 45 different architectures and variants available.
Thrush compiles AOT to LLVM bitcode, which is then compiled to optimized machine code, functioning similarly to Rust and Swift.
thrushc fibonacci.th -o fibonacci && ./fibonacci
thorium run
fn print(fmt :: str) s32 @public @ignore @extern("printf");
fn fibonacci(n :: u64) u64 @alwaysinline @strongstack @hot {
if n <= 1 {
return n;
}
return fibonacci(n - 2) + fibonacci(n - 1);
}
fn main() {
for local i: u64 = 0; i < 10; i++; {
print("fibonacci of '%ld': %ld\n", i, fibonacci(i));
}
}