Railroad engines do it because they need to start an average of 130 cars @ 100000lb each moving without breaking anything. Not because its the ultimate in efficiency.
Same with dynamic breaking, its a financial practical design not for efficiency.
The "frame" of a locomotive is a 40' long 12" steel plate with holes drilled and cut in it for mounting stuff.
Steam was more powerful diesel is easier to ship....
Dave