@Beliavsky , it’s good you’re seeking comments. My suggestion will be for you to work harder, much much harder and give your drafts a lot more thought so that you can make them as brief as possible before tweeting.
In the case of MOVE_ALLOC
for this use case, for example you can start with something as follows and make it further compact:
! canonical method to grow an array:
! say a and tmp are rank-1 objects of the same type (and kind) and
! tmp is allocated to desired new shape for a
tmp( 1:size(a) ) = a
tmp( size(a)+1: ) = .. ! data to be added
call move_alloc( from=tmp, to=a )
And that a couple of other options include:
! array constructor
a = [ a, [ .. ] ]
! RESHAPE intrinsic function
a = reshape( a, shape=[ new_shape ], pad=.. )
In my opinion, your tips thus far have been verbose.