Low level goes way beyond raw pointers. But yes, rust does have raw pointers.
Java does have raw pointers too I believe though. I wouldn’t call it low level.
But low level is not well defined. At some point, the difference between low level and high level used to be whether you had to write a different program for each computer architecture. Under that definition, C is a high level language. Assembly (and very old languages) would be low level.
My own definition of low level is: if you have to care at all about memory management, it’s low level.
Basically, if the language has a garbage collector or if it automatically counts references without you explicitly telling it so, it’s a high level language for me.
Low level goes way beyond raw pointers. But yes, rust does have raw pointers.
Java does have raw pointers too I believe though. I wouldn’t call it low level.
But low level is not well defined. At some point, the difference between low level and high level used to be whether you had to write a different program for each computer architecture. Under that definition, C is a high level language. Assembly (and very old languages) would be low level.
My own definition of low level is: if you have to care at all about memory management, it’s low level.
Basically, if the language has a garbage collector or if it automatically counts references without you explicitly telling it so, it’s a high level language for me.