@tomekw Not all of them require, many factors at play.
But #Rust to guarantee safety brings abstractions to a very high level, in result, to allow flexibility in getting things implemented fast it needs a lot of (proven) features. Some may argue these may be ceded to libraries (crates), but then we have a scrutiny issue of our supply chain.
@michalfita does it NEED them, actually?
Call me an ignorant, and by no means I want to fight #Rust. I’m happy it exists and it’s great. I just think we, as people, love to reinvent the wheel. I can’t stop thinking we had Rust 40 years ago, but simpler and called #AdaLang.
@tomekw Nope, we didn't. #Ada has safety mechanism utilised in run-time, like #Pascal does. #Rust is first language with practical implementation of a compile-time borrow checker for native compiler, while the actual science behind it wasn't new.
In #Ada productivity is low as you have to chisel your code, compile and run to check for correctness, while in #Rust the compiler stops you for knee-shooting attempts.
@michalfita I think it works both ways: if you don’t know #AdaLang well enough, you have to fight the compiler, if you don’t know #Rust well enough, you have to fight the compiler / borrow checker as well :)
I do not agree with the sentiment of one tool being more or less productive than the other: I am amazed how productive I am with Ada.
Skills > tools.
@tomekw I'm more productive in #Rust than in #Python. The consistent nature of the standard library makes conversion of thoughts into code easier and less prone to stupid flops, that Python then throws at you during run time.
I didn't program in #Ada, I read about it, run some example and talked to some people using it. The opinion circulating about it is that it can be tedious to write large Ada applications or even systems.
@rayk @tomekw I'm good C programmer and I can avoid those errors, I worked with good C programmers who can avoid those errors.
Yet, we as a team were sending releases out that were crashing in extensive tests or even in the field. Results of our collaborative work and complex merges, despite out great efforts in review (who remembers #Fagan inspections?) ended up buggy and unsafe.
We had static analysers with licenses costing $20k/seat/y and we still had crashing code.
1/2