Any language in which interactive use for tiny one-off jobs is a design objective cannot afford to make undeclared variables illegal. People just won't use it. So it's either global or local by default. If I must pick, then global default is better.