pull down to refresh
100 sats \ 0 replies \ @l0k18 9 Jan 2023 \ parent \ on: Is LND (Lightning Labs) ruining the Lighting Network? bitcoin
You are exaggerating. I've seen numerous comparisons and Rust gets in around the same, maybe slightly better than C++, and in around the 10-20% area.
I'll concede that Go's memory utilisation can be a bit higher, but it takes a lot less time to write that code and easily 4x easier to eliminate bugs in it.
But while this may all be true, at the same time, the response latency of Go programs runs rings around most other languages even in relatively naive implementations.
Writing high parallel throughput in languages like Rust and C++ is more easy to do, but shaving the nanoseconds is something that is just easier to do when you have coroutines. Though there can be issues with scheduling when the system is at constant high load.
For me, the lack of first class coroutines is a deal breaker. I can't imagine writing programs without goroutines and channels. Not only does it enable far lower latency response and fast scaling for intermittent loads, it makes it really easy to write network programs where you start with a channel based simulation and get everything ironed out before it actually touches a network interface.