-1 -if gaming on a FPS, enemies might use your Twitch stream to find you. 30 seconds delay allows you to actually use counter-measures and employ disinformation tactics on your stream
-2 -if showing something, chat should be secondary, not primary. You're not on a live AMA, for that use Youtube LIVE (or chaturbate if that's your thing, I don't judge)
-3 -as said above, to give you time to react to your own mistakes
-4 -post processing for additional effects/reasons. Making a loop allows you to cut into mid-stream in some cases. This is an advanced use though, I only know of one twitcher that uses this
Many, many streamers expressly DO want to live chat with viewers. As a viewer, I don't like streamers that don't interact with chat. I may as well as watch a youtube video at that point. As a streamer, the entire point for me is to interact with people. If all I wanted to do was showcase something, I'd make youtube videos...
There are other methods one can use to avoid i.e. stream sniping besides having a long latency.
"You're not on a live AMA"
Twitch literally has a "Just Chatting" category. That said, there's nothing wrong with a streamer taking a break from the game to just chat for a bit. If you don't like that, instead of telling people how they should act, why not find a different streamer or use a different platform?