Comments by "Vitaly L" (@vitalyl1327) on "ThePrimeTime"
channel.
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
2
-
@DemiImp I am talking about generic knowledge, transferable across platforms, which can only be gained by studying one platform (probably a toy one) thoroughly. Things like ABIs, registers and register spills, caches, cost of memory accesss, atomics, memory operations order, pipelines, effect of scheduling on IPC, alignment, SIMD/SPMD, and many more
2
-
2
-
2
-
2
-
@RotatingBuffalo
Now, I said "F*", not "F#", but you did not notice. "F*" is miles away from the run of the mill Hindley-Millner that F# does and Rust tries to do.
And let me remind you that we're talking about Rust here. Fairly mainstream language, with an ML-inspired type system, procedural macros, region analysis and a lot of other features from the "ivory tower" languages that you believe for no good reason to be impractical.
C and Java have very, very similar use cases. I worked on a high-frequency trading system that was largely written in Java. Eating C cake, evidently. I also worked on pure C HFT systems, ones written in C++, ones with large parts implemented in HDLs. There was no real difference in what C and Java did in those scenarios. Just plain, predictable imperative languages with more or less low level control of the memory layout. Nothing fancy. Everything very much the same. Not to mention java running on microcontrollers or even NFC chips (already mentioned JavaCard). For all practical purposes, Java is not too far from C. Yes, GC can and will cause troubles, yes, you need to code in a certain way for real-time, but same applies to C, your malloc() and free() are also not allowed.
2
-
2
-
2
-
2
-
2