Learning smart pointer,can I use regular references on recursive type?

I am reading the rust book, it use a “Recursive Type with a Known Size” to introduce Box pointer, But I wonder if I can use a regular reference to build this type?

enum List<'a> {
    Cons(i32, &'a List<'a>),

use self::List::Cons;

fn main() {
    let _list = Cons(1,

Is this valid and meaningful? Is there any problem in it?
The relative section: https://doc.rust-lang.org/book/2018-edition/ch15-01-box.html

Yes you can, but you should probably use mutable references so that you can change the list later, and to make it immutable, you can just pass a normal shared reference to the list.
Also, look into Learning Rust With Entirely Too Many Linked Lists, its a good read and it teaches a lot of how Rust works.

Thanks, Yeah I should use mutable references, and I did not learn shared reference, now I am not sure what is the advantage of box beyond the regular reference in this example. Thanks for your resources, so much need to learn.

Box would be an alternative to mutable pointers if you can’t or don’t want to mansge the lifetimes of all the sub-lists, or if you need an item to live longer than the current function call. That is the main usecase of Box.