Remix.run Logo
galangalalgol 4 months ago

Ok, I think I understand now, but is it really dependently typed just because it symbolically verified it can work with any N and M? Because it will only generate code for the instantiations that get used at compile time.

Rusky 4 months ago | parent [-]

Is what really dependently typed? I'm saying C++ is not dependently typed, because it doesn't do any symbolic verification of N and M.

galangalalgol 4 months ago | parent [-]

If rust did add const generic expressions I mean. It still would only generate code for the used instantiations.

Rusky 4 months ago | parent [-]

Ah, I wasn't really talking about Rust.

Rust already does have some level of const generic expressions, but they are indeed only possible to instantiate with values known at compile time, like C++.

The difficulty of type checking them symbolically still applies regardless of how they're instantiated, but OTOH it doesn't look like Rust is really trying to go that direction.