Hi Rustaceans !
As probably many of you, I have read the topic about Box allocation that overflew the stack. From what I read, Box allocate object on the stack and then 'move' it the the heap. Allocating big object leads to stack overflow.
As first small project, I wrote a program the compute a 1.5Gpixels Mandelbrot set. The big size is to get long processing time to get decent comparison with my C++ and Java implementations, and the subject chosen to have an idea of the generated code with floats [I heard about criterion ! ]. As you can guess, using Rust 1.44, I still cannot allocate a big Box. As workaround, I used a Vec for output image storage. It worked nicely, even compared to C++ native array (I mean not std::vectors). Nevertheless, this solution is just a workaround, preventing random access and/or partitioning.
Are there any changes to expect about this situation ? In my opinion, allocating big buffer is quite legitimate and should not be prohibited by a language. I know that a few crates are available such as ndarrays or sjep array (on github), but as Rust beginner, I'm a bit reluctant to use something not provided in the standard library. Will this problem be corrected or any new allocators provided ? This issue is quite old now, so are there any philosophical or idiomatic opposition to such a practice ? Thanks for reading, regards