/// Array can contain same typed values. // The elements infered as Array>>. let x = [None, Some([1]), None, Some([]), None]; // Unknown part is typed with Any. // This is `Array>> let x = [None, Some([]), None, Some([]), None]; // Of course, you can annotate explicitly. let x: Array>> = [None, Some([])]; x