tamaño de matriz dinámica determinado en tiempo de ejecución en ada

¿Es posible tener una matriz con un tamaño que se determine en el tiempo de ejecución?

Procedure prog is
   type myArray is array(Integer range <>) of Float;
   arraySize : Integer := 0;
   theArray : myArray(0..arraySize);
Begin
   -- Get Array size from user.
   put_line("How big would you like the array?");
   get(arraySize);

   For I in 0..arraySize Loop
      theArray(I) := 1.2 * I;
   End Loop;
End prog;

¿Hay alguna forma de lograr este resultado que no sea el uso de listas enlazadas dinámicamente u otra estructura similar? ¿O hay una estructura de datos integrada simple que sería más simple que usar listas enlazadas dinámicamente?

Respuestas a la pregunta(2)

Su respuesta a la pregunta