Type Assert
When you only need to handle one variant, use type assertion syntax instead of a full match. The .(Variant) syntax extracts the variant's data directly.
The compiler tracks which variant a variable holds. When the variant is known at compile time, you can use direct assertion. When it's unknown (e.g., passed as a parameter), use the comma-ok form.
Try it: Move the shape creation into a function and pass it to main to see when comma-ok is required.