If you're interested in more info the docs [1] and the New Rustacean 1.31 Part 2 podcast [2] are helpful.
[1] https://github.com/rust-lang-nursery/reference/blob/master/s...
[2] https://newrustacean.com/show_notes/news/rust_1_31/part_2/in...
You can of course also run these functions at runtime; they're a more restricted kind of function. You cannot even currently use if inside of them, for example. We're working on expanding it out, but we're going slow because it's important for soundness reasons.
The conceptual difference between constexpr and consteval is that consteval is guaranteed to be evaluated at compile-time, so unlike constexpr code, consteval code will never actually end up as a function in your binary.
Rust's const fns on the other hand can be called at runtime, so in that respect they'd be closer to constexpr.