5 karma · joined November 15, 2017
That would be an understatement :-)
But it's a trade-off. You fight the borrow-checker to ensure safe code.
It's really subjective. Are you using a language for front-end/middle-tier service/back-end process, etc. etc.
Back in the day - you had a handful of people writing C code via CGI for web development.
Every good language addresses a problem.
Rust = safe code. Crystal = IMO...productivity.
Otherwise you end up with the same problem: "cool language...now I need to bind it to a C library to do this..."
Still betting on Rust and it's ecosystem.
I develop in both Go and Rust.
I use Go as main replacement for .NET/Java web tier...no need for install specific Java or .NET run-time library.
I use Rust when there's heavy disk reads and writes...and I know it's a nightly job which should never segfault and never finish the execution since it crashed.
GO = useful for rapid prototyping and a good .NET/JAVA middle-tier replacement.
RUST = you CARE about performance.
You can use both with FFI/C - use Go as the carrier and use RUST where the functions should squeeze every bit of performance to do something...