Nevim, jestli dobre chapu rozdil mezi dynamickym a automatickym polem, ale to dynamicke je umisteno v heapu, takze kdyz budu mit pole dost velke (trebas 2GB nebo i vic na 64-bit), tak ho musim udelat automaticky, protoze do heapu se nevleze?
Spis bych rekl, ze je to naopak (ale vychazim ze zkusenosti z Cecka apod. jazyku). Zasobnik byva docela maly, heap muze byt realokovat systemem do libovolne velikosti. Takze dynamicke pole by nemelo byt vlastne nijak omezene (asi se tam provadi klasicky malloc), ale automaticke by mohlo presahnout rozsah zasobniku.
Mate presny odhad. Pokud ve Fortranu pouzivate velka automaticka pole, tak nekdy pro dost velke vstupy program zacne padat z duvodu preteceni zasobniku. Dnesni prekladace jiz vetsinou maji volbu, ktera alokuje automaticka pole od urcite velikosti taky na heapu. Napr. EkoPath to ale resi tak, ze uz pri spusteni programu zkusi zvetsit stack na co nejvice.
ALLOCATE se obycejne implementuje pres malloc.