News for hackers. Stuff that matters.
Re:Doo: A Simple, Fast Programming Language Built on Rust an... by nynrathod on Tuesday November 04, 2025 @12:02AM (#45807576)
Saying safe will be too early, but design philosophy is no compromise with security and speed with easy syntax. It passed with 550+ test cases including unit test, memory stress, integration, circular dep, regresssion, valgrind memory leak, fuzz testing, also i added conservative limits max depth for recursion and data length for stability. Find here https://github.com/nynrathod/doolang/blob/main/src/limits.rs

Doolang not uses any traits like rust. Rust is great language, but its expose everything in syntax that is also great but as developer who want security+speed with fast development may found issue writing rust, that is main goal of doolang simlicity. I'm still figuring out further design principle of syntax to have less exposing syntax.

Doolang have auto memory management with reference counting. Just simple mut keyword introduced for mutating variable let mut data = "data"; no other syntax expose all handling automatic with rc and auto type define if not defined explicitly

Re:Doo: A Simple, Fast Programming Language Built on Rust an... by Panzerschrek on Tuesday November 04, 2025 @12:57AM (#45807797)
When I say safety I mean inability of the programmer to trigger UB using normal language features, like it's impossible in Rust and several other (less known) languages. Does Doo support it? Or I just can shoot the leg and compiler lets me do this?

About references: am I correct, that any value is reference-counted and one can pass it to a function and mutate it (the original, not a copy).

Re:Doo: A Simple, Fast Programming Language Built on Rust an... by nynrathod on Tuesday November 04, 2025 @01:33AM (#45807979)
Doolang aims for memory safety with static typing and automatic reference counting, so you won't see classic C/C++ bugs. But it does not claim Rust's level of safety there’s no formal guarantee that safe code can't cause undefined behavior. It's quite safe in practice, just not as strict as Rust.

For complex types (strings, arrays, maps), values are reference-counted and passed by reference. If you pass such a value to a function, you're sharing the same object—mutations affect the original. For primitives (Int, Bool), it's pass-by-value (copy).

Re:Doo: A Simple, Fast Programming Language Built on Rust an... by Panzerschrek on Tuesday November 04, 2025 @02:16AM (#45808237)
So, what if I want to pass a value of a primitive type by-reference? How the equivalent code for the following C++ example looks like?

  void Foo( int& x )
  {
      x= 123;
  }
  
  void Bar()
  {
      int x= 0;
      Foo(x);
  }
Re:Doo: A Simple, Fast Programming Language Built on Rust an... by nynrathod on Tuesday November 04, 2025 @02:41AM (#45808405)
Doolang currently does not allow you to mutate a primitive variable from another function.

Only support this as of now

fn Foo(x: Int) { x = 123; // Only modifies Foo's local copy print("inside Foo", x); // Print 123 } fn main() { let x: Int = 0; Foo(x); // x is still 0 here after Foo returns print("out x", x); // Print 0 }

Re:Doo: A Simple, Fast Programming Language Built on Rust an... by nynrathod on Tuesday November 04, 2025 @01:34AM (#45807984)
But your points make sense, i should learn those UB works and will check how its behaving
Re:Doo: A Simple, Fast Programming Language Built on Rust an... by paulf38 on Tuesday November 04, 2025 @06:47AM (#45809867)
Nooooo! "valgrind memory leak". Aaargh. Valgrind (memcheck) is not just a leak detection tool. Leak detection is so unimportant that it isn't even turned on by default.
Re:Doo: A Simple, Fast Programming Language Built on Rust an... by nynrathod on Tuesday November 04, 2025 @06:55AM (#45809929)
Thanks for pointing that out. I didn’t actually know all the details about how Valgrind works under the hood just that it does memory checking. I'll definitely read up more on it. If you have any good resources or tips, I'd appreciate your suggestions!
Re:Doo: A Simple, Fast Programming Language Built on Rust an... by paulf38 on Monday November 10, 2025 @06:21AM (#45874851)
Re:Doo: A Simple, Fast Programming Language Built on Rust an... by nynrathod on Tuesday November 11, 2025 @12:06AM (#45884310)
THanks for sharing, will take a look surely, as memroy mgmt will be crucial for doolang. And I can see you are valgrind developer?
Re:Doo: A Simple, Fast Programming Language Built on Rust an... by paulf38 on Wednesday November 12, 2025 @12:52AM (#45896778)
I do most of the Valgrind maintenance these days.