DEV Community

Discussion on: State transitions (i.e. Elm messages/React actions etc.): Past or imperative tense?

nimmo profile image
Nimmo Author

Of course, the inverse of that is that the user can in fact change the URL for themselves, so I guess this hasn't actually helped anything at all. D'oh.

Thread Thread
drbearhands profile image
DrBearhands

It depends on what those messages are.

GameMsg ToggleInventory, will it, when passed to update, create a new Model that when passed to view will show an inventory? Then imperative makes sense.

If you'd use the name InventoryToggled to denote that the user has e.g. pressed the ToggleInventory button, I'd say you're naming things incorrectly because the inventory wasn't toggled, as the message has not been processed by update yet.

ChangedUrl on the other hand denotes something that definitely did happen. It is more similar to ToggleInventoryButtonPressed.

Thread Thread
nimmo profile image
Nimmo Author

Yeah, the more I think about it the more I think mixed tense (but intentionally so, rather than accidentally so) feels like the way forward here.

Appreciate your input, this has been a useful conversation.

Thread Thread
drbearhands profile image
DrBearhands

Glad it was of use to you