In order for things to not break unexpectedly, all native deps have to be resolved in real time and not when the module closure is evaluated.
I decided to inline deps for the texture loading (because they are only used once) and wrap frequent things in functions in order to avoid the repetition of _elm_lang$core$ names.
With this approach we can still use eslint to find out if something is not used or a function is not defined. If all these methods were in a namespace, then eslint wouldn't be able to help us.
In order for things to not break unexpectedly, all native deps have to be resolved in real time and not when the module closure is evaluated.
I decided to inline deps for the texture loading (because they are only used once) and wrap frequent things in functions in order to avoid the repetition of
_elm_lang$core$
names.With this approach we can still use eslint to find out if something is not used or a function is not defined. If all these methods were in a namespace, then eslint wouldn't be able to help us.