지역 변수

지역 변수()는 지역 변수 영역이 주어진 변수이다.

펄의 지역 변수 
펄은 동적 지역 변수와 사전적(lexically-scoped) 지역 변수를 둘 다 지원한다. local 키워드를 사용하면 동적 지역 변수를 정의할 수 있으며, my를 사용하면 사전적 지역 변수를 정의할 수 있다. 동적 변수 지정은 오늘날 흔히 쓰이는 것이 아니므로 펄 문서는 "local은 대부분의 사람들이 "local"로 생각하는 것이 아니다"라고 경고한다. 그 대신, local 키워드는 일시적인, 동적 값을 전역(package) 변수에 제공하며, 감싸고 있는 블록의 끝에 이를 때까지 지속된다. 그러나 해당 변수는 블록 내에서 호출된 모든 함수들의 측면에서 투명하다. 사전적 지역 변수를 만들기 위해 my 연산자를 대신 사용한다.

동작 방식을 이해하기 위해 다음의 코드를 고려할 수 있다:

$a = 1;
sub f() {
  local $a;
  $a = 2;
  g();
}
sub g() {
  print "$a\n";
}
g();
f();
g();

출력물은 다음과 같다:
 1
 2
 1

같이 보기 
 전역 변수
 비지역 변수

각주 

변수 (컴퓨터 과학)