The first example reminds me of something I missed: typed lists.
With VB Net I could have:
B4X:
Dim lstButtons As New List(Of Button)
and then I could have written:
B4X:
lstButtons(3).Text = "Something"
with this inline casting I will be able to do it:
[Yes, I could use an array of Buttons but a List is not an array, it is much more powerful.]