The compiler can inject information at compile time so no runtime reflection is necessary.
There are disadvantages of blurring the lines of what a function is an can do. Gleam values clarity above all things, so we don't have back-doors or special-cases. Everything plays by the same rules.