the stack and on the heap. Stack → Static, known size at compile time. Heap → Dynamic, unknown size at compile time, needs runtime to figure out object sizes.
class, which one of the two should support inheritance and overriding? Note: Swift’s dynamics comes from Objective-C which was based on Smalltalk. Most of Swift’s modern flavors are now coming from static trends, such as Rust’s lifetime / RAII.