Runtime data types representing an S-expression value. Whereas Atom does not include lists, VValue adds lists implemented using Rust vectors. VValue can represent improper lists, but no cycles.