For programming languages that make use of {}, the reason is (almost always) scope.
Take for instance this:
for i in 0..10do_thing();
do_other_thing();
compared to this:
for i in 0..10 {
do_thing();
}
do_other_thing();
The intent of the first one is unclear. In the second one it’s clear you should loop do_thing() and then run do_other_thing() afterwards. The indentation is only for readability in the above though. Logically there would be no difference in writing
for i in 0..10 { do_thing(); } do_other_thing();
Languages that use indentation and line breaks for scope look more similar to this:
For programming languages that make use of
{}, the reason is (almost always) scope.Take for instance this:
for i in 0..10 do_thing(); do_other_thing();compared to this:
for i in 0..10 { do_thing(); } do_other_thing();The intent of the first one is unclear. In the second one it’s clear you should loop
do_thing()and then rundo_other_thing()afterwards. The indentation is only for readability in the above though. Logically there would be no difference in writingfor i in 0..10 { do_thing(); } do_other_thing();Languages that use indentation and line breaks for scope look more similar to this:
for i in 0..10: do_thing() do_other_thing()