Doo: A Simple, Fast Programming Language Built on Rust and LLVM

10 points by nynrathod 12 hours ago

Hey HN!

https://github.com/nynrathod/doolang

I'm Nayan, and I'm stoked to share Doo, my project turned side hustle for a lang that's dead simple to write but punches like Rust. Think clean syntax (inspired by Rust but less boilerplate), auto memory mgmt via ref counting (no GC pauses), rich types, and it spits out standalone native bins via LLVM/clang.

Why Doo? Coding should feel fun, not fighty. No more wrestling with lifetimes or macros just to get a "hello world" but still safe and speedy.

Quick tour (hello.doo):

fn main() { let msg = "Hey HN!"; print(msg); }

Static Type System: Compile-time type checking with type inference Automatic Memory Management: Reference counting for data types Rich Data Types: Integers, strings, booleans, arrays, maps, and tuples Module System: Organize code with a hierarchical import system Control Flow: Conditional statements, for loops, and range iteration Function System: First-class functions with parameter and return type annotations Native Compilation: Compiles to standalone executables using clang/lld

Repo: https://github.com/nynrathod/doolang (stars/pulls welcome!)

What do you think? Too Rust-y? Missing a killer feature?

pavelai 6 hours ago

The idea and syntax looks good for me. I like it's clean an minimalistic design. But still it's to early to say is it good or not. Because there is no obvious features. You should answer the question what's the goal of the language and find the auditory who is right for you.

Did you write it or generate? If the later, then it's could be even more impressive in some way.

  • pavelai 5 hours ago

    I think there is a bit of a additional value here. It's very good as a learning project, like "how to make you own programming language and compile it into executable". Due to the simplicity and minimalism, it could be very useful.

    • nynrathod 4 hours ago

      Hi,

      Yeah make sense, but I don't have any buzzing goal right now, doolang is not any dsl, just to ensure high level syntax for developer writing backend servers apis. And not started as learning project. Will move forward as per feedback of community and requirement but not such specific target im aiming. so again simple concept is keep it simple to write with speed and security

Panzerschrek 2 hours ago

Is it safe?

Does it require using traits everywhere, like Rust does?

Does it have proper references (C++ style)?

sim7c00 11 hours ago

what are the kind of things you are building yourself with this?

  • nynrathod 9 hours ago

    Hi,

    So main goal of this language is to have simplicity while writing code. Rust is great will dominate, but as dev who want speed and security but with high level syntax, doolang is best for them. Right now im working on std library and inbuilt function, and moving forward I will integrate doolang with my own note taking app uoozer note https://play.google.com/store/apps/details?id=com.uoozer.not... , 550+ test cases covered by doolang already with valgrind memroy test too.

    so for roadmap, after inbuilt functions and standard library deployment will build http router and will test real world scenario for api dev. IF all well then will integrate with uoozer note.