It is a very good learning guide. Keep in mind I am someone who negotiates the borrow checker by adding-and-removing */&/to_owned() rather haphazardly.
I found it especially satisfying to port the game from racketlib/rltk to bevy afterwards.
I found it especially satisfying to port the game from racketlib/rltk to bevy afterwards.
Translating the implementation to bevy on the fly as you read the book would probably be much more difficult than what I described.