Skip to content
View DevCheckOG's full-sized avatar
🥽
🥽

Block or report DevCheckOG

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Please don't include any personal information such as legal names or email addresses. Maximum 100 characters, markdown supported. This note will be visible to only you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
DevCheckOG/README.md

Hello, I'm Kevin Benavides!

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. -


Critical Systems/Compilers Development

Rust C LLVM GCC

Web/App/APIs Development

Frontend Languages/Technologies

JS
HTML5 CSS3 Streamlit

Backend Languages/Technologies

Rust Python Java JS TypeScript
FastAPI Fastify Scrapy Socket.io Gunicorn Aiohttp Bun DenoJS NodeJS npm Cloudflare Firabase Supabase JWT

Databases

MongoDB MySQL

Testing

Jasmine Selenium Swagger PyTest

Operating Systems

Linux Windows MacOS

Tools

Intellij PyCharm Visual Studio Code Microsoft Office GNU Bash Netlify Github Pages Markdown Windows Terminal Notion Git Render Inkscape Figma Vercel Gradle Pypy The Onion Routing Gitlab Postman


Main Projects

Thrush Programming Language

logo

The Thrush Programming Language. A programming language dedicated to creating maintainable and modular software.

Features

  • 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.

Shiny Features

  • Support for quantum programming for quantum machines using Q# underhood.

LLVM

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.

Example - Fibonacci sequence

Compiler

thrushc fibonacci.th -o fibonacci && ./fibonacci

Package Manager

thorium run

Code

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));

    }

}

Pinned Loading

  1. thrushlang/thrushc Public

    The Thrush Programming Language. A programming language dedicated to creating maintainable and modular software.

    Rust 12 2

  2. thrushlang/thorium Public

    The package manager for Thrush Programming Language.

    Rust 1

  3. thrushlang/toolchains Public

    Standard LLVM/Clang pre-optimized toolchains for the Thrush programming language.

    Python 1

  4. LLVMIRCourse Public

    Basic course on the LLVM intermediate language (IR) as an introduction to code generation for AOT compilers, JIT compilers, and for creating production-ready programming languages.

    2

  5. thrushlang/quantum Public

    Extending the Thrush programming language for quantum programming.

    1

  6. Nyxlang Public

    Another TOY interpreted programming language for scripting.

    Rust 4