Объявление неинициализированной переменной
Crystal позволяет объявлять неинициализированные переменные:
x = uninitialized Int32
x # => some random value, garbage, unreliable
Этот небезопасный код почти всегда используется в низкоуровневом коде для объявления буферов StaticArray без инициализации и без снижения производительности:
buffer = uninitialized UInt8[256]
Буфер выделяется в стеке, что позволяет избежать выделения памяти в куче.
Тип после ключевого слова uninitialized соответствует грамматике типов.
To the extent possible under law, the persons who contributed to this workhave waived
all copyright and related or neighboring rights to this workby associating CC0 with it.
https://crystal-lang.org/reference/1.2/syntax_and_semantics/declare_var.html