After adding use strict; to an old Perl script I had to declare every variable, and I fixed most errors by putting my in front. Some variables are shared between subroutines, though, and the existing code uses our in some places and local in others, for example local $/; before reading a file.
What does each of the three actually do? In particular, is local just an older spelling of my, and when is our the right choice?




