Remix.run Logo
brightprogramer 2 days ago

It is a bit crazy but forcing this kinda makes a habit. That way, a habitual user will tend to initialize other variable types as well.

That's why I call it a standard, because the library has its own coding style. Take the ownership semantics explained in concepts section of README for example. I provide a way to very clearly specify ownership.

Also the init() instantly detects bugs related to uninitialized struts. When they do happen, sometimes very deep in the code they take a lot of time.

This is also one of the reasons why there are so many ValidateX checks in implementation code. Try to catch bugs faster.