Re:A pure JavaScript implementation of Git for Node and brow...
by littlestymaar on Thursday May 17, 2018 @02:05PM
(#17093792)
Cough!, void pointer, cough!
Traits are used to express generality, when you need it. If you don't need to be generic over your input, you don't need traits. And when you need it, Rust makes it more explicit than C (and also more performant because it's statically dispatched by default).
The trait system can actually make following execution a bit harder (just like runtime polymorphism in C++), because you have to find the allocation to know the concrete type of what you're looking at. C is much clearer from this point of view (but more limited for the same reasons).