āĻāĻāĻŋ āĻšāĻ˛ perlfunc āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ¯āĻž āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻāĻžāĻ§āĻŋāĻ āĻŦāĻŋāĻ¨āĻžāĻŽā§āĻ˛ā§āĻ¯ā§āĻ° āĻ āĻ¨āĻ˛āĻžāĻāĻ¨ āĻāĻ¯āĻŧāĻžāĻ°ā§āĻāĻ¸ā§āĻā§āĻļāĻ¨ āĻ¯ā§āĻŽāĻ¨ āĻāĻŦā§āĻ¨ā§āĻā§ āĻ āĻ¨āĻ˛āĻžāĻāĻ¨, āĻĢā§āĻĄā§āĻ°āĻž āĻ āĻ¨āĻ˛āĻžāĻāĻ¨, āĻāĻāĻ¨ā§āĻĄā§āĻ āĻ āĻ¨āĻ˛āĻžāĻāĻ¨ āĻāĻŽā§āĻ˛ā§āĻāĻ° āĻŦāĻž MAC OS āĻ āĻ¨āĻ˛āĻžāĻāĻ¨ āĻāĻŽā§āĻ˛ā§āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ OnWorks āĻĢā§āĻ°āĻŋ āĻšā§āĻ¸ā§āĻāĻŋāĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻāĻžāĻ°ā§āĻ¤ā§ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻžāĻ°ā§āĻ¯āĻā§āĻ°āĻŽ:
NAME āĻāĻ°
perlfunc - āĻĒāĻžāĻ°ā§āĻ˛ āĻŦāĻŋāĻ˛ā§āĻāĻāĻ¨ āĻĢāĻžāĻāĻļāĻ¨
āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻ
āĻāĻ āĻŦāĻŋāĻāĻžāĻā§ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻĒāĻĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻ°āĻŋāĻŦā§āĻļāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨. āĻ¤āĻžāĻ°āĻž āĻĻā§āĻ āĻāĻžāĻā§ āĻĒāĻĄāĻŧā§
āĻĒā§āĻ°āĻ§āĻžāĻ¨ āĻŦāĻŋāĻāĻžāĻ: āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻāĻŦāĻ āĻ¨āĻžāĻŽ āĻāĻāĻ¨āĻžāĻ°āĻŋ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĨ¤ āĻāĻ āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯
āĻāĻāĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻŽāĻž āĻ¸āĻā§āĻā§ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ. (āĻĒāĻžāĻ°āĻ˛āĻĒā§ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ¸āĻžāĻ°āĻŖā§ āĻĻā§āĻā§āĻ¨āĨ¤)
āĻ˛āĻŋāĻ¸ā§āĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻ°āĻž āĻāĻāĻžāĻ§āĻŋāĻ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¨ā§āĻ¯āĻŧ, āĻ¯āĻāĻ¨ āĻāĻāĻ¨āĻžāĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻ°āĻž āĻāĻ° āĻŦā§āĻļāĻŋ āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž
āĻāĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋāĨ¤ āĻāĻāĻāĻžāĻŦā§, āĻāĻāĻāĻŋ āĻāĻŽāĻž āĻāĻāĻāĻŋ unary āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻ¯ā§āĻā§āĻ¤āĻŋ āĻļā§āĻˇ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¨āĻŋāĻāĻ
āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ unary āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¤āĻžāĻ° āĻ¯ā§āĻā§āĻ¤āĻŋāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻ, āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻšāĻ¯āĻŧ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻŦāĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¤āĻžāĻ° āĻ¯ā§āĻā§āĻ¤āĻŋāĻ° āĻāĻ¨ā§āĻ¯āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻāĻ¯āĻŧāĻ āĻāĻ°ā§, āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻ¸ā§ āĻāĻŦāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°ā§,
āĻāĻŦāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§. āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻ¸ā§āĻĒā§āĻ˛āĻŋāĻ¸() āĻ¤āĻŋāĻ¨āĻāĻŋ āĻāĻā§
āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻž āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ, āĻ¯ā§āĻāĻžāĻ¨ā§ gethostbyname() āĻāĻžāĻ°āĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻā§āĨ¤
āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻž āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻā§āĻ˛āĻŋāĻ¤ā§, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻĻā§āĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻ°ā§āĻ¨ āĻ¯āĻžāĻ°āĻž āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻļāĻž āĻāĻ°ā§ (āĻāĻŦāĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻ) āĻāĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ LIST āĻāĻ° āĻ¸āĻžāĻĨā§ āĻĻā§āĻāĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻŦāĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻ¯ā§āĻā§āĻ¨ āĻ¸āĻŽāĻ¨ā§āĻŦāĻ¯āĻŧ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§; āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽāĻžāĻ¨ āĻšāĻŦā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¯ā§āĻ¨ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻĨāĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻ¸ā§āĻ āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ¤ā§ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ
āĻ¤āĻžāĻ˛āĻŋāĻāĻž, āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻ āĻāĻāĻ-āĻŽāĻžāĻ¤ā§āĻ°āĻŋāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽāĻžāĻ¨ āĻāĻ āĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻŽāĻž āĻāĻā§āĻˇāĻ°āĻŋāĻ āĻĒā§āĻĨāĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĨ¤
āĻ¨ā§āĻā§āĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻ¯ā§ āĻā§āĻ¨āĻ āĻĢāĻžāĻāĻļāĻ¨ āĻ¤āĻžāĻ° āĻāĻžāĻ°āĻĒāĻžāĻļā§ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻ¸āĻš āĻŦāĻž āĻāĻžāĻĄāĻŧāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¯ā§āĻā§āĻ¤āĻŋ. (āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻŦāĻŋāĻŦāĻ°āĻŖ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻŦāĻžāĻĻ āĻĻā§āĻ¯āĻŧāĨ¤) āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§
āĻ¸āĻšāĻ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŽāĻžāĻā§ āĻŽāĻžāĻā§ āĻāĻļā§āĻāĻ°ā§āĻ¯āĻāĻ¨āĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻšāĻ˛: āĻāĻāĻž āĻ¸ā§āĻ¨ā§āĻĻāĻ°ā§āĻ¯ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻŽāĻ¤, āĻ¤āĻžāĻ āĻāĻāĻŋ is
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨, āĻāĻŦāĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻā§āĻ¨ āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ° āĻ¨āĻžāĨ¤ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻŦāĻž unary
āĻ āĻĒāĻžāĻ°ā§āĻāĻ°, āĻāĻŦāĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ°. āĻĢāĻžāĻāĻļāĻ¨ āĻāĻŦāĻ āĻŦāĻžāĻŽ āĻŽāĻ§ā§āĻ¯ā§ āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸
āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻāĻŖāĻ¨āĻž āĻāĻ°ā§ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻ¤āĻ°ā§āĻ āĻšāĻ¤ā§ āĻšāĻŦā§:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 1+2+4; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 7āĨ¤
āĻŽā§āĻĻā§āĻ°āĻŖ(1+2) + 4; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ā§Š.
āĻŽā§āĻĻā§āĻ°āĻŖ (1+2)+4; # āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 3!
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ +(1+2)+4; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 7āĨ¤
āĻŽā§āĻĻā§āĻ°āĻŖ ((1+2)+4); # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 7āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻžāĻ˛āĻžāĻ¨ -w āĻāĻāĻŋ āĻ¸ā§āĻāĻ āĻāĻĒāĻ¨āĻŋ āĻāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨. āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¤ā§āĻ¤ā§āĻ¯āĻŧ
āĻāĻĒāĻ°ā§āĻ° āĻ˛āĻžāĻāĻ¨ āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°ā§:
āĻŽā§āĻĻā§āĻ°āĻŖ (...) āĻ˛āĻžāĻāĻ¨ 1 āĻ āĻĢāĻžāĻāĻļāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻ˛āĻžāĻāĻ¨ 1-āĻ āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻ¯ā§āĻā§āĻ° āĻ āĻā§āĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĨ¤
āĻāĻŋāĻā§ āĻĢāĻžāĻāĻļāĻ¨ āĻŽā§āĻā§āĻ āĻā§āĻ¨ā§ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¨ā§āĻ¯āĻŧ āĻ¨āĻž, āĻāĻŦāĻ āĻ¸ā§āĻāĻāĻ¨ā§āĻ¯ āĻāĻāĻ¨āĻžāĻ°ā§ āĻŦāĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§ āĻ¨āĻž
āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ "āĻ¸āĻŽāĻ¯āĻŧ" āĻāĻŦāĻ "āĻāĻ¨ā§āĻĄāĻĒāĻŋāĻāĻ¯āĻŧā§āĻ¨ā§āĻ" āĻāĻ° āĻŽāĻ¤ā§ āĻĢāĻžāĻāĻļāĻ¨ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ,
"āĻ¸āĻŽāĻ¯āĻŧ+86_400" āĻŽāĻžāĻ¨ā§ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ "āĻ¸āĻŽāĻ¯āĻŧ() + 86_400"āĨ¤
āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻŦāĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŽāĻ¨ āĻĢāĻžāĻāĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯, āĻ āĻĒā§āĻ°āĻāĻ˛āĻŋāĻ¤ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧ
āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¯āĻŧā§ āĻĒā§āĻ°āĻ¸āĻā§āĻāĨ¤
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨: āĻāĻā§ āĻ¨āĻžāĨ¤ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻ¯ā§ āĻāĻāĻāĻŋ āĻāĻāĻ°āĻŖ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§ āĻ¤āĻžāĻ° āĻāĻāĻ°āĻŖā§āĻ° āĻ¸āĻžāĻĨā§ āĻŦāĻž āĻ¤āĻĻā§āĻŦāĻŋāĻĒāĻ°ā§āĻ¤āĨ¤ āĻāĻāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĻā§āĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻŋāĻ¨ā§āĻ¨ āĻāĻŋāĻ¨āĻŋāĻ¸āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻāĻŦāĻ āĻĢāĻžāĻāĻļāĻ¨ āĻā§āĻ¨ āĻ§āĻ°āĻŖā§āĻ° āĻŽāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻĢāĻŋāĻ°ā§ āĻāĻ¸āĻž āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻšāĻŦā§āĨ¤ āĻāĻŋāĻā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻŦā§āĨ¤ āĻāĻŋāĻā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻŽāĻžāĻ¨āĨ¤ āĻāĻŋāĻā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻļā§āĻˇ āĻŽāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻŋāĻā§
āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¸āĻĢāĻ˛ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻāĻāĻāĻŋ āĻāĻŖāĻ¨āĻž āĻĢā§āĻ°āĻ¤. āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻāĻĒāĻ¨āĻŋ āĻ¯āĻž āĻāĻžāĻ¨ āĻ¤āĻžāĻ°āĻž āĻ¤āĻžāĻ āĻāĻ°ā§,
āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻāĻĒāĻ¨āĻŋ āĻ§āĻžāĻ°āĻžāĻŦāĻžāĻšāĻŋāĻāĻ¤āĻž āĻāĻžāĻ¨āĨ¤
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻāĻāĻŋ āĻ¨āĻžāĻŽāĻ¯ā§āĻā§āĻ¤ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻĒā§āĻ°āĻĨāĻŽ āĻ¨āĻāĻ°ā§ āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻŦā§ āĻ¤āĻžāĻ° āĻĨā§āĻā§ āĻŦā§āĻļ āĻāĻ˛āĻžāĻĻāĻž
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻšāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§ āĻĨāĻžāĻāĻž "(1,2,3)" āĻāĻ° āĻŽāĻ¤ā§ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¨āĻž
āĻĒā§āĻ°āĻ¸āĻā§āĻ, āĻāĻžāĻ°āĻŖ āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ° āĻāĻŽā§āĻĒāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻ¸āĻā§āĻāĻāĻŋ āĻāĻžāĻ¨ā§āĨ¤ āĻāĻāĻž āĻā§āĻĒāĻ¨ā§āĻ¨ āĻšāĻŦā§
āĻ¸ā§āĻāĻžāĻ¨ā§ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻŽāĻž āĻ āĻĒāĻžāĻ°ā§āĻāĻ°, āĻāĻŽāĻžāĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§
āĻāĻāĻž āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻŋāĻ˛ āĻ¨āĻž.
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻĢāĻžāĻāĻļāĻ¨āĻā§āĻ˛āĻŋ āĻ¯āĻž
āĻāĻāĻ āĻ¨āĻžāĻŽ (āĻ¯ā§āĻŽāĻ¨ chown(ā§¨ā§Ļā§§ā§§), āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ(ā§¨ā§Ļā§§ā§§), āĻŦāĻ¨ā§āĻ§(2), āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ) āĻ¸āĻ¤ā§āĻ¯ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§ āĻ¯āĻāĻ¨ āĻ¤āĻžāĻ°āĻž āĻ¸āĻĢāĻ˛ āĻšāĻ¯āĻŧ āĻāĻŦāĻ
"undef" āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻ¯ā§āĻŽāĻ¨āĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¨ā§āĻā§āĻ° āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻž āĻāĻ˛āĻžāĻĻāĻž
C āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻĨā§āĻā§, āĻ¯āĻž āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ˛ā§ "-1" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽā§āĻ° āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤
"āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨", "āĻāĻ¯āĻŧā§āĻāĻĒāĻŋāĻĄ", āĻāĻŦāĻ "āĻ¸āĻŋāĻ¸ā§āĻāĻžāĻ˛"āĨ¤ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯āĻ āĻŦāĻŋāĻļā§āĻˇ $ āĻ¸ā§āĻ! āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻ āĻ¨
āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž. āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻļāĻ¨ āĻ¨āĻž, āĻĻā§āĻ°ā§āĻāĻāĻ¨āĻžāĻā§āĻ°āĻŽā§ āĻāĻžāĻĄāĻŧāĻž.
āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ§āĻ°āĻŖā§āĻ° āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ-āĻšā§āĻĄā§āĻĄ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻĒāĻžāĻ°ā§āĻ¸āĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§āĻ āĻšā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻāĻā§āĻ˛āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻŽāĻ¤ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¤āĻŦā§ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻ˛āĻžāĻĻāĻž āĻĻā§āĻāĻ¤ā§āĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻĻā§āĻ¯
āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°ā§ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĻāĻžāĻ°ā§, āĻŽā§āĻāĻžāĻ¨āĻŋāĻāĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻžāĻĒāĻŋāĻ¤ā§ "PL_keyword_plugin" āĻĻā§āĻā§āĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻŽāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻŽāĻĄāĻŋāĻāĻ˛, āĻāĻāĻŋ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ° āĻŦāĻŋāĻļāĻĻ āĻŦāĻŋāĻŦāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŽāĻĄāĻŋāĻāĻ˛ā§āĻ° āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĻā§āĻā§āĻ¨āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻžāĻ°ā§āĻ¯āĻžāĻŦāĻ˛ā§ by āĻŦāĻŋāĻāĻžāĻ
āĻāĻāĻžāĻ¨ā§ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻĢāĻžāĻāĻļāĻ¨ āĻ°āĻ¯āĻŧā§āĻā§ (āĻāĻŋāĻā§ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄā§āĻ° āĻŽāĻ¤ā§ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻŽāĻ¤ā§ āĻĻā§āĻāĻ¤ā§ āĻāĻŋāĻ¨āĻŋāĻ¸āĻā§āĻ˛āĻŋ āĻ¸āĻš
āĻāĻŦāĻ āĻ¨āĻžāĻŽāĻ§āĻžāĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°) āĻŦāĻŋāĻāĻžāĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻžāĻāĻžāĻ¨ā§āĨ¤ āĻāĻŋāĻā§ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻāĻžāĻ§āĻŋāĻ āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤
SCALAR āĻŦāĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻļāĻ¨
"chomp", "chop", "chr", "crypt", "fc", "hex", "index", "lc", "lcfirst", "āĻĻā§āĻ°ā§āĻā§āĻ¯",
"oct", "ord", "pack", "q//", "qq//", "reverse", "rindex", "sprintf", "substr",
"tr///", "uc", "ucfirst", "y///"
"fc" āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻāĻ¨āĻ āĻāĻĒāĻ˛āĻā§āĻ¯ āĻšāĻ¯āĻŧ āĻ¯āĻĻāĻŋ "fc" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻĨāĻžāĻā§ āĻŦāĻž āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ¸āĻ°ā§āĻ āĻ¯ā§āĻā§āĻ¤ āĻĨāĻžāĻā§
"āĻŽā§āĻ˛::". "fc" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ "v5.16 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" (āĻŦāĻž āĻāĻā§āĻāĻ¤āĻ°) āĻ¸āĻš āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¯āĻŧ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻ¯ā§āĻā§ āĻā§āĻˇāĻŖāĻžāĨ¤
āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ āĻāĻŦāĻ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻŽā§āĻ¯āĻžāĻāĻŋāĻ
"m//", "pos", "qr//", "quotemeta", "s///", "āĻŦāĻŋāĻāĻā§āĻ¤", "āĻ āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨"
āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻĢāĻžāĻāĻļāĻ¨
"abs", "atan2", "cos", "exp", "hex", "int", "log", "oct", "rand", "sin", "sqrt",
"srand"
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ @ARRAY-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻļāĻ¨
"āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ", "āĻā§", "āĻĒāĻĒ", "āĻĒā§āĻļ", "āĻļāĻŋāĻĢā§āĻ", "āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸", "āĻāĻ¨āĻļāĻŋāĻĢā§āĻ", "āĻŽāĻžāĻ¨"
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻļāĻ¨
"grep", "āĻ¯ā§āĻ āĻĻāĻŋāĻ¨", "āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ°", "qw//", "āĻŦāĻŋāĻĒāĻ°ā§āĻ¤", "āĻ¸āĻ°ā§āĻ", ââ"āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ"
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ% āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻļāĻ¨
"āĻŽā§āĻā§āĻ¨", "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ", "āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨", "āĻā§", "āĻŽāĻžāĻ¨"
āĻāĻ¨āĻĒā§āĻ āĻāĻŦāĻ āĻāĻāĻāĻĒā§āĻ āĻĢāĻžāĻāĻļāĻ¨
"binmode", "close", "closedir", "dbmclose", "dbmopen", "die", "eof", "fileno",
"āĻĢā§āĻ˛āĻ", "āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ", "getc", "print", "printf", "read", "readdir", "readline"
"āĻ°āĻŋāĻāĻāĻ¨ā§āĻĄāĻĄāĻŋāĻ°", "āĻŦāĻ˛ā§āĻ¨", "āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨", "āĻ¸āĻŋāĻāĻĄāĻŋāĻ°", "āĻ¸āĻŋāĻ˛ā§āĻā§āĻ", "āĻ¸āĻŋāĻ¸ā§āĻāĻžāĻ˛", "āĻ¸āĻŋāĻ¸āĻ°āĻŋāĻĄ", "āĻ¸āĻŋāĻ¸ā§āĻ",
"syswrite", "tell", "telldir", "runcate", "warn", "write"
"āĻŦāĻ˛ā§āĻ¨" āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻāĻ¨āĻ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻšāĻ¯āĻŧ āĻ¯āĻĻāĻŋ "āĻŦāĻ˛āĻž" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻĨāĻžāĻā§ āĻŦāĻž āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ¸āĻ°ā§āĻ āĻ¯ā§āĻā§āĻ¤ āĻĨāĻžāĻā§ā§ˇ
"āĻŽā§āĻ˛::". "āĻŦāĻ˛ā§āĻ¨" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° v5.10" (āĻŦāĻž āĻāĻā§āĻāĻ¤āĻ°) āĻ¸āĻš āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¯āĻŧ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻ¯ā§āĻā§ āĻā§āĻˇāĻŖāĻžāĨ¤
āĻ¸ā§āĻĨāĻŋāĻ°-āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻĄā§āĻāĻž āĻŦāĻž āĻ°ā§āĻāĻ°ā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻļāĻ¨
"āĻĒā§āĻ¯āĻžāĻ", "āĻĒāĻĄāĻŧā§āĻ¨", "syscall", "sysread", "sysseek", "syswrite", "unpack", "vec"
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻĢāĻžāĻāĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻļāĻ¨
"-X", "chdir", "chmod", "chown", "chroot", "fcntl", "glob", "ioctl", "link", "lstat",
"mkdir", "open", "opendir", "readlink", "rename", "rmdir", "stat", "symlink",
"āĻ¸āĻŋāĻ¸ā§āĻĒā§āĻ¨", "āĻāĻŽāĻžāĻ¸ā§āĻ", "āĻāĻ¨āĻ˛āĻŋāĻā§āĻ", "āĻāĻāĻāĻžāĻāĻŽ"
āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻĒā§āĻ°āĻŦāĻžāĻš āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ
"āĻŦā§āĻ°ā§āĻ", "āĻāĻ˛āĻžāĻ°", "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨", "āĻĄāĻžāĻ", "āĻĄā§", "āĻĄāĻžāĻŽā§āĻĒ", "āĻāĻāĻžāĻ˛", "āĻāĻāĻžāĻ˛āĻŦāĻžāĻāĻāĻ¸" "āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨",
"__FILE__", "goto", "āĻļā§āĻˇ", "__LINE__", "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§", "__PACKAGE__", "āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨", "āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨",
"āĻ¸āĻžāĻŦ", "__SUB__", "wantarray"
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ "āĻ¸ā§āĻāĻ" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°ā§āĻ¨ āĻŦāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻ¤āĻŦā§āĻ "āĻŦā§āĻ°ā§āĻ" āĻāĻĒāĻ˛āĻŦā§āĻ§
"CORE::" āĻāĻĒāĻ¸āĻ°ā§āĻāĨ¤ "āĻ¸ā§āĻāĻ" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ "āĻĄāĻŋāĻĢāĻ˛ā§āĻ", "āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤" āĻāĻŦāĻ "āĻāĻāĻ¨" āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°ā§
āĻŦāĻŋāĻŦā§āĻ¤āĻŋ, āĻ¯āĻž āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻŋāĻ¨ā§ "āĻ¸ā§āĻāĻ āĻ¸ā§āĻā§āĻāĻŽā§āĻ¨ā§āĻ" āĻ āĻ¨āĻĨāĻŋāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻ¸ā§āĻāĻ"
āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻāĻāĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° v5.10" (āĻŦāĻž āĻāĻā§āĻāĻ¤āĻ°) āĻā§āĻˇāĻŖāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¯āĻŧā§ˇ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻ¯ā§āĻāĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ v5.14 āĻāĻŦāĻ āĻ¤āĻžāĻ° āĻāĻā§, "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻāĻ° āĻāĻ¨ā§āĻ¯ "āĻ¸ā§āĻāĻ" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨,
āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄā§āĻ° āĻŽāĻ¤ā§āĨ¤
"evalbytes" āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "evalbytes" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ˛āĻŦā§āĻ§ (āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĻā§āĻā§āĻ¨) āĻ āĻĨāĻŦāĻž āĻ¯āĻĻāĻŋ
"CORE::" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻĒā§āĻ°āĻŋāĻĢāĻŋāĻā§āĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ "__SUB__" āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "current_sub" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻŦāĻž
āĻ¯āĻĻāĻŋ "CORE::" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ¸āĻ°ā§āĻ āĻĨāĻžāĻā§āĨ¤ "evalbytes" āĻāĻŦāĻ "current_sub" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻāĻ¯āĻŧāĻ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻ¯ā§āĻā§ āĻāĻāĻāĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° v5.16" (āĻŦāĻž āĻāĻā§āĻāĻ¤āĻ°) āĻā§āĻˇāĻŖāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¯āĻŧā§āĻā§ā§ˇ
āĻ¸ā§āĻā§āĻĒāĻŋāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ
"āĻāĻ˛āĻžāĻ°", "āĻāĻŽāĻĻāĻžāĻ¨āĻŋ", "āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ", "āĻāĻŽāĻžāĻ°", "āĻāĻŽāĻžāĻĻā§āĻ°", "āĻĒā§āĻ¯āĻžāĻā§āĻ", "āĻ°āĻžāĻˇā§āĻā§āĻ°", "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°"
"state" āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻāĻ¨āĻ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¯āĻĻāĻŋ "state" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°āĻž āĻĨāĻžāĻā§ āĻŦāĻž āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ¸āĻ°ā§āĻ āĻ¯ā§āĻā§āĻ¤ āĻĨāĻžāĻā§
"āĻŽā§āĻ˛::". "āĻ¸ā§āĻā§āĻ" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° v5.10" (āĻŦāĻž āĻāĻā§āĻāĻ¤āĻ°) āĻ¸āĻš āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¯āĻŧ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻ¯ā§āĻā§ āĻā§āĻˇāĻŖāĻžāĨ¤
āĻŦāĻŋāĻŦāĻŋāĻ§ āĻĢāĻžāĻāĻļāĻ¨
"āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤", "āĻĢāĻ°ā§āĻŽāĻ˛āĻžāĻāĻ¨", "āĻ˛āĻ", "āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ", "āĻ°āĻŋāĻ¸ā§āĻ", "āĻ¸ā§āĻā§āĻ˛āĻžāĻ°", "undef"
āĻĒā§āĻ°āĻ¸ā§āĻ¸ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¸ā§āĻ¸ āĻā§āĻ°ā§āĻĒā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻļāĻ¨
"āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ", "exec", "āĻĢāĻ°ā§āĻ", "getpgrp", "getppid", "getpriority", "kill", "pipe", "qx//",
"āĻ°āĻŋāĻĄāĻĒāĻžāĻāĻĒ", "āĻ¸ā§āĻāĻĒāĻŋāĻāĻŋāĻāĻ°āĻĒāĻŋ", "āĻ¸ā§āĻāĻĒā§āĻ°ā§āĻ°āĻŋāĻāĻŋ", "āĻ¸ā§āĻ˛āĻŋāĻĒ", "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ", "āĻ¸āĻŽāĻ¯āĻŧ", "āĻāĻ¯āĻŧā§āĻ", "āĻāĻ¯āĻŧā§āĻāĻĒāĻŋāĻĄ"
āĻĒāĻžāĻ°ā§āĻ˛ āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ
"āĻāĻ°ā§āĻ¨", "āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°ā§āĻ¨", "āĻ¨āĻž", "āĻĒā§āĻ¯āĻžāĻā§āĻ", "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨", "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨"
āĻā§āĻ˛āĻžāĻ¸ āĻāĻŦāĻ āĻ āĻŦāĻā§āĻā§āĻ-āĻāĻ°āĻŋāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ
"āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻ", "dbmclose", "dbmopen", "package", "ref", "tie", "tied", "untie", "use"
āĻ¨āĻŋāĻŽā§āĻ¨-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻ¸āĻā§āĻ āĻĢāĻžāĻāĻļāĻ¨
"āĻ¸ā§āĻŦā§āĻāĻžāĻ° āĻāĻ°ā§āĻ¨", "āĻāĻŦāĻĻā§āĻ§ āĻāĻ°ā§āĻ¨", "āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°ā§āĻ¨", "āĻā§āĻāĻĒāĻŋāĻ¯āĻŧāĻžāĻ°āĻ¨āĻžāĻŽ", "āĻā§āĻāĻ¸āĻāĻ¨āĻžāĻŽ", "āĻā§āĻāĻ¸āĻāĻĒāĻ", "āĻļā§āĻ¨ā§āĻ¨",
"recv", "āĻĒāĻžāĻ āĻžāĻ¨", "āĻ¸ā§āĻāĻ¸āĻāĻĒāĻ", "āĻļāĻžāĻāĻĄāĻžāĻāĻ¨", "āĻ¸āĻā§āĻ", "āĻ¸āĻā§āĻāĻĒā§āĻ¯āĻŧāĻžāĻ°"
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ V āĻāĻ¨ā§āĻ¤āĻāĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¯ā§āĻāĻžāĻ¯ā§āĻ āĻĢāĻžāĻāĻļāĻ¨
"msgctl", "msgget", "msgrcv", "msgsnd", "semctl", "semget", "semop", "shmctl",
"shmget", "shmread", "shmwrite"
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻŦāĻ āĻā§āĻˇā§āĻ ā§āĻ° āĻ¤āĻĨā§āĻ¯ āĻāĻ¨āĻž āĻšāĻā§āĻā§
"endgrent", "endhostent", "endnetent", "endpwent", "getgrent", "getgrgid", "getgrnam",
"getlogin", "getpwent", "getpwnam", "getpwuid", "setgrent", "setpwent"
āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻ¤āĻĨā§āĻ¯ āĻāĻ¨āĻž āĻšāĻā§āĻā§
"endprotoent", "endservent", "gethostbyaddr", "gethhostbyname", "gethostent",
"getnetbyaddr", "getnetbyname", "getnetent", "getprotobyname", "getprotobynumber",
"getprotoent", "getservbyname", "getservbyport", "getservent", "sethostent",
"setnetent", "setprotoent", "setservent"
āĻ¸āĻŽāĻ¯āĻŧ-āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻĢāĻžāĻāĻļāĻ¨
"gmtime", "āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ", "āĻ¸āĻŽāĻ¯āĻŧ", "āĻ¸āĻŽāĻ¯āĻŧ"
āĻ¨āĻ¨-āĻĢāĻžāĻāĻļāĻ¨ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ
"āĻāĻŦāĻ", "āĻ āĻā§āĻ˛ā§āĻĄ", "āĻļā§āĻ°ā§", "āĻā§āĻ", "cmp", "CORE", "__DATA__", "āĻĄāĻŋāĻĢāĻ˛ā§āĻ", "DESTROY",
"else", "elseif", "elsif", "END", "__END__", "eq", "for", "foreach", "ge", "āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤",
"gt", "if", "INIT", "le", "lt", "ne", "not", "āĻŦāĻž", "UNITCHECK", "āĻ¯āĻĻāĻŋ āĻ¨āĻž", "āĻ¯āĻ¤āĻā§āĻˇāĻŖ āĻ¨āĻž"
"āĻāĻāĻ¨", "āĻ¯āĻāĻ¨", "x", "xor"
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ
āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻāĻ¨āĻŋāĻā§āĻ¸ā§ āĻāĻ¨ā§āĻŽāĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĻāĻŋāĻ˛ āĻāĻŦāĻ āĻ¤āĻžāĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛āĻā§āĻ˛āĻŋ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ -āĻāĻāĻ¨āĻŋāĻā§āĻ¸ā§
āĻĒāĻ°āĻŋāĻŦā§āĻļā§, āĻāĻŋāĻā§ āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ā§āĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻāĻĒāĻ˛āĻā§āĻ¯ āĻŦāĻž āĻŦāĻŋāĻļāĻĻ āĻ¨āĻžāĻ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻāĻŋāĻ¨ā§āĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§. āĻāĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻĒāĻžāĻ°ā§āĻ˛ āĻĢāĻžāĻāĻļāĻ¨
āĻšāĻ¯āĻŧ:
"-X", "binmode", "chmod", "chown", "chroot", "crypt", "dbmclose", "dbmopen", "dump",
"endgrent", "endhostent", "endnetent", "endprotoent", "endpwent", "endservent", "exec",
"fcntl", "flock", "Fork", "getgrent", "getgrgid", "gethostbyname", "gethostent",
"getlogin", "getnetbyaddr", "getnetbyname", "getnetent", "getppid", "getpgrp",
"getpriority", "getprotobynumber", "getprotoent", "getpwent", "getpwnam", "getpwuid",
"getservbyport", "getservent", "getsockopt", "glob", "ioctl", "kill", "link", "lstat",
"msgctl", "msgget", "msgrcv", "msgsnd", "āĻāĻĒā§āĻ¨", "āĻĒāĻžāĻāĻĒ", "āĻ°āĻŋāĻĄāĻ˛āĻŋāĻāĻ", "āĻ°āĻŋāĻ¨ā§āĻŽ", "āĻ¸āĻŋāĻ˛ā§āĻā§āĻ",
"semctl", "semget", "semop", "setgrent", "sethostent", "setnetent", "setpgrp",
"āĻ¸ā§āĻāĻĒā§āĻ°ā§āĻ°āĻŋāĻāĻŋ", "āĻ¸ā§āĻāĻĒā§āĻ°ā§āĻā§āĻ¯āĻŧā§āĻ¨ā§āĻ", "āĻ¸ā§āĻāĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ", "āĻ¸ā§āĻāĻ¸āĻžāĻ°ā§āĻā§āĻ¨ā§āĻ", "āĻ¸ā§āĻāĻ¸āĻāĻĒāĻ", "shmctl", "shmget",
"shmread", "shmwrite", "āĻ¸āĻā§āĻ", "āĻ¸āĻā§āĻāĻĒā§āĻ¯āĻŧāĻžāĻ°", "stat", "symlink", "syscall", "sysopen",
"āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ", "āĻāĻžāĻāĻŽāĻ¸", "āĻā§āĻ°āĻžāĻā§āĻā§āĻ", "āĻāĻŽāĻžāĻ¸ā§āĻ", "āĻāĻ¨āĻ˛āĻŋāĻā§āĻ", "āĻāĻāĻāĻžāĻāĻŽ", "āĻāĻ¯āĻŧā§āĻ", "āĻāĻ¯āĻŧā§āĻāĻĒāĻŋāĻĄ"
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯, perlport āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĻā§āĻā§āĻ¨
āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ-āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨āĨ¤
āĻŦāĻ°ā§āĻŖāĻžāĻ¨ā§āĻā§āĻ°āĻŽāĻŋāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž of āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻžāĻ°ā§āĻ¯āĻžāĻŦāĻ˛ā§
-āĻāĻā§āĻ¸ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛
-āĻāĻā§āĻ¸ āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻ¸
-āĻāĻā§āĻ¸ āĻĄāĻŋāĻ°āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛
-X āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°ā§āĻā§āĻˇāĻž, āĻ¯ā§āĻāĻžāĻ¨ā§ X āĻ¨ā§āĻā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋāĨ¤ āĻāĻ unary āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ˛āĻžāĻā§
āĻāĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋ, āĻšāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ, āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻŦāĻž āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻāĻŦāĻ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§
āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻāĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻŋāĻā§ āĻ¸āĻ¤ā§āĻ¯ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻĻā§āĻāĻ¤ā§āĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻŦāĻžāĻĻ āĻĻāĻŋāĻ˛ā§,
$_ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§, "-t" āĻāĻžāĻĄāĻŧāĻž, āĻ¯āĻž STDIN āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĨ¤ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻ¨āĻĨāĻŋāĻā§āĻā§āĻ¤ āĻ¨āĻž āĻšāĻ˛ā§, āĻāĻāĻŋ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§
āĻ¸āĻ¤ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ 1 āĻāĻŦāĻ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ ''āĨ¤ āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨āĻž āĻĨāĻžāĻā§ āĻŦāĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž, āĻāĻāĻŋ
"undef" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ $ āĻ¸ā§āĻ āĻāĻ°ā§! (āĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ)āĨ¤ āĻŽāĻāĻžāĻ° āĻ¨āĻžāĻŽ āĻ¸āĻ¤ā§āĻ¤ā§āĻŦā§āĻ, āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻāĻāĻ
āĻ āĻ¨ā§āĻ¯ āĻā§āĻ¨ā§ āĻ¨āĻžāĻŽāĻ¯ā§āĻā§āĻ¤ unary āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§. āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§ āĻā§āĻ¨ā§:
-r āĻĢāĻžāĻāĻ˛ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° uid/gid āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ āĻ¨āĻ¯ā§āĻā§āĻ¯āĨ¤
-w āĻĢāĻžāĻāĻ˛ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° uid/gid āĻĻā§āĻŦāĻžāĻ°āĻž āĻ˛ā§āĻāĻžāĻ° āĻ¯ā§āĻā§āĻ¯āĨ¤
-x āĻĢāĻžāĻāĻ˛ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° uid/gid āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¯ā§āĻā§āĻ¯āĨ¤
-o āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻāĻāĻāĻĄāĻŋāĻ° āĻŽāĻžāĻ˛āĻŋāĻāĻžāĻ¨āĻžāĻ§ā§āĻ¨āĨ¤
-R āĻĢāĻžāĻāĻ˛ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ uid/gid āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ āĻ¨āĻ¯ā§āĻā§āĻ¯āĨ¤
-W āĻĢāĻžāĻāĻ˛ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ uid/gid āĻĻā§āĻŦāĻžāĻ°āĻž āĻ˛ā§āĻāĻžāĻ° āĻ¯ā§āĻā§āĻ¯āĨ¤
-āĻāĻā§āĻ¸ āĻĢāĻžāĻāĻ˛ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ uid/gid āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻšāĻ¯ā§āĻā§āĻ¯āĨ¤
-O āĻĢāĻžāĻāĻ˛ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ uid āĻĻā§āĻŦāĻžāĻ°āĻž āĻŽāĻžāĻ˛āĻŋāĻāĻžāĻ¨āĻžāĻ§ā§āĻ¨.
-e āĻĢāĻžāĻāĻ˛ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨āĨ¤
-z āĻĢāĻžāĻāĻ˛ā§āĻ° āĻāĻāĻžāĻ° āĻļā§āĻ¨ā§āĻ¯ (āĻāĻžāĻ˛āĻŋ)āĨ¤
-s āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ āĻļā§āĻ¨ā§āĻ¯ āĻāĻāĻžāĻ° āĻ°āĻ¯āĻŧā§āĻā§ (āĻŦāĻžāĻāĻā§ āĻāĻāĻžāĻ° āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ)āĨ¤
-f āĻĢāĻžāĻāĻ˛ āĻāĻāĻāĻŋ āĻĒā§āĻ˛ā§āĻāĻ¨ āĻĢāĻžāĻāĻ˛āĨ¤
-d āĻĢāĻžāĻāĻ˛ āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĨ¤
-l āĻĢāĻžāĻāĻ˛ āĻšāĻ˛ āĻāĻāĻāĻŋ āĻ¸āĻŋāĻŽā§āĻŦāĻ˛āĻŋāĻ āĻ˛āĻŋāĻā§āĻ (āĻ¯āĻĻāĻŋ āĻ¸āĻŋāĻŽāĻ˛āĻŋāĻāĻ āĻ¨āĻž āĻšāĻ¯āĻŧ āĻ¤āĻžāĻšāĻ˛ā§ āĻŽāĻŋāĻĨā§āĻ¯āĻž
āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤)āĨ¤
-p āĻĢāĻžāĻāĻ˛ āĻāĻāĻāĻŋ āĻ¨āĻžāĻŽāĻā§āĻ¤ āĻĒāĻžāĻāĻĒ (FIFO), āĻŦāĻž āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻāĻāĻāĻŋ āĻĒāĻžāĻāĻĒāĨ¤
-āĻāĻ¸ āĻĢāĻžāĻāĻ˛ āĻāĻāĻāĻŋ āĻ¸āĻā§āĻāĨ¤
-b āĻĢāĻžāĻāĻ˛ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻŦāĻŋāĻļā§āĻˇ āĻĢāĻžāĻāĻ˛āĨ¤
-c āĻĢāĻžāĻāĻ˛ āĻāĻāĻāĻŋ āĻ āĻā§āĻˇāĻ° āĻŦāĻŋāĻļā§āĻˇ āĻĢāĻžāĻāĻ˛āĨ¤
-t āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻāĻāĻāĻŋ TT-āĻ¤ā§ āĻā§āĻ˛āĻž āĻšāĻ¯āĻŧāĨ¤
-u āĻĢāĻžāĻāĻ˛ā§ setuid āĻŦāĻŋāĻ āĻ¸ā§āĻ āĻāĻā§āĨ¤
-g āĻĢāĻžāĻāĻ˛ā§ āĻ¸ā§āĻāĻāĻŋāĻĄ āĻŦāĻŋāĻ āĻ¸ā§āĻ āĻāĻ°āĻž āĻāĻā§āĨ¤
-k āĻĢāĻžāĻāĻ˛ā§ āĻ¸ā§āĻāĻŋāĻāĻŋ āĻŦāĻŋāĻ āĻ¸ā§āĻ āĻāĻā§āĨ¤
-āĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻšāĻ˛ āĻāĻāĻāĻŋ ASCII āĻŦāĻž UTF-8 āĻā§āĻā§āĻ¸āĻ āĻĢāĻžāĻāĻ˛ (āĻāĻ¨ā§āĻŽāĻžāĻ¨āĻŋāĻ āĻ āĻ¨ā§āĻŽāĻžāĻ¨)āĨ¤
-B āĻĢāĻžāĻāĻ˛ āĻāĻāĻāĻŋ "āĻŦāĻžāĻāĻ¨āĻžāĻ°ā§" āĻĢāĻžāĻāĻ˛ (-T āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤)āĨ¤
-āĻāĻŽ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻļā§āĻ°ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻŋāĻ¯āĻŧā§āĻ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻĻāĻŋāĻ¨ā§āĨ¤
-āĻāĻā§āĻ¸ā§āĻ¸ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻ.
-āĻ¸āĻŋ āĻāĻ¨ā§āĻĄ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻ (āĻāĻāĻ¨āĻŋāĻā§āĻ¸, āĻ āĻ¨ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ˛āĻžāĻĻāĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ)
āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻ¯āĻāĻ¨ (<>) {
āĻāĻŽā§āĻĒ
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¯āĻĻāĻŋ āĻ¨āĻž -f $_; # āĻŦāĻŋāĻļā§āĻˇ āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨
# ...
}
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ "-s/a/b/" āĻāĻāĻāĻŋ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻāĻāĻ¨āĻ "-exp($foo)" āĻŦāĻ˛āĻž āĻšāĻā§āĻā§
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§, āĻ¤āĻŦā§: āĻāĻāĻāĻŋ āĻŦāĻŋāĻ¯āĻŧā§āĻ āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻ āĻ āĻā§āĻˇāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻĢāĻžāĻāĻ˛ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĨ¤
āĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻā§āĻ˛āĻŋ āĻāĻĒāĻ°ā§ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ "āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽā§āĻ° āĻŽāĻ¤ āĻĻā§āĻāĻžāĻā§āĻā§" āĻĨā§āĻā§ āĻ āĻŦā§āĻ¯āĻžāĻšāĻ¤āĻŋāĻĒā§āĻ°āĻžāĻĒā§āĻ¤āĨ¤
āĻ āĻ°ā§āĻĨāĻžā§, āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻĒāĻ°ā§ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻž āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻāĻ¤āĻāĻž āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°ā§ āĻ¨āĻž
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻā§āĻĄ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻ āĻ¨. āĻāĻ° āĻāĻā§ āĻā§āĻ˛āĻž āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻ°āĻžāĻā§āĻ¨
āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻā§ āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻž āĻā§āĻĄ āĻĨā§āĻā§ āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ (āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¯
āĻāĻāĻ¨āĻžāĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻĻā§āĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻāĻā§āĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ°, āĻ āĻŦāĻļā§āĻ¯āĻ):
-s($file) + 1024 # āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻā§āĻ˛; -s($file + 1024) āĻāĻ° āĻŽāĻ¤ā§
(-s $file) + 1024 # āĻ¸āĻ āĻŋāĻ
āĻĢāĻžāĻāĻ˛ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻā§āĻ˛āĻŋāĻ° āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž "-r", "-R", "-w", "-W", "-x", āĻāĻŦāĻ
"-X" āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŽā§āĻĄ āĻāĻŦāĻ āĻāĻ° uids āĻāĻŦāĻ gids āĻāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻ¸āĻ˛ā§ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĒāĻĄāĻŧāĻ¤ā§, āĻ˛āĻŋāĻāĻ¤ā§ āĻŦāĻž āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž āĻāĻŽāĻ¨ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻžāĻ°āĻŖ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§:
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛, ACLs (āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛ āĻ˛āĻŋāĻ¸ā§āĻ), āĻ°āĻŋāĻĄ-āĻāĻ¨āĻ˛āĻŋ
āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ, āĻāĻŦāĻ āĻ āĻā§āĻ¨āĻž āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻā§āĻŦāĻ˛ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻāĨ¤ āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯, āĻāĻ āĻāĻ¯āĻŧāĻāĻŋāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°
āĻāĻŋāĻā§ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻ¸āĻŽā§āĻāĻŦ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻ¯āĻžāĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻāĻāĻŋ āĻā§āĻ˛,
āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻāĻžāĻ¤āĻŋāĻāĻ¤ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¨ā§āĻŽā§āĻā§āĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§, āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ¸ā§āĻĒāĻžāĻ° āĻāĻāĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯, "-r", "-R", "-w", āĻāĻŦāĻ
"-W" āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻ¸āĻ°ā§āĻŦāĻĻāĻž 1 āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ "-x" āĻāĻŦāĻ "-X" 1 āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯āĻĻāĻŋ āĻā§āĻ¨ā§ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻ āĻŦāĻŋāĻ āĻ¸ā§āĻ āĻāĻ°āĻž āĻĨāĻžāĻā§
āĻāĻžāĻŦ. āĻ¸ā§āĻĒāĻžāĻ° āĻāĻāĻāĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻžāĻ˛āĻŋāĻ¤ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻāĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻĒāĻ°āĻŋāĻ¸āĻāĻā§āĻ¯āĻžāĻ¨ () āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĒā§āĻ°āĻā§āĻ¤ āĻŽā§āĻĄ, āĻŦāĻž āĻ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§āĻāĻžāĻŦā§ āĻ¤āĻžāĻĻā§āĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻ° uid āĻ āĻ¨ā§āĻ¯ āĻāĻŋāĻā§āĻ¤ā§ āĻ¸ā§āĻ āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ ACLs āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ "filetest" āĻ¨āĻžāĻŽā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻ¯āĻžāĻāĻŽāĻž āĻāĻā§ āĻ¯āĻž āĻāĻ°āĻ āĻŦā§āĻļāĻŋ āĻā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦā§āĻ¯āĻŧāĻžāĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻ¸āĻ āĻŋāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĒāĻ°āĻŋāĻ¸āĻāĻā§āĻ¯āĻžāĻ¨ () āĻŽā§āĻĄ āĻŦāĻŋāĻāĨ¤ āĻ¯āĻāĻ¨ "āĻĢāĻžāĻāĻ˛āĻā§āĻ¸ā§āĻ 'āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨"
āĻāĻĒāĻ°ā§ āĻāĻ˛ā§āĻ˛āĻŋāĻāĻŋāĻ¤ āĻĢāĻžāĻāĻ˛ āĻā§āĻ¸ā§āĻāĻā§āĻ˛āĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§ āĻ¯ā§ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻ¨āĻž)
āĻĻā§āĻ¯ āĻĒā§āĻ°āĻŦā§āĻļ(2) āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻžāĻ°āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ "-x" āĻāĻŦāĻ "-X" āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻā§āĻ¨ā§ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻ āĻĒāĻžāĻ°āĻŽāĻŋāĻļāĻ¨ āĻŦāĻŋāĻ āĻ¸ā§āĻ āĻ¨āĻž āĻĨāĻžāĻāĻ˛ā§āĻ pragma āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ true (āĻŦāĻž āĻā§āĻ¨ā§ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤
āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ ACLs āĻāĻžāĻ˛āĻžāĻ¨)āĨ¤ āĻāĻ āĻ āĻĻā§āĻā§āĻ¤āĻ¤āĻž āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ā§āĻ° āĻāĻžāĻ°āĻŖā§
āĻ¸āĻāĻā§āĻāĻž āĻāĻ°āĻ āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§, "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĢāĻžāĻāĻ˛āĻā§āĻ¸ā§āĻ 'āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸'" āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻāĻžāĻ°āĻŖā§,
āĻāĻ pragma āĻ¯āĻāĻ¨ "_" āĻŦāĻŋāĻļā§āĻˇ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻā§āĻ¯āĻžāĻļā§ āĻāĻ°āĻŦā§ āĻ¨āĻž
āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧ āĻāĻ°āĻ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ "āĻĢāĻžāĻāĻ˛ā§āĻ¸ā§āĻ" āĻĒā§āĻ°āĻžāĻāĻŽāĻžāĻ° āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĒāĻĄāĻŧā§āĻ¨āĨ¤
"-T" āĻāĻŦāĻ "-B" āĻ¸ā§āĻāĻāĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ āĻāĻžāĻ āĻāĻ°ā§āĨ¤ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻŦā§āĻ˛āĻ āĻŦāĻž āĻ¤āĻžāĻ āĻšāĻ¯āĻŧ
āĻāĻāĻŋ āĻŦā§āĻ§ UTF-8 āĻ¯āĻž āĻ¨āĻ¨-ASCII āĻ āĻā§āĻˇāĻ° āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°ā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻ¯āĻĻāĻŋ, āĻ¤āĻžāĻ āĻāĻāĻž
āĻāĻāĻāĻŋ "-T" āĻĢāĻžāĻāĻ˛āĨ¤ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻĢāĻžāĻāĻ˛ā§āĻ° āĻāĻāĻ āĻ āĻāĻļ āĻŦāĻŋāĻā§āĻĄāĻŧ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¯ā§āĻŽāĻ¨ āĻ āĻĻā§āĻā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻā§āĻĄ āĻŦāĻž āĻāĻā§āĻ āĻŦāĻŋāĻ āĻ¸ā§āĻ āĻ¸āĻš āĻ āĻā§āĻˇāĻ°āĨ¤ āĻŦā§āĻļāĻŋ āĻšāĻ˛ā§ a
āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¤ā§āĻ¤ā§āĻ¯āĻŧāĻāĻŋ āĻ āĻĻā§āĻā§āĻ¤, āĻāĻāĻŋ āĻāĻāĻāĻŋ "-B" āĻĢāĻžāĻāĻ˛; āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻāĻāĻāĻŋ "-T" āĻĢāĻžāĻāĻ˛āĨ¤
āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻĒāĻ°ā§āĻā§āĻˇāĻŋāĻ¤ āĻ āĻāĻļā§ āĻāĻāĻāĻŋ āĻļā§āĻ¨ā§āĻ¯ āĻŦāĻžāĻāĻ āĻ§āĻžāĻ°āĻŖāĻāĻžāĻ°ā§ āĻā§āĻ¨ā§ āĻĢāĻžāĻāĻ˛ āĻāĻāĻāĻŋ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ āĻšāĻ¯āĻŧ
āĻĢāĻžāĻāĻ˛ (āĻ¯āĻĻāĻŋ "LC_CTYPE", āĻŦāĻŋāĻā§āĻĄāĻŧ
āĻ āĻā§āĻˇāĻ° āĻāĻŽāĻ¨ āĻāĻŋāĻā§ āĻ¯āĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ˛ā§āĻā§āĻ˛ā§ āĻŽā§āĻĻā§āĻ°āĻŖāĻ¯ā§āĻā§āĻ¯ āĻŦāĻž āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨āĻ¯āĻŧāĨ¤) āĻ¯āĻĻāĻŋ
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§ "-T" āĻŦāĻž "-B" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ IO āĻŦāĻžāĻĢāĻžāĻ° āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§
āĻĒā§āĻ°āĻĨāĻŽ āĻŦā§āĻ˛āĻāĨ¤ "-T" āĻāĻŦāĻ "-B" āĻāĻāĻ¯āĻŧāĻ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻĢāĻžāĻāĻ˛ā§, āĻŦāĻž EOF āĻ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§ āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧāĨ¤ āĻāĻžāĻ°āĻŖ āĻāĻĒāĻ¨āĻžāĻā§ "-T" āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻĒāĻĄāĻŧāĻ¤ā§ āĻšāĻŦā§, āĻ āĻ¨
āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ āĻ¨ā§āĻˇā§āĻ āĻžāĻ¨ā§ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻĨāĻŽā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ "-f" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨, āĻ¯ā§āĻŽāĻ¨ "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¯āĻĻāĻŋ āĻ¨āĻž -f"
$file && -T $file"āĨ¤
āĻ¯āĻĻāĻŋ āĻā§āĻ¨ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°ā§āĻā§āĻˇāĻž (āĻŦāĻž āĻšāĻ¯āĻŧ "stat" āĻŦāĻž "lstat" āĻ āĻĒāĻžāĻ°ā§āĻāĻ°) āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻāĻ¨ āĻāĻ¨ā§āĻĄāĻžāĻ°āĻ˛āĻžāĻāĻ¨ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¤ āĻŦāĻŋāĻļā§āĻˇ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻ° āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻ¸ā§āĻā§āĻ°āĻžāĻāĻāĻžāĻ°
āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°ā§āĻā§āĻˇāĻž (āĻŦāĻž āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖāĨ¤ (āĻāĻāĻž āĻāĻ°ā§ āĻ¨āĻž
"-t" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻŋ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻ¤ā§ āĻšāĻŦā§ lstat () āĻāĻŦāĻ "-l" āĻ¤ā§ āĻŽāĻžāĻ¨ āĻā§āĻĄāĻŧā§ āĻĻāĻŋāĻ¨
āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻ˛āĻŋāĻā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻāĻ āĻ¨, āĻāĻ¸āĻ˛ āĻĢāĻžāĻāĻ˛ āĻ¨āĻ¯āĻŧāĨ¤) (āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻŦāĻžāĻĢāĻžāĻ° āĻšāĻ˛ā§
āĻāĻāĻāĻŋ "lstat" āĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°ā§āĻŖ āĻšāĻ¯āĻŧā§āĻā§, "-T" āĻāĻŦāĻ "-B" āĻāĻāĻŋāĻā§ "stat" āĻāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĻāĻŋāĻ¯āĻŧā§ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¸ā§āĻ āĻāĻ°āĻŦā§
_")āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ "āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤\n" āĻ¯āĻĻāĻŋ -r $a || -w _ || -āĻāĻā§āĻ¸ _;
stat($filename);
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻĒāĻ āĻ¨āĻ¯ā§āĻā§āĻ¯\n" āĻ¯āĻĻāĻŋ -r _;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻ˛ā§āĻāĻžāĻ¯ā§āĻā§āĻ¯\n" āĻ¯āĻĻāĻŋ -w _;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻā§āĻŦāĻ˛\n" āĻ¯āĻĻāĻŋ -x _;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "Setuid\n" āĻ¯āĻĻāĻŋ -u _;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "Setgid\n" āĻ¯āĻĻāĻŋ -g _;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻ¸ā§āĻāĻŋāĻāĻŋ\n" āĻ¯āĻĻāĻŋ -k _;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻā§āĻā§āĻ¸āĻ\n" āĻ¯āĻĻāĻŋ -T _;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻŦāĻžāĻāĻ¨āĻžāĻ°ā§\n" āĻ¯āĻĻāĻŋ -B _;
āĻĒāĻžāĻ°ā§āĻ˛ 5.10.0 āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§, āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻāĻāĻŋāĻ āĻāĻŋāĻ¨āĻŋāĻ° āĻāĻāĻāĻŋ āĻĢāĻ°ā§āĻŽ āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻāĻĒāĻ¨āĻŋ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ āĻĒāĻžāĻ°ā§āĻāĻ°, āĻāĻŽāĻ¨āĻāĻžāĻŦā§ āĻ¯ā§ "-f -w -x $file" "-x $file && -w _ && -f _" āĻāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯āĨ¤
(āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ āĻāĻŋāĻ¨āĻŦ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸: āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ "-f $file" āĻāĻ° āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻ āĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻ˛āĻā§āĻ¸ā§āĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻāĻžāĻā§, āĻā§āĻ¨ āĻŦāĻŋāĻļā§āĻˇ āĻāĻžāĻĻā§ āĻāĻāĻŦā§ āĻ¨āĻžāĨ¤)
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "-X"āĨ¤
āĻ°āĻšāĻ¸ā§āĻ¯āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§, āĻ°āĻžāĻā§āĻ¨
āĻāĻĒāĻ¨āĻžāĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ°āĻāĻŽ āĻāĻŋāĻā§:
5.010 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻĢāĻžāĻāĻ˛āĻā§āĻ¸ā§āĻ āĻ āĻĒā§āĻ¸ āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
abs VALUE
abs āĻāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻĒāĻ°āĻŽ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ VALUE āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻ¨āĻŋāĻāĻāĻ¸āĻā§āĻ, āĻā§āĻ¨ā§āĻ°āĻŋāĻāĻ¸āĻā§āĻ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻāĻ¨āĻāĻžāĻŽāĻŋāĻ āĻ¸āĻā§āĻ āĻ¸āĻāĻ¯ā§āĻ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§, āĻ āĻŋāĻ āĻ¯ā§āĻŽāĻ¨ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻž(2) āĻāĻ°ā§āĨ¤ āĻŦāĻ¸ā§āĻ¤āĻžāĻŦāĻ¨ā§āĻĻā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ āĻŋāĻāĻžāĻ¨āĻž āĻ¸āĻĢāĻ˛ āĻšāĻ˛ā§, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĨ¤ "āĻ¸āĻā§āĻāĻ¸: āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ/āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻāĻŋ āĻĻā§āĻā§āĻ¨
āĻ¯ā§āĻāĻžāĻ¯ā§āĻ" āĻĒāĻžāĻ°ā§āĻ˛āĻŋāĻĒāĻ¸āĻŋāĻ¤ā§āĨ¤
āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻā§āĻ˛ā§āĻ-āĻ āĻ¨-āĻāĻā§āĻ¸ā§āĻ āĻĒāĻ¤āĻžāĻāĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨āĻāĻžāĻ°ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻ¤ā§, āĻĒāĻ¤āĻžāĻāĻžāĻāĻŋ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻŦā§
āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻ˛āĻž āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§, $^F āĻāĻ° āĻŽāĻžāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤āĨ¤ "$^F" āĻĻā§āĻā§āĻ¨
āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°
āĻāĻ˛āĻžāĻ°ā§āĻŽ āĻ¸ā§āĻā§āĻ¨ā§āĻĄ
āĻŦāĻŋāĻĒāĻĻāĻžāĻļāĻā§āĻāĻž
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻĒāĻ°ā§ āĻāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻāĻāĻāĻŋ SIGALRM āĻŦāĻŋāĻ¤āĻ°āĻŖ āĻāĻ°āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻž āĻāĻ°ā§
wallclock āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻ āĻ¤āĻŋāĻŦāĻžāĻšāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§. āĻ¯āĻĻāĻŋ SECONDS āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ¨āĻž āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ $_ āĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻŽāĻžāĻ¨
āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ (āĻāĻŋāĻā§ āĻŽā§āĻļāĻŋāĻ¨ā§, āĻĻā§āĻ°ā§āĻāĻžāĻā§āĻ¯āĻŦāĻļāĻ¤, āĻ āĻ¤āĻŋāĻŦāĻžāĻšāĻŋāĻ¤ āĻ¸āĻŽāĻ¯āĻŧ āĻāĻ āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻāĻŽ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻž āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻāĻžāĻ°āĻŖ āĻāĻŋāĻāĻžāĻŦā§ āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ¸āĻŽāĻ¯āĻŧāĻ¸ā§āĻā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛ āĻĄā§āĻ˛āĻŋāĻāĻžāĻ°āĻŋāĻ¤ā§ āĻāĻ°āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤)
āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻāĻžāĻāĻŽāĻžāĻ° āĻāĻāĻŦāĻžāĻ°ā§ āĻāĻŖāĻ¨āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻ˛ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻāĻžāĻāĻŽāĻžāĻ° āĻ¨āĻŋāĻˇā§āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°ā§, āĻāĻŦāĻ āĻāĻāĻāĻŋ
0 āĻāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻļā§āĻ°ā§ āĻ¨āĻž āĻāĻ°ā§ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻāĻžāĻāĻŽāĻžāĻ° āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°āĻ¤ā§ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻšāĻ˛ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻāĻžāĻāĻŽāĻžāĻ°ā§ āĻ āĻŦāĻļāĻŋāĻˇā§āĻ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻĒāĻ°āĻŋāĻŽāĻžāĻŖāĨ¤
āĻāĻ āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§āĻ° āĻā§āĻ¯āĻŧā§ āĻ¸ā§āĻā§āĻˇā§āĻŽ āĻā§āĻ°āĻžāĻ¨ā§āĻ˛āĻŋāĻāĻŋ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§āĻ° āĻāĻ¨ā§āĻ¯, āĻ¸āĻŽāĻ¯āĻŧ::āĻšāĻžāĻāĻ°ā§āĻ¸ āĻŽāĻĄāĻŋāĻāĻ˛ (CPAN āĻĨā§āĻā§,
āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛ āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ 5.8 āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻĄāĻŋāĻ¸ā§āĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻļāĻ¨ā§āĻ° āĻ āĻāĻļ) āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ ualarm()āĨ¤ āĻāĻĒāĻ¨āĻŋ
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻžāĻ°-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨() āĻĒā§āĻ°āĻĨāĻŽ āĻ¤āĻŋāĻ¨āĻāĻŋ āĻā§āĻĄāĻŧā§
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤, āĻ āĻĨāĻŦāĻž āĻāĻĒāĻ¨āĻŋ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻ¤ā§ "syscall" āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¸ā§āĻāĻāĻžāĻāĻŽāĻžāĻ°(2) āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻāĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§āĨ¤ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlfaq8 āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ "āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ" āĻāĻŦāĻ "āĻ¸ā§āĻ˛āĻŋāĻĒ" āĻāĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻŽāĻŋāĻļā§āĻ°āĻŋāĻ¤ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻā§āĻ˛, āĻāĻžāĻ°āĻŖ "āĻā§āĻŽ" āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ "āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ" āĻ¸āĻš āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖāĻāĻžāĻŦā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻāĻžāĻāĻŽ āĻāĻāĻ āĻāĻ°āĻ¤ā§ "āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻžāĻā§ "āĻāĻāĻžāĻ˛"/"āĻĄāĻžāĻ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻā§āĻĄāĻŧāĻž āĻāĻĒāĻ¨āĻŋ āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž āĻ¯āĻžāĻ° āĻĢāĻ˛ā§ $ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧ! āĻ¸ā§āĻ
"EINTR" āĻāĻžāĻ°āĻŖ āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻ¤ā§ āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ° āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°ā§āĨ¤
"eval"/"die" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻāĻžāĻ āĻāĻ°ā§, perlipc-āĻ "āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛"-āĻ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĻā§āĻ˛āĻŋ āĻŽāĻĄāĻŋāĻāĻ˛ āĻāĻ°ā§āĻ¨āĨ¤
eval {
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ $SIG{ALRM} = sub { die "alarm\n" }; # NB: \n āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨
āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ $āĻāĻžāĻāĻŽāĻāĻāĻ;
$nread = sysread SOCKET, $buffer, $size;
āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ 0;
};
āĻ¯āĻĻāĻŋ ($@) {
$@ eq "āĻāĻ˛āĻžāĻ°ā§āĻŽ\n" āĻ¨āĻž āĻšāĻ˛ā§ āĻŽāĻžāĻ°āĻž āĻ¯āĻžāĻŦā§; # āĻ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĒā§āĻ°āĻāĻžāĻ° āĻāĻ°ā§āĻ¨
# āĻ¸āĻŽāĻ¯āĻŧ āĻļā§āĻˇ āĻšāĻ¯āĻŧā§āĻā§
}
āĻ āĻ¨ā§āĻ¯ {
# āĻāĻ°ā§āĻ¨āĻŋ
}
āĻāĻ°āĻ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ perlipc āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ"āĨ¤
atan2 Y, X
-PI āĻĨā§āĻā§ PI āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻ°āĻŋāĻ¸āĻ°ā§ Y/X-āĻāĻ° āĻāĻ°ā§āĻāĻā§āĻ¯āĻžāĻā§āĻā§āĻ¨ā§āĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤
āĻ¸ā§āĻĒāĻ°ā§āĻļāĻ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻŋ "Math::Trig::tan" āĻĢāĻžāĻāĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ āĻĨāĻŦāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ:
āĻ¸āĻžāĻŦ āĻā§āĻ¯āĻžāĻ¨ { sin($_[0]) / cos($_[0]) }
"atan2(0,0)" āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻšāĻ˛ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨-āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤; āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ atan2(3)
āĻāĻ°āĻ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŽā§āĻ¯āĻžāĻ¨āĻĒā§āĻāĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "atan2"āĨ¤
SOCKET,NAME āĻŦāĻžāĻāĻ§ā§āĻ¨
āĻāĻāĻāĻŋ āĻ¸āĻā§āĻā§ āĻāĻāĻāĻŋ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻāĻŦāĻĻā§āĻ§ āĻāĻ°ā§, āĻ āĻŋāĻ āĻ¯ā§āĻŽāĻ¨ āĻŦāĻžāĻāĻ§āĻžāĻ āĻāĻ°āĻž(2) āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻšāĻ¯āĻŧ
āĻ¸āĻĢāĻ˛, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĨ¤ NAME āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻĒā§āĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻāĻĄ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤ā§ˇ
āĻ¸āĻā§āĻ āĻāĻ¨ā§āĻ¯. "āĻ¸āĻā§āĻāĻ¸: āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ/āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻŽāĻŋāĻāĻ¨āĻŋāĻā§āĻļāĻ¨" āĻāĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻĻā§āĻā§āĻ¨
perlipc
āĻŦāĻŋāĻ¨āĻŽā§āĻĄ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛, āĻ¸ā§āĻ¤āĻ°
āĻŦāĻŋāĻ¨āĻŽā§āĻĄ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ "āĻŦāĻžāĻāĻ¨āĻžāĻ°ā§" āĻŦāĻž "āĻā§āĻā§āĻ¸āĻ" āĻŽā§āĻĄā§ FILEHANDLE āĻĒāĻĄāĻŧāĻžāĻ° āĻŦāĻž āĻ˛ā§āĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻž āĻāĻ°ā§
āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ°āĻžāĻ¨-āĻāĻžāĻāĻŽ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻāĻŦāĻ āĻā§āĻā§āĻ¸āĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ FILEHANDLE
āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ, āĻŽāĻžāĻ¨āĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻ āĻ¸āĻ¤ā§āĻ¯
āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻŋ "undef" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ $ āĻ¸ā§āĻ āĻāĻ°ā§! (āĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ)āĨ¤
āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤, āĻĄāĻ¸- āĻāĻŦāĻ āĻāĻāĻ¨ā§āĻĄā§āĻ-āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ) āĻŦāĻŋāĻ¨āĻŽā§āĻĄ() āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ
āĻ¯āĻāĻ¨ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻĒāĻžāĻ ā§āĻ¯ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻā§āĻ¨ āĻ¨āĻžāĨ¤ āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻžāĻ˛
āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻšāĻ˛ā§ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ§āĻžāĻ°āĻŖāĻž, āĻāĻŦāĻ āĻ¯āĻāĻ¨ āĻāĻāĻŋ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻ¨āĻ¯āĻŧ āĻ¤āĻāĻ¨ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻžāĨ¤
āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻ˛ā§āĻā§āĻ°āĻž āĻ¤āĻžāĻĻā§āĻ° I/O āĻā§ āĻĄāĻŋāĻĢāĻ˛ā§āĻ UTF8-āĻāĻ¨āĻā§āĻĄā§āĻĄ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻŦāĻžāĻāĻ āĻ¨āĻ¯āĻŧāĨ¤
āĻ āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ: āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻļā§āĻˇā§, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻŦāĻŋāĻ¨āĻŽā§āĻĄ() āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻĄā§āĻāĻžāĻ¤ā§, āĻāĻŦāĻŋāĻ° āĻŽāĻ¤ā§, āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖ
āĻ¯āĻĻāĻŋ LAYER āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻĨāĻžāĻā§ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ, āĻ¤āĻŦā§ āĻāĻāĻžāĻ§āĻŋāĻ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻĻā§āĻ¯
āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻāĻāĻ°āĻŖ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻāĻ¨ LAYER āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻĨāĻžāĻā§, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻāĻāĻāĻŋ āĻā§āĻā§āĻ¸āĻ āĻĢāĻžāĻāĻ˛ā§ āĻŦāĻŋāĻ¨āĻŽā§āĻĄ āĻ āĻ°ā§āĻĨāĻŦā§āĻ§ āĻāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ āĻ˛ā§āĻ¯āĻŧāĻžāĻ° āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ āĻŦāĻž ":raw" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻŦā§ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋ āĻĒāĻžāĻ¸ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻĄā§āĻāĻžāĨ¤ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ CRLF āĻ āĻ¨ā§āĻŦāĻžāĻĻ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻž āĻāĻŦāĻ āĻāĻāĻŋāĻā§ āĻāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻāĻ°āĻž
āĻŦāĻžāĻāĻ (āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§)āĨ¤ āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§, āĻāĻŋ āĻāĻšā§āĻ¯ āĻĨāĻžāĻāĻž āĻ¸āĻ¤ā§āĻ¤ā§āĻŦā§āĻ
"āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻŋāĻ āĻĒāĻžāĻ°ā§āĻ˛" (The Camel, 3rd edition) āĻŦāĻž āĻ āĻ¨ā§āĻ¯ āĻā§āĻĨāĻžāĻ, ":raw" āĻšāĻ¯āĻŧ āĻ¨āĻž āĻ¸āĻšāĻāĻāĻžāĻŦā§
":crlf" āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤āĨ¤ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¸ā§āĻ¤āĻ° āĻ¯āĻž āĻ¸ā§āĻ°ā§āĻ¤ā§āĻ° āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻĒā§āĻ°āĻā§āĻ¤āĻŋāĻā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°āĻŦā§
āĻšāĻ¯āĻŧ āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻ āĻā§āĻˇāĻŽ PerlIO, perlrun, āĻāĻŦāĻ PERLIO āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ˛ā§āĻāĻ¨āĻž āĻĻā§āĻā§āĻ¨
āĻĒāĻ°āĻŋāĻŦā§āĻļ āĻ¸ā§āĻāĻ.
":āĻŦāĻžāĻāĻ", ":crlf", ":utf8", āĻāĻŦāĻ ":..." āĻĢāĻ°ā§āĻŽā§āĻ° āĻ āĻ¨ā§āĻ¯ āĻā§āĻ¨ā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻ¨āĻž āĻšāĻ˛
I/O āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ āĻ¸ā§āĻ¤āĻ°. āĻĄāĻŋāĻĢāĻ˛ā§āĻ I/O āĻ¸ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ "āĻāĻĒā§āĻ¨" āĻĒā§āĻ°āĻžāĻāĻŽāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻā§āĻ˛āĻž āĻĻā§āĻā§āĻ¨.
āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻŋāĻ° āĻ¸ā§āĻ¤āĻ° āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻŽāĻžāĻĒ of āĻĻā§āĻ¯ āĻŦāĻŋāĻ¨āĻŽā§āĻĄ() āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž is āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ as "āĻļā§āĻā§āĻāĻ˛āĻž" in
"āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻŋāĻ āĻĒāĻžāĻ°ā§āĻ˛, 3rd āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ"āĨ¤ āĻ¯āĻžāĻšā§āĻ, āĻĨā§āĻā§ āĻĻā§āĻ¯ āĻĒā§āĻ°āĻāĻžāĻļāĻ of āĻāĻ āĻŦāĻ, by āĻ āĻ¨ā§āĻ
āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ as "āĻāĻ III", āĻĻā§āĻ¯ āĻāĻā§āĻ¯ of āĻĻā§āĻ¯ āĻ¨āĻžāĻŽāĻāĻ°āĻŖ of āĻāĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§ āĻĨā§āĻā§
"āĻļā§āĻā§āĻāĻ˛āĻž" āĻĨā§āĻā§ "āĻ¸ā§āĻ¤āĻ°"āĨ¤ āĻ¸āĻŦ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ of āĻāĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ of āĻĒāĻžāĻ°ā§āĻ˛ āĻ āĻ¤āĻāĻŦ āĻŦā§āĻāĻžāĻ¯āĻŧ
āĻĨā§āĻā§ "āĻ¸ā§āĻ¤āĻ°" āĻŦāĻ°āĻ āĻā§āĻ¯āĻŧā§ āĻĨā§āĻā§ "āĻļā§āĻā§āĻāĻ˛āĻž"āĨ¤ āĻāĻāĻ¨ āĻĒāĻŋāĻāĻ¨ā§ āĻĨā§āĻā§ āĻĻā§āĻ¯ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤āĻāĻžāĻŦā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤
āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨...
FILEHANDLE āĻā§ UTF-8 āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻāĻ°āĻ¤ā§, ":utf8" āĻŦāĻž ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ(UTF-8)" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤ ":utf8" āĻļā§āĻ§ā§ āĻāĻŋāĻšā§āĻ¨
āĻāĻ°āĻ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻ¨āĻž āĻāĻ°ā§ UTF-8 āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĄā§āĻāĻž, āĻ¯āĻāĻ¨ ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ(UTF-8)" āĻĄā§āĻāĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§
āĻāĻ¸āĻ˛ā§ āĻŦā§āĻ§ UTF-8 āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯āĨ¤ PerlIO::āĻāĻ¨āĻā§āĻĄāĻŋāĻ-āĻ āĻāĻ°āĻ āĻŦāĻŋāĻļāĻĻ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻŦā§āĨ¤
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻŦāĻŋāĻ¨āĻŽā§āĻĄ() āĻĒāĻ°ā§ āĻĄāĻžāĻāĻž āĻāĻāĻŋāĻ¤ āĻā§āĻ˛āĻž () āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻā§āĻ¨ā§ I/O āĻāĻ°āĻžāĻ° āĻāĻā§
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻāĻ˛āĻŋāĻ āĻŦāĻŋāĻ¨āĻŽā§āĻĄ() āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻā§āĻ¨ā§ āĻŽā§āĻ˛āĻ¤ā§āĻŦāĻŋ āĻĨāĻžāĻāĻž āĻŦāĻžāĻĢāĻžāĻ° āĻāĻāĻāĻĒā§āĻ āĻĄā§āĻāĻž āĻĢā§āĻ˛āĻžāĻļ āĻāĻ°ā§ (āĻāĻŦāĻ
āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻŽā§āĻ˛āĻ¤ā§āĻŦāĻŋ āĻāĻ¨āĻĒā§āĻ āĻĄā§āĻāĻž) āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĨ¤ āĻāĻ° āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻšāĻ˛ ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ"
āĻ¸ā§āĻ¤āĻ° āĻ¯āĻž āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻ āĻā§āĻˇāĻ° āĻāĻ¨āĻā§āĻĄāĻŋāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§; "āĻā§āĻ˛āĻž" āĻĻā§āĻā§āĻ¨āĨ¤ āĻĻā§āĻ¯
":āĻāĻ¨āĻā§āĻĄāĻŋāĻ" āĻ¸ā§āĻ¤āĻ°āĻāĻŋāĻā§ āĻŽāĻžāĻā§ āĻŽāĻžāĻā§ āĻŽāĻ§ā§āĻ¯-āĻĒā§āĻ°āĻŦāĻžāĻšā§ āĻāĻ˛ āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻŦāĻ āĻāĻāĻŋ āĻĢā§āĻ˛āĻžāĻļ āĻāĻ°ā§ āĻ¨āĻž
āĻĒā§āĻ°āĻŦāĻžāĻš ": āĻāĻ¨āĻā§āĻĄāĻŋāĻ"āĻ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤āĻāĻžāĻŦā§ ": utf8" āĻ¸ā§āĻ¤āĻ°āĻāĻŋāĻā§ āĻ¨āĻŋāĻā§āĻ° āĻāĻĒāĻ°ā§ āĻ ā§āĻ˛ā§ āĻĻā§āĻ¯āĻŧ
āĻāĻžāĻ°āĻŖ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖāĻāĻžāĻŦā§ āĻĒāĻžāĻ°ā§āĻ˛ UTF8-āĻāĻ¨āĻā§āĻĄā§āĻĄ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻžāĻ āĻāĻ°ā§āĨ¤
āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ, āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻĄā§āĻ°āĻžāĻāĻāĻžāĻ°, āĻ¸āĻŋ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ, āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛ āĻ°āĻžāĻ¨-āĻāĻžāĻāĻŽ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ
āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻžāĻ°āĻā§ āĻāĻāĻāĻŋ āĻāĻāĻ āĻ āĻā§āĻˇāĻ° ("\n") āĻ˛āĻžāĻāĻ¨ āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨ā§āĻāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻˇāĻĄāĻŧāĻ¯āĻ¨ā§āĻ¤ā§āĻ°,
āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻļā§āĻˇā§āĨ¤ āĻ āĻ¨ā§āĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, āĻ¨ā§āĻāĻŋāĻ āĻā§āĻā§āĻ¸āĻ
āĻĢāĻžāĻāĻ˛ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§, āĻ¤āĻŦā§ āĻāĻŋāĻā§ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§
"\n" āĻāĻ° āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻāĻāĻžāĻ§āĻŋāĻ āĻ āĻā§āĻˇāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ āĻŋāĻ¤āĨ¤
āĻāĻāĻ¨āĻŋāĻā§āĻ¸, āĻŽā§āĻ¯āĻžāĻ āĻāĻāĻ¸ (āĻĒā§āĻ°āĻžāĻ¨ā§ āĻāĻŦāĻ āĻ¨āĻ¤ā§āĻ¨) āĻāĻŦāĻ āĻāĻŋāĻāĻŽāĻāĻ¸ā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻŽ_āĻāĻ˛āĻāĻĢ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ°ā§āĻĒ āĻāĻāĻāĻŋ āĻāĻāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻĒāĻžāĻ ā§āĻ¯ā§āĻ° āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ˛āĻžāĻāĻ¨ āĻļā§āĻˇ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻā§āĻˇāĻ° (āĻ¯āĻĻāĻŋāĻ āĻ¤āĻž
āĻāĻāĻ āĻ āĻā§āĻˇāĻ° āĻšāĻ˛ āĻŽā§āĻ¯āĻžāĻ āĻāĻāĻ¸ā§āĻ° āĻĒā§āĻ°āĻžāĻ¨ā§, āĻĒā§āĻ°āĻžāĻ-āĻĄāĻžāĻ°āĻāĻāĻ¨ āĻĢā§āĻ˛ā§āĻāĻžāĻ°ā§ āĻā§āĻ¯āĻžāĻ°āĻŋāĻ¯āĻŧā§āĻ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨, āĻāĻŦāĻ āĻāĻāĻŋ āĻ˛āĻžāĻāĻ¨
āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻāĻŦāĻ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻāĻŋāĻāĻŽāĻāĻ¸ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻĢāĻŋāĻĄ)āĨ¤ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ¯ā§āĻŽāĻ¨ OS/2, DOS āĻāĻŦāĻ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨
MS-Windows-āĻāĻ° āĻ¸ā§āĻŦāĻžāĻĻā§, āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻāĻāĻŋ "\n" āĻā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ "\cJ" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĻā§āĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻāĻā§
āĻā§āĻā§āĻ¸āĻ āĻĢāĻžāĻāĻ˛ā§ āĻĻā§āĻāĻŋ āĻ āĻā§āĻˇāĻ° "\cM\cJ"āĨ¤ āĻ¤āĻžāĻ° āĻŽāĻžāĻ¨ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻāĻ°ā§āĻ¨
āĻŦāĻŋāĻ¨āĻŽā§āĻĄ() āĻāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻ¤ā§, āĻĄāĻŋāĻ¸ā§āĻā§āĻ° "\cM\cJ" āĻā§āĻ°āĻŽāĻā§āĻ˛āĻŋāĻā§ "\n" āĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻŦā§
āĻāĻ¨āĻĒā§āĻ, āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻ¯ā§āĻā§āĻ¨ "\n" āĻāĻāĻāĻĒā§āĻā§ "\cM\cJ" āĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻŦā§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻĒāĻžāĻ ā§āĻ¯ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻĒāĻ°ā§āĻ¯āĻ¯āĻŧāĻāĻ° āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻāĻ°ā§āĻāĻāĻŋ āĻĒāĻ°āĻŋāĻŖāĻ¤āĻŋ āĻŦāĻŋāĻ¨āĻŽā§āĻĄ() (āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§) āĻ¸ā§āĻ āĻŦāĻŋāĻļā§āĻˇ āĻļā§āĻˇ-āĻ āĻĢ-āĻĢāĻžāĻāĻ˛
āĻŽāĻžāĻ°ā§āĻāĻžāĻ°āĻā§āĻ˛āĻŋāĻā§ āĻĄā§āĻāĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻŽā§āĻ° āĻ āĻāĻļ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĻā§āĻāĻž āĻšāĻŦā§āĨ¤ āĻŽāĻžāĻāĻā§āĻ°ā§āĻ¸āĻĢāĻ āĻĨā§āĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯
āĻĒāĻ°āĻŋāĻŦāĻžāĻ° āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻĄā§āĻāĻžāĻ¤ā§ "\cZ" āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ I/O āĻ¸āĻžāĻŦāĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻšāĻŦā§
āĻāĻāĻŋāĻā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§āĻ¨, āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻŦāĻŋāĻ¨āĻŽā§āĻĄ().
āĻŦāĻŋāĻ¨āĻŽā§āĻĄ() āĻāĻ¨ā§āĻ¯ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻ¨āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ°āĻŋāĻĄāĻ˛āĻžāĻāĻ¨() āĻāĻŦāĻ āĻāĻžāĻĒāĻž() āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¯āĻāĻ¨
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĒāĻĄāĻŧā§āĻ¨ (), āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ (), sysread(), syswrite() āĻāĻŦāĻ āĻŦāĻ˛ā§āĻ¨ () (āĻāĻ°ā§ āĻāĻ¨ā§āĻ¯ perlport āĻĻā§āĻā§āĻ¨
āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤)āĨ¤ āĻāĻŋāĻāĻžāĻŦā§ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻ¯āĻŧ āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§ $/ āĻāĻŦāĻ "$\" āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻĻā§āĻā§āĻ¨
āĻāĻŦāĻ āĻāĻāĻāĻĒā§āĻ āĻ˛āĻžāĻāĻ¨-āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨ā§āĻļāĻ¨ āĻ¸āĻŋāĻā§āĻ¯āĻŧā§āĻ¨ā§āĻ¸āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻŦāĻŋāĻ¨āĻŽā§āĻĄ"āĨ¤
REF,CLASSNAME āĻā§ āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻ āĻāĻ°ā§āĻ¨
REF āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻ
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ REF āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻāĻŋāĻ¨āĻŋāĻ¸āĻāĻŋāĻā§ āĻŦāĻ˛ā§ āĻ¯ā§ āĻāĻāĻŋ āĻāĻāĻ¨ āĻāĻāĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§
CLASSNAME āĻĒā§āĻ¯āĻžāĻā§āĻāĨ¤ āĻ¯āĻĻāĻŋ CLASSNAME āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻžāĻ°āĻŖ āĻ
"āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻ" āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ āĻāĻāĻāĻŋ āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ°ā§āĻ° āĻļā§āĻˇ āĻāĻŋāĻ¨āĻŋāĻ¸, āĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻĻā§āĻ-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻāĻĻā§āĻā§āĻ¤ āĻļā§āĻ°ā§āĻŖā§ āĻāĻ¤ā§āĻ¤āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ¸ā§āĻ¤ā§āĻ°ā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĢāĻžāĻāĻļāĻ¨ āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻ āĻāĻ°āĻā§āĻ¨. āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻ (āĻāĻŦāĻ āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻ) āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻāĻžāĻ¨āĻ¤ā§ perlobj āĻĻā§āĻā§āĻ¨
āĻŦāĻ¸ā§āĻ¤ā§āĻ°
CLASSNAME-āĻ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻ āĻāĻ°āĻž āĻŦāĻ¸ā§āĻ¤ā§āĻā§āĻ˛āĻŋāĻā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§āĻ¨ āĻ¯āĻž āĻŽāĻŋāĻļā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĨ¤ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¨āĻžāĻŽāĻ¸ā§āĻĨāĻžāĻ¨
āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻ āĻšāĻžāĻ¤ā§āĻ° āĻ¨āĻžāĻŽ āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°āĻžāĻāĻŽāĻžāĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻŦāĻŋāĻ˛ā§āĻāĻŋāĻ¨ āĻ§āĻ°āĻ¨ā§āĻ° āĻ¸āĻŦ āĻāĻā§
āĻŦāĻĄāĻŧ āĻšāĻžāĻ¤ā§āĻ° āĻ¨āĻžāĻŽāĨ¤ āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ āĻ°ā§āĻ§ āĻāĻ°āĻ¤ā§, āĻāĻĒāĻ¨āĻŋ āĻ¯ā§āĻŽāĻ¨ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻ¨āĻžāĻŽāĻā§āĻ˛āĻŋ āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻŽāĻ°āĻž āĻšāĻŦ. āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§āĻ¨ āĻ¯ā§ CLASSNAME āĻāĻāĻāĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻŽāĻžāĻ¨āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛āĻŽā§āĻĄā§ "āĻĒāĻžāĻ°ā§āĻ˛ āĻŽāĻĄāĻŋāĻāĻ˛" āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦāĻŋāĻ°āĻ¤āĻŋ
āĻāĻāĻāĻŋ "āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤()" āĻŦā§āĻ˛āĻ āĻĨā§āĻā§ āĻŦā§āĻ°āĻŋāĻ¯āĻŧā§ āĻāĻ¸ā§āĻ¨āĨ¤
āĻāĻ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻāĻŋ "āĻ¸ā§āĻāĻ" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§; āĻāĻ°ā§ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĻā§āĻā§āĻ¨
"āĻ¸ā§āĻāĻ"āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋāĻā§ "CORE::" āĻĻāĻŋāĻ¯āĻŧā§ āĻĒā§āĻ°āĻŋāĻĢāĻŋāĻā§āĻ¸ āĻāĻ°ā§āĻ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻžāĻŦā§,
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻ¯ā§āĻā§ "v5.10 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻŦāĻž āĻ¤āĻžāĻ° āĻĒāĻ°ā§ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻ˛āĻžāĻ° EXPR
āĻāĻšā§āĻŦāĻžāĻ¨āĻāĻžāĻ°ā§
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŦāĻŋāĻļā§āĻĻā§āĻ§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻāĻ˛ā§āĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻ āĻĻā§āĻāĻžāĻ¯āĻŧāĨ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§,
āĻ¯āĻĻāĻŋ āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻ˛āĻžāĻ°ā§āĻ° āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻ¨āĻžāĻŽ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ is āĻāĻāĻāĻŋ āĻāĻ˛āĻžāĻ° (āĻ āĻ°ā§āĻĨāĻžā§, āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋāĻ¤ā§ āĻĨāĻžāĻāĻŋ
subroutine āĻŦāĻž "eval" āĻŦāĻž "require") āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨āĨ¤ āĻāĻ˛āĻžāĻ° āĻāĻāĻ¨āĻ āĻ¨āĻž
XS subs āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻŦāĻŋāĻļā§āĻĻā§āĻ§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻžāĻŦ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻŦā§
āĻāĻ˛āĻžāĻ°ā§āĻ° āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ XS āĻ¸āĻžāĻŦāĨ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§, āĻāĻ˛āĻžāĻ° āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§
# 0 1 2
($package, $filename, $line) = āĻāĻ˛āĻžāĻ°;
EXPR āĻāĻ° āĻ¸āĻžāĻĨā§, āĻāĻāĻŋ āĻāĻŋāĻā§ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻ¤āĻĨā§āĻ¯ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯āĻž āĻĄāĻŋāĻŦāĻžāĻāĻžāĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻā§āĻ°ā§āĻ¸ EXPR āĻāĻ° āĻŽāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻāĻ¤āĻā§āĻ˛āĻŋ āĻāĻ˛ āĻĢā§āĻ°ā§āĻŽ āĻāĻžāĻ°ā§āĻ¨ā§āĻā§āĻ° āĻāĻā§ āĻĢāĻŋāĻ°ā§ āĻ¯ā§āĻ¤ā§ āĻšāĻŦā§
āĻāĻ.
# 0 1 2 3 4
($package, $filename, $line, $subroutine, $hasargs,
# 5 6 7 8 9 10
$wantarray, $evaltext, $is_require, $hints, $bitmask, $hinthash)
= āĻāĻ˛āĻžāĻ°($i);
āĻāĻāĻžāĻ¨ā§, $subroutine āĻšāĻ˛ āĻ¸ā§āĻ āĻĢāĻžāĻāĻļāĻ¨ āĻ¯āĻž āĻāĻ˛āĻāĻžāĻ°ā§ āĻāĻ˛ āĻāĻ°ā§āĻā§ (āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§
āĻāĻ˛āĻžāĻ° āĻ§āĻžāĻ°āĻŖāĻāĻžāĻ°ā§)āĨ¤ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻĢā§āĻ°ā§āĻŽ a āĻ¨āĻž āĻšāĻ˛ā§ $subroutine "(eval)" āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻāĻ˛, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻāĻŋ "āĻāĻāĻžāĻ˛"āĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻāĻĒāĻžāĻĻāĻžāĻ¨ $evaltext āĻāĻŦāĻ
$is_require āĻ¸ā§āĻ āĻāĻ°āĻž āĻāĻā§: $is_require āĻ¸āĻ¤ā§āĻ¯ āĻ¯āĻĻāĻŋ āĻĢā§āĻ°ā§āĻŽ āĻāĻāĻāĻŋ "require" āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻŦāĻž
"āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻŦāĻŋāĻŦā§āĻ¤āĻŋ, $evaltext-āĻ "eval EXPR" āĻŦāĻŋāĻŦā§āĻ¤āĻŋāĻāĻŋāĻ° āĻĒāĻžāĻ ā§āĻ¯ āĻ°āĻ¯āĻŧā§āĻā§ā§ˇ āĻāĻŋāĻ¤āĻ°ā§
āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻāĻāĻāĻŋ "eval BLOCK" āĻŦāĻŋāĻŦā§āĻ¤āĻŋāĻ° āĻāĻ¨ā§āĻ¯, $subroutine āĻšāĻ˛ "(eval)", āĻāĻŋāĻ¨ā§āĻ¤ā§ $evaltext āĻšāĻ˛
āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ (āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻŦāĻŋāĻŦā§āĻ¤āĻŋ āĻāĻāĻāĻŋāĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻāĻāĻāĻŋ "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ" āĻĢā§āĻ°ā§āĻŽ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§
"eval EXPR" āĻĢā§āĻ°ā§āĻŽāĨ¤) $subroutine āĻāĻāĻžāĻĄāĻŧāĻžāĻ "(āĻ āĻāĻžāĻ¨āĻž)" āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ āĻāĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨
āĻĒā§āĻ°āĻ¤ā§āĻ āĻā§āĻŦāĻŋāĻ˛ āĻĨā§āĻā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻ¯āĻŧā§āĻā§. $hasargs āĻ¸āĻ¤ā§āĻ¯ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨
āĻĢā§āĻ°ā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ @_ āĻāĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ $hints āĻāĻŦāĻ $bitmask-āĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻ¸āĻŽā§āĻŽāĻ¤ āĻāĻā§āĻāĻŋāĻ¤ āĻ°āĻ¯āĻŧā§āĻā§
āĻ¯ā§ āĻāĻ˛āĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤ $hints $^H, āĻāĻŦāĻ $bitmask āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧ
"${^WARNING_BITS}" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤ $hints āĻāĻŦāĻ $bitmask āĻŽāĻžāĻ¨ āĻ¸āĻžāĻĒā§āĻā§āĻˇā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨, āĻāĻŦāĻ āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻ¯āĻŧāĨ¤
$hinthash āĻšāĻ˛ "%^H" āĻāĻ° āĻŽāĻžāĻ¨ āĻ¸āĻŽā§āĻŦāĻ˛āĻŋāĻ¤ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ¯āĻāĻ¨ āĻāĻ˛āĻāĻžāĻ°ā§ āĻāĻŋāĻ˛ā§āĻ¨
āĻ¸āĻāĻāĻ˛āĻŋāĻ¤, āĻ āĻĨāĻŦāĻž "undef" āĻ¯āĻĻāĻŋ "%^H" āĻāĻžāĻ˛āĻŋ āĻĨāĻžāĻā§āĨ¤ āĻāĻ āĻšā§āĻ¯āĻžāĻļ āĻāĻ° āĻŽāĻžāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž, āĻ¯ā§āĻŽāĻ¨
āĻ¤āĻžāĻ°āĻž āĻšāĻ˛ āĻĒā§āĻ°āĻā§āĻ¤ āĻŽāĻžāĻ¨ āĻ āĻĒāĻā§āĻ°āĻŋāĻ¤ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤āĨ¤
āĻ¤āĻĻā§āĻŦā§āĻ¯āĻ¤ā§āĻ¤, āĻ¯āĻāĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻĄāĻŋāĻŦāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĨā§āĻā§ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¸āĻš āĻāĻ˛ ââāĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¯ā§āĻā§āĻ¤āĻŋ, āĻāĻ˛āĻžāĻ° āĻāĻ°āĻ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻ¤āĻĨā§āĻ¯ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§: āĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻ¸ā§āĻ āĻāĻ°ā§
@DB::args āĻšāĻ˛ āĻ¸ā§āĻ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¯āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨āĻāĻŋ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤
āĻ¸āĻā§āĻ¤āĻ¨ āĻĨāĻžāĻā§āĻ¨ āĻ¯ā§ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻāĻžāĻ° "āĻāĻ˛āĻžāĻ°" āĻāĻ° āĻāĻā§ āĻāĻ˛ āĻĢā§āĻ°ā§āĻŽāĻā§āĻ˛āĻŋāĻā§ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻ āĻāĻ°ā§ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ā§ˇ
āĻ¤āĻĨā§āĻ¯ āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻ¸ā§āĻ¯ā§āĻāĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ āĻāĻ˛āĻžāĻ°(N) āĻĢāĻŋāĻ°ā§ āĻ¨āĻžāĻ āĻāĻ¸āĻ¤ā§ āĻĒāĻžāĻ°ā§
"N > 1"-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻŋ āĻ¯ā§ āĻāĻ˛ āĻĢā§āĻ°ā§āĻŽāĻāĻŋ āĻāĻļāĻž āĻāĻ°āĻā§āĻ¨ āĻ¤āĻžāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¤āĻĨā§āĻ¯āĨ¤ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻāĻāĻžāĻŦā§,
@DB::args-āĻāĻ° āĻāĻžāĻā§ āĻāĻā§āĻ° āĻŦāĻžāĻ° "āĻāĻ˛āĻžāĻ°" āĻĄāĻžāĻāĻžāĻ° āĻ¤āĻĨā§āĻ¯ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻ¸āĻā§āĻ¤āĻ¨ āĻĨāĻžāĻā§āĻ¨ āĻ¯ā§ @DB::args āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻšāĻā§āĻā§ āĻ¸ā§āĻ°āĻž āĻĒā§āĻ°āĻā§āĻˇā§āĻāĻž, āĻĄāĻŋāĻŦāĻžāĻāĻŋāĻ āĻŦāĻž āĻā§āĻ¨āĻžāĻ°ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§
āĻŦā§āĻ¯āĻžāĻāĻā§āĻ°ā§āĻ¸, āĻāĻŦāĻ āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤ āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ @_ āĻāĻ° āĻāĻĒāĻ¨āĻžāĻŽ āĻ°āĻ¯āĻŧā§āĻā§
āĻāĻ˛āĻžāĻ°ā§āĻ° āĻ¯ā§āĻā§āĻ¤āĻŋ, āĻĒāĻžāĻ°ā§āĻ˛ @_ āĻāĻ° āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻ¨ā§āĻ¯āĻŧ āĻ¨āĻž, āĻ¤āĻžāĻ @DB::args āĻĨāĻžāĻāĻŦā§
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ @_ āĻŦāĻž āĻāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§āĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§, āĻŽā§āĻ˛ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¨āĻ¯āĻŧ
āĻāĻ˛ āĻ¸āĻŽāĻ¯āĻŧ. @DB::args, @_ āĻāĻ° āĻŽāĻ¤, āĻāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻ¸ā§āĻ¸ā§āĻĒāĻˇā§āĻ āĻāĻ˛ā§āĻ˛ā§āĻ āĻ°āĻžāĻā§ āĻ¨āĻž, āĻ¤āĻžāĻ
āĻāĻŋāĻā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻŽā§āĻā§āĻ¤ āĻšāĻ¯āĻŧā§ āĻ āĻ¨ā§āĻ¯āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻŦāĻž āĻ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§ āĻŽāĻžāĻ¨āĨ¤ āĻ āĻŦāĻļā§āĻˇā§, āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻĒāĻžāĻ°ā§āĻļā§āĻŦ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž
āĻ¯ā§ "shift @_" āĻāĻ° āĻĒā§āĻ°āĻāĻžāĻŦ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻāĻāĻžāĻŦā§ āĻĒā§āĻ°ā§āĻŦāĻžāĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻĢā§āĻ°āĻžāĻ¨ (āĻāĻŋāĻ¨ā§āĻ¤ā§ "āĻĒāĻĒ @_" āĻŦāĻž āĻ āĻ¨ā§āĻ¯ āĻ¨āĻ¯āĻŧ
āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°āĻž, āĻāĻŦāĻ āĻ¨āĻž āĻ¯āĻĻāĻŋ @_ āĻāĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻŦāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¸āĻžāĻĒā§āĻā§āĻˇā§
āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻŦāĻ°āĻžāĻĻā§āĻĻāĻā§āĻ¤ āĻāĻĒāĻžāĻĻāĻžāĻ¨), āĻ¤āĻžāĻ @DB::args āĻāĻ¸āĻ˛ā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻāĻāĻāĻŋ āĻšāĻžāĻāĻŦā§āĻ°āĻŋāĻĄ āĻāĻŦāĻ
@_ āĻāĻ° āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĨ¤ āĻā§āĻ°ā§āĻ¤āĻž āĻšā§āĻāĻļāĻŋāĻ¯āĻŧāĻžāĻ°.
chdir EXPR
chdir FILEHANDLE
chdir DIRHANDLE
chdir
āĻ¸āĻŽā§āĻāĻŦ āĻšāĻ˛ā§ āĻāĻžāĻā§āĻ° āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻā§ EXPR-āĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¯āĻŧ
$ENV{HOME} āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ, āĻ¯āĻĻāĻŋ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ; āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨
$ENV{LOGDIR} āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ (VMS-āĻāĻ° āĻ āĻ§ā§āĻ¨ā§, āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ $ENV{SYS$LOGIN}āĻ āĻā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ,
āĻāĻŦāĻ āĻ¸ā§āĻ āĻāĻ°āĻž āĻĨāĻžāĻāĻ˛ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤) āĻ¯āĻĻāĻŋ āĻā§āĻ¨ā§āĻāĻŋāĻ āĻ¸ā§āĻ āĻāĻ°āĻž āĻ¨āĻž āĻĨāĻžāĻā§, "chdir" āĻāĻŋāĻā§āĻ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻāĻāĻž āĻ¸āĻ¤ā§āĻ¯ āĻĢāĻŋāĻ°ā§
āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĨ¤ "āĻŽā§āĻ¤ā§āĻ¯ā§" āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ fchdir(2), āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻŦāĻž āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻžāĻ¸ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¯ā§āĻā§āĻ¤āĻŋ. āĻāĻŽāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ¯āĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¨āĻž fchdir(2), āĻĒāĻžāĻ¸āĻŋāĻ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻā§āĻ˛āĻŋ āĻāĻāĻāĻŋ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽāĨ¤
chmod āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĨ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ āĻšāĻ¤ā§ āĻšāĻŦā§
āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻŽā§āĻĄ, āĻ¯āĻž āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻāĻāĻāĻŋ āĻ āĻā§āĻāĻžāĻ˛ āĻ¸āĻāĻā§āĻ¯āĻž āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤ āĻāĻŦāĻ āĻ¯āĻž āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻŋāĻ¤
āĻ¨āĻž āĻ āĻā§āĻāĻžāĻ˛ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŦā§: 0644 āĻ āĻŋāĻ āĻāĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ "0644" āĻ¨āĻ¯āĻŧāĨ¤ āĻ¨āĻŽā§āĻŦāĻ° āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻĢāĻžāĻāĻ˛ āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤. āĻāĻāĻžāĻĄāĻŧāĻžāĻ "oct" āĻĻā§āĻā§āĻ¨ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĨāĻžāĻā§āĨ¤
$cnt = chmod 0755, "foo", "bar";
chmod 0755, @executables;
$mode = "0644"; chmod $mode, "foo"; #!!! āĻŽā§āĻĄ āĻ¸ā§āĻ āĻāĻ°ā§
# --w----rT
$mode = "0644"; chmod oct($mode), "foo"; # āĻāĻšāĻž āĻāĻžāĻ˛
$mode = 0644; chmod $mode, "foo"; # āĻāĻāĻŋ āĻ¸ā§āĻ°āĻž
āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ fchmod(2), āĻāĻĒāĻ¨āĻŋ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻĒāĻžāĻ¸ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻžāĻ˛ā§
āĻ¯ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¨āĻž fchmod(2), āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻā§āĻ˛ā§āĻŦ āĻŦāĻž āĻā§āĻ˛ā§āĻŦ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸ā§āĻŦā§āĻā§āĻ¤ āĻšāĻ¤ā§ āĻšāĻŦā§; āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻšāĻ¯āĻŧ
āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽāĨ¤
āĻā§āĻ˛āĻž (āĻāĻŽāĻžāĻ° $fh, "<", "foo");
āĻāĻŽāĻžāĻ° $perm = (stat $fh)[2] & 07777;
chmod($perm | 0600, $fh);
āĻāĻĒāĻ¨āĻŋ "Fcntl" āĻŽāĻĄāĻŋāĻāĻ˛ āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¤ā§āĻā§ "S_I*" āĻ§ā§āĻ°ā§āĻŦāĻāĻā§āĻ˛āĻŋāĻ āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
Fcntl qw( :mode) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
chmod S_IRWXU|S_IRGRP|S_IXGRP|S_IROTH|S_IXOTH, @executables;
# āĻāĻĒāĻ°ā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° chmod 0755-āĻāĻ° āĻ āĻ¨ā§āĻ°ā§āĻĒāĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "chmod"āĨ¤
chomp āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛
āĻāĻŽā§āĻĒ ( āĻ¤āĻžāĻ˛āĻŋāĻāĻž )
āĻāĻŽā§āĻĒ
"āĻāĻĒ" āĻāĻ° āĻāĻ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻāĻŋ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻ¯ā§āĻā§āĻ¨ āĻā§āĻ°ā§āĻ˛āĻŋāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧ
$/ āĻāĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŽāĻžāĻ¨ ("āĻāĻāĻ°ā§āĻāĻŋ" āĻŽāĻĄāĻŋāĻāĻ˛ā§ $INPUT_RECORD_SEPARATOR āĻ¨āĻžāĻŽā§āĻ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤)āĨ¤
āĻāĻāĻŋ āĻ¤āĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĨā§āĻā§ āĻ¸āĻ°āĻžāĻ¨ā§ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻŽā§āĻ āĻ¸āĻāĻā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻāĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻāĻ¨ āĻāĻĻā§āĻŦāĻŋāĻā§āĻ¨ āĻšāĻ¨ āĻ¤āĻāĻ¨ āĻāĻāĻāĻŋ āĻāĻ¨āĻĒā§āĻ āĻ°ā§āĻāĻ°ā§āĻĄā§āĻ° āĻļā§āĻˇ āĻĨā§āĻā§ āĻ¨āĻ¤ā§āĻ¨ āĻ˛āĻžāĻāĻ¨āĻāĻŋ āĻ¸āĻ°āĻžāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ
āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ°ā§āĻāĻ°ā§āĻĄ āĻ¤āĻžāĻ° āĻ¨āĻ¤ā§āĻ¨ āĻ˛āĻžāĻāĻ¨ āĻ āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§. āĻ¯āĻāĻ¨ āĻ āĻ¨ā§āĻā§āĻā§āĻĻ āĻŽā§āĻĄā§ ("$/ = ''"), āĻāĻāĻŋ
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĨā§āĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¨āĻ¤ā§āĻ¨ āĻ˛āĻžāĻāĻ¨ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ¯āĻāĻ¨ āĻ¸ā§āĻ˛āĻžāĻ°ā§āĻĒ āĻŽā§āĻĄā§ āĻĨāĻžāĻā§ ("$/ = undef") āĻŦāĻž
āĻ¸ā§āĻĨāĻŋāĻ°-āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻ°ā§āĻāĻ°ā§āĻĄ āĻŽā§āĻĄ ($/ āĻšāĻ˛ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻŦāĻž āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸; āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ° āĻĻā§āĻā§āĻ¨)
āĻāĻŽā§āĻĒ() āĻāĻŋāĻā§ āĻ āĻĒāĻ¸āĻžāĻ°āĻŖ āĻāĻ°āĻŦā§ āĻ¨āĻžāĨ¤ āĻ¯āĻĻāĻŋ āĻā§āĻ¯āĻžāĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻāĻŋ $_ chomps. āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻ¯āĻāĻ¨ (<>) {
āĻāĻŽā§āĻĒ # āĻļā§āĻˇ āĻŽāĻžāĻ ā§ \n āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻāĻ˛ā§āĻ¨
@āĻ ā§āĻ¯āĻžāĻ°ā§ = āĻŦāĻŋāĻāĻā§āĻ¤(/:/);
#...
}
āĻ¯āĻĻāĻŋ āĻā§āĻ¯āĻžāĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻāĻŽā§āĻĒ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ° āĻā§āĻā§āĻ˛āĻŋāĻā§ āĻ¨āĻ¯āĻŧ, āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§
āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻāĻžāĻ°ā§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨āĻŽā§āĻ¨ā§āĻ āĻ¸āĻš āĻāĻāĻāĻŋ āĻŽā§āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨ āĻ¯ā§āĻā§āĻ¨ āĻāĻŋāĻā§āĻā§ āĻāĻŽā§āĻĒ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
chomp($cwd = `pwd`);
chomp($āĻāĻ¤ā§āĻ¤āĻ° = );
āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž chomp āĻāĻ°āĻž āĻšāĻ˛ā§, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ chomped āĻšāĻ¯āĻŧ, āĻāĻŦāĻ āĻ āĻā§āĻˇāĻ° āĻŽā§āĻ āĻ¸āĻāĻā§āĻ¯āĻž
āĻ āĻĒāĻ¸āĻžāĻ°āĻŋāĻ¤ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻŦāĻ¨ā§āĻ§āĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¯āĻŧ āĻ¯āĻāĻ¨ āĻāĻĒāĻ¨āĻŋ āĻ¯ā§āĻā§āĻ¨ āĻāĻŋāĻā§ āĻāĻŽā§āĻĒāĻŋāĻ āĻāĻ°ā§āĻ¨ āĻ¯āĻž āĻ¸āĻšāĻ āĻ¨āĻ¯āĻŧ
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻāĻ° āĻāĻžāĻ°āĻŖ "chomp $cwd = `pwd`;" "(chomp $cwd) = āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
`pwd`;", "chomp( $cwd = `pwd` )" āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¯āĻž āĻāĻĒāĻ¨āĻŋ āĻāĻļāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻāĻāĻžāĻŦā§,
"chomp $a, $b" āĻā§ "chomp($a, $b)" āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "chomp($a), $b" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻāĻžāĻāĻž
āĻāĻžāĻāĻž ( āĻ¤āĻžāĻ˛āĻŋāĻāĻž )
āĻāĻĒ
āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻļā§āĻˇ āĻ āĻā§āĻˇāĻ°āĻāĻŋ āĻā§āĻā§ āĻĢā§āĻ˛ā§ āĻāĻŦāĻ āĻāĻžāĻāĻž āĻ āĻā§āĻˇāĻ°āĻāĻŋ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻāĻāĻž
"s/.$//s" āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻ āĻ¨ā§āĻ āĻŦā§āĻļāĻŋ āĻĻāĻā§āĻˇ āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ āĻŦāĻž āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻ¯āĻĻāĻŋ
āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻĒāĻ¸ $_āĨ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻšāĻ˛ā§, āĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻāĻ° āĻŽāĻžāĻ¨ chops, āĻāĻŋāĻ¨ā§āĻ¤ā§
āĻāĻ° āĻā§āĻā§āĻ˛āĻŋ āĻ¨āĻ¯āĻŧ, āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻāĻžāĻ°ā§ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻā§āĻā§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻāĻ¸āĻ˛ā§ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨āĻŽā§āĻ¨ā§āĻ āĻ¸āĻš āĻāĻāĻāĻŋ lvalue āĻāĻŋāĻā§ āĻāĻžāĻāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨.
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻžāĻāĻž, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻžāĻāĻž āĻšāĻ¯āĻŧ. āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻļā§āĻˇ "āĻāĻĒ" āĻāĻ° āĻŽāĻžāĻ¨
āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĻ¨āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ "āĻāĻĒ" āĻļā§āĻˇ āĻ āĻā§āĻˇāĻ°āĻāĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻļā§āĻˇ āĻ āĻā§āĻˇāĻ° āĻŦā§āĻ¯āĻ¤ā§āĻ¤ āĻ¸āĻŦ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻĻāĻŋāĻ¤ā§,
"substr($string, 0, -1)" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻāĻžāĻĄāĻŧāĻžāĻ "āĻāĻŽā§āĻĒ" āĻĻā§āĻā§āĻ¨āĨ¤
chown āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻŽāĻžāĻ˛āĻŋāĻ (āĻāĻŦāĻ āĻā§āĻˇā§āĻ ā§) āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§ā§ˇ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻĻā§āĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨
āĻšāĻ¤ā§ āĻšāĻŦā§ āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ uid āĻāĻŦāĻ gid, āĻ¸ā§āĻ āĻā§āĻ°āĻŽā§āĨ¤ āĻāĻāĻ¯āĻŧ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§ -1 āĻāĻ° āĻŽāĻžāĻ¨
āĻ¯ā§ āĻŽāĻžāĻ¨ āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ°ā§āĻā§ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻĢāĻžāĻāĻ˛ āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§āĨ¤
$cnt = chown $uid, $gid, 'foo', 'āĻŦāĻžāĻ°';
chown $uid, $gid, @filenames;
āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ fchown(2), āĻāĻĒāĻ¨āĻŋ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻĒāĻžāĻ¸ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻžāĻ˛ā§
āĻ¯ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¨āĻž fchown(2), āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻā§āĻ˛ā§āĻŦ āĻŦāĻž āĻā§āĻ˛ā§āĻŦ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸ā§āĻŦā§āĻā§āĻ¤ āĻšāĻ¤ā§ āĻšāĻŦā§; āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻšāĻ¯āĻŧ
āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽāĨ¤
āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¯āĻž āĻĒāĻžāĻ¸āĻĄāĻŦā§āĻ˛āĻŋāĻāĻĄāĻŋ āĻĢāĻžāĻāĻ˛ā§ āĻ āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻāĻāĻāĻāĻĄāĻŋāĻā§āĻ˛āĻŋ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§:
āĻŽā§āĻĻā§āĻ°āĻŖ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§:";
chomp($user = );
āĻŽā§āĻĻā§āĻ°āĻŖ "āĻĢāĻžāĻāĻ˛: ";
chomp($pattern = );
($login,$pass,$uid,$gid) = getpwnam($user)
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "$user not in passwd āĻĢāĻžāĻāĻ˛";
@ary = āĻā§āĻ˛ā§āĻŦ($ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨); # āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°ā§āĻ¨
chown $uid, $gid, @ary;
āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻšāĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŽāĻžāĻ˛āĻŋāĻāĻžāĻ¨āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ āĻ¨āĻž
āĻ¸ā§āĻĒāĻžāĻ° āĻāĻāĻāĻžāĻ°, āĻ¯āĻĻāĻŋāĻ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻ°ā§āĻĒāĻāĻŋāĻā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¯ā§āĻā§āĻ¨ā§ āĻāĻāĻāĻŋāĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤
āĻ¸ā§āĻā§āĻ¨ā§āĻĄāĻžāĻ°āĻŋ āĻā§āĻ°ā§āĻĒāĨ¤ āĻ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻ¤ā§, āĻāĻ āĻŦāĻŋāĻ§āĻŋāĻ¨āĻŋāĻˇā§āĻ§āĻā§āĻ˛āĻŋ āĻļāĻŋāĻĨāĻŋāĻ˛ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¤āĻŦā§ āĻāĻāĻŋ
āĻĒā§āĻ°ā§āĻā§āĻŦāĻ˛ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻ¨āĻ¯āĻŧāĨ¤ POSIX āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻžāĻŦā§ āĻāĻ āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
POSIX qw āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨(sysconf _PC_CHOWN_RESTRICTED);
$can_chown_giveaway = sysconf āĻ¨āĻ¯āĻŧ(_PC_CHOWN_RESTRICTED);
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "chown"āĨ¤
chr NUMBER
chr āĻ āĻā§āĻˇāĻ° āĻ¸ā§āĻā§ āĻ¸ā§āĻ NUMBER āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻ āĻā§āĻˇāĻ° āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ,
"chr,(65)" āĻšāĻ˛ ASCII āĻŦāĻž āĻāĻāĻ¨āĻŋāĻā§āĻĄā§ "A" āĻāĻŦāĻ chr,(0x263a) āĻāĻāĻāĻŋ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¸ā§āĻŽāĻžāĻāĻ˛āĻŋ āĻĢā§āĻ¸āĨ¤
āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻŽāĻžāĻ¨ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ āĻā§āĻˇāĻ° āĻĻā§āĻ¯āĻŧ (chr,(0xffd)), āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻžāĻĄāĻŧāĻž
āĻŦāĻžāĻāĻ āĻĒā§āĻ°āĻžāĻāĻŽāĻž, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻŽāĻžāĻ¨ā§āĻ° āĻāĻŽ āĻāĻāĻāĻŋ āĻŦāĻŋāĻ (āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ¤ā§ āĻāĻžāĻāĻž)
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻ¯āĻĻāĻŋ NUMBER āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻāĻ¨ā§āĻ¯, "ord" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ 128 āĻĨā§āĻā§ 255 (āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤) āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖāĻāĻžāĻŦā§ āĻāĻ¨āĻā§āĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž
āĻĒāĻļā§āĻāĻžāĻĻāĻāĻžāĻŽā§ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻ¤āĻžāĻ° āĻāĻžāĻ°āĻŖā§ UTF-8 āĻšāĻŋāĻ¸āĻžāĻŦā§āĨ¤
āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻāĻžāĻ¨āĻ¤ā§ āĻĒāĻžāĻ°āĻ˛ā§āĻ¨āĻŋāĻā§āĻĄ āĻĻā§āĻā§āĻ¨āĨ¤
chroot FILENAME
āĻā§āĻ°ā§āĻ
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻāĻāĻ āĻ¨āĻžāĻŽā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ā§āĻ° āĻŽāĻ¤ā§ āĻāĻžāĻ āĻāĻ°ā§: āĻāĻāĻŋ āĻ¨āĻžāĻŽāĻāĻ°āĻŖ āĻāĻ°ā§
āĻĄāĻžāĻāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ°ā§āĻ āĻĄāĻžāĻāĻ°ā§āĻā§āĻāĻ°āĻŋāĻāĻŋ āĻāĻ°āĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻžāĻĨāĻ¨āĻžāĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻž "/" āĻĻā§āĻŦāĻžāĻ°āĻž āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧ
āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻŦāĻ āĻāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻļāĻŋāĻļā§āĨ¤ (āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻāĻžāĻā§āĻ° āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§ āĻ¨āĻž,
āĻ¯āĻž āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤) āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻžāĻ° āĻāĻžāĻ°āĻŖā§, āĻāĻ āĻāĻ˛āĻāĻŋ āĻ¸ā§āĻĒāĻžāĻ° āĻāĻāĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§āĨ¤
āĻ¯āĻĻāĻŋ FILENAME āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ $_ āĻ "chroot" āĻāĻ°ā§āĨ¤
āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°ā§āĻ¨: "chdir("/")" (āĻ°ā§āĻ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§) āĻāĻ°āĻž āĻāĻžāĻ˛ āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž āĻ āĻ¨ā§āĻļā§āĻ˛āĻ¨āĨ¤
āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻāĻāĻāĻŋ "chroot()" āĻĒāĻ°ā§āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "chroot"āĨ¤
FILEHANDLE āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§āĻ¨
āĻāĻ¨āĻŋāĻˇā§āĻ
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻŦāĻž āĻĒāĻžāĻāĻĒ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§, IO āĻŦāĻžāĻĢāĻžāĻ°āĻā§āĻ˛āĻŋ āĻĢā§āĻ˛āĻžāĻļ āĻāĻ°ā§, āĻāĻŦāĻ
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ āĻ¸ā§āĻ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻĢāĻ˛ āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻšāĻ¯āĻŧ āĻ¤āĻžāĻšāĻ˛ā§ āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¯ā§ āĻā§āĻ¨ā§ PerlIO āĻ¸ā§āĻ¤āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§. āĻ¯āĻĻāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻŋāĻ¤ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§
āĻ¯ā§āĻā§āĻ¤āĻŋ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ.
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻ āĻ¨ā§āĻ¯ "āĻāĻĒā§āĻ¨" āĻāĻ°āĻ¤ā§ āĻ¯āĻžāĻā§āĻā§āĻ¨ āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻžāĻā§ FILEHANDLE āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻž
āĻāĻāĻŋāĻ¤ā§, āĻāĻžāĻ°āĻŖ "āĻā§āĻ˛āĻž" āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§ āĻĻā§āĻ¯āĻŧāĨ¤ (āĻā§āĻ˛āĻž āĻĻā§āĻā§āĻ¨āĨ¤) āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻāĻāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻ "āĻŦāĻ¨ā§āĻ§" āĻ āĻ¨
āĻāĻāĻāĻŋ āĻāĻ¨āĻĒā§āĻ āĻĢāĻžāĻāĻ˛ āĻ˛āĻžāĻāĻ¨ āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ° ($.) āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§, āĻ¯āĻāĻ¨ "āĻā§āĻ˛āĻž" āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¨āĻž.
āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋ āĻĒāĻžāĻāĻĒ āĻā§āĻ˛āĻž āĻĨā§āĻā§ āĻāĻ¸ā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻ āĻ¨ā§āĻ¯āĻāĻŋāĻ° āĻāĻāĻāĻŋ āĻšāĻ˛ā§ "āĻā§āĻ˛ā§āĻ" āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻāĻĄāĻŧāĻŋāĻ¤ syscalls āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧ āĻŦāĻž āĻ¯āĻĻāĻŋ āĻāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ -āĻļā§āĻ¨ā§āĻ¯ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻ¸āĻš āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻŽāĻžāĻ¤ā§āĻ°
āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻŋāĻ˛ āĻ¯ā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻļā§āĻ¨ā§āĻ¯ āĻ¨āĻ¯āĻŧ, $! 0 āĻ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻāĻāĻāĻŋ āĻĒāĻžāĻāĻĒ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻž āĻšāĻā§āĻā§
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻāĻĒā§ āĻ¸āĻā§āĻāĻžāĻ˛āĻŋāĻ¤ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§ -- āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻāĻžāĻ¨
āĻĒāĻžāĻāĻĒā§āĻ° āĻāĻāĻāĻĒā§āĻ āĻĒāĻ°ā§--āĻāĻŦāĻ āĻĒāĻ°ā§āĻā§āĻˇāĻāĻžāĻŦā§ āĻāĻ° āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸ āĻŽāĻžāĻ¨ āĻ°āĻžāĻā§
$ āĻ āĻāĻŽāĻžāĻ¨ā§āĻĄ? āĻāĻŦāĻ "${^CHILD_ERROR_NATIVE}"āĨ¤
āĻāĻāĻžāĻ§āĻŋāĻ āĻĨā§āĻ°ā§āĻĄ āĻāĻ˛āĻŽāĻžāĻ¨ āĻĨāĻžāĻāĻ˛ā§, āĻĒāĻžāĻāĻĒ āĻā§āĻ˛āĻž āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§ "āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§āĻ¨"
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĨāĻžāĻāĻ˛ā§ āĻāĻžāĻāĻ˛ā§āĻĄ āĻĒā§āĻ°āĻ¸ā§āĻ¸ āĻļā§āĻˇ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻ¨āĻž āĻāĻ°ā§ āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻāĻāĻ¨āĻ āĻ āĻ¨ā§āĻ¯ āĻĨā§āĻ°ā§āĻĄ āĻā§āĻ˛āĻž.
āĻāĻāĻāĻŋ āĻĒāĻžāĻāĻĒā§āĻ° āĻ°āĻŋāĻĄ āĻāĻ¨ā§āĻĄ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻ āĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤ā§ āĻ˛ā§āĻāĻžāĻ° āĻāĻā§
āĻ˛ā§āĻāĻ āĻāĻāĻāĻŋ SIGPIPE āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻāĻ°āĻž āĻ˛ā§āĻāĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛. āĻ āĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤ āĻ¸āĻžāĻŽāĻ˛āĻžāĻ¤ā§ āĻ¨āĻž āĻĒāĻžāĻ°āĻ˛ā§
āĻ¯ā§, āĻĒāĻžāĻāĻĒ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĄā§āĻāĻž āĻĒāĻĄāĻŧāĻ¤ā§ āĻā§āĻ˛āĻŦā§āĻ¨ āĻ¨āĻžāĨ¤
āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻā§āĻ˛ā§āĻ¨ (OUTPUT, '|sort >foo') # āĻĒāĻžāĻāĻĒ āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯
or die "āĻŦāĻžāĻāĻžāĻ āĻļā§āĻ°ā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
#... # āĻāĻāĻāĻĒā§āĻā§ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¸ā§āĻāĻžāĻĢ
āĻāĻāĻāĻĒā§āĻ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§āĻ¨ # āĻ¸āĻžāĻāĻžāĻ¨ā§ āĻļā§āĻˇ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨
āĻ āĻĨāĻŦāĻž $ āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨! ? "āĻ¸āĻ°ā§āĻ āĻĒāĻžāĻāĻĒ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻžāĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ: $!"
: "āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻž $? āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻĨā§āĻā§";
open(INPUT, 'foo') # āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĒāĻžāĻ¨
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻāĻ¨āĻĒā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ 'foo' āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž: $!";
FILEHANDLE āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§,
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ¸āĻ˛ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻ¨āĻžāĻŽ āĻŦāĻž āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĨ¤
āĻŦāĻ¨ā§āĻ§ DIRHANDLE
"opendir" āĻĻā§āĻŦāĻžāĻ°āĻž āĻā§āĻ˛āĻž āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¸ā§āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧāĨ¤
SOCKET,NAME āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻĻā§āĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻā§āĻ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž, āĻ āĻŋāĻ āĻŽāĻ¤ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°āĻž(2)āĨ¤ āĻ¯āĻĻāĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻšāĻ¯āĻŧ
āĻ¸āĻĢāĻ˛, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĨ¤ NAME āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻĒā§āĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻāĻĄ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤ā§ˇ
āĻ¸āĻā§āĻ āĻāĻ¨ā§āĻ¯. "āĻ¸āĻā§āĻāĻ¸: āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ/āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻŽāĻŋāĻāĻ¨āĻŋāĻā§āĻļāĻ¨" āĻāĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻĻā§āĻā§āĻ¨
perlipc
āĻŦā§āĻ˛āĻ āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨
āĻ āĻŦāĻŋāĻ°āĻ¤
āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ˛ā§, "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻāĻ¸āĻ˛ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻŦāĻžāĻš āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻŦāĻŋāĻŦā§āĻ¤āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§
āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻˇā§āĻ āĻžāĻ¨. āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻŦā§āĻ˛āĻ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻĨāĻžāĻā§ (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ
"while" āĻŦāĻž "foreach"), āĻāĻāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻ¨ā§āĻĄāĻŋāĻļāĻ¨āĻžāĻ˛ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻ āĻŋāĻ āĻāĻā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻŦāĻžāĻ° āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻšāĻŦā§, āĻ āĻŋāĻ āĻ¸āĻŋ-āĻ¤ā§ āĻāĻāĻāĻŋ "āĻĢāĻ°" āĻ˛ā§āĻĒā§āĻ° āĻ¤ā§āĻ¤ā§āĻ¯āĻŧ āĻ āĻāĻļā§āĻ° āĻŽāĻ¤ā§āĨ¤ āĻāĻāĻāĻžāĻŦā§ āĻāĻāĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻāĻŋ āĻ˛ā§āĻĒ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻŦā§āĻĻā§āĻ§āĻŋ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ, āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻāĻ¨ āĻ˛ā§āĻĒāĻāĻŋ āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ
"āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§" āĻŦāĻŋāĻŦā§āĻ¤āĻŋ (āĻ¯āĻž āĻ¸āĻŋ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§" āĻŦāĻŋāĻŦā§āĻ¤āĻŋāĻ° āĻ āĻ¨ā§āĻ°ā§āĻĒ)āĨ¤
"āĻļā§āĻˇ", "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§", āĻŦāĻž "āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨" āĻāĻāĻāĻŋ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻŦā§āĻ˛āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§; "āĻļā§āĻˇ" āĻāĻŦāĻ "āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨"
āĻāĻŽāĻ¨ āĻāĻāĻ°āĻŖ āĻāĻ°ā§āĻ¨ āĻ¯ā§āĻ¨ āĻ¤āĻžāĻĻā§āĻ° āĻŽā§āĻ˛ āĻŦā§āĻ˛āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŽā§āĻ¤ā§āĻ¯ā§āĻĻāĻ¨ā§āĻĄ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻ¤āĻžāĻ āĻšāĻŦā§ "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§", āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĨā§āĻā§
āĻāĻāĻŋ āĻāĻāĻāĻŋ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻŦā§āĻ˛āĻ āĻāĻžāĻ˛āĻžāĻŦā§, āĻāĻāĻŋ āĻāĻ°āĻ āĻŦāĻŋāĻ¨ā§āĻĻāĻ¨āĻŽā§āĻ˛āĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻ¯āĻāĻ¨ (EXPR) {
### āĻ°āĻŋāĻĄā§ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻžāĻ¨ā§ āĻāĻ¸ā§
āĻāĻŋāĻā§ āĻāĻ°;
} āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨ {
### āĻĒāĻ°ā§āĻ° āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻžāĻ¨ā§ āĻāĻ¸ā§
āĻāĻŋāĻā§_āĻāĻŋāĻā§_āĻāĻ°ā§āĻ¨;
# āĻ¤āĻžāĻ°āĻĒāĻ° EXPR āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻā§āĻ āĻāĻ°āĻ¤ā§ āĻļā§āĻ°ā§āĻˇā§ āĻĢāĻŋāĻ°ā§ āĻ¯āĻžāĻ¨
}
### āĻļā§āĻˇ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻžāĻ¨ā§ āĻāĻ¸ā§
"āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻŦāĻŋāĻāĻžāĻāĻāĻŋ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯, āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻāĻžāĻŦā§ āĻ¯āĻĨā§āĻˇā§āĻ,
āĻ¤āĻžāĻ "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§" āĻ˛ā§āĻĒā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĢāĻŋāĻ°ā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤
āĻ¯āĻāĻ¨ āĻā§āĻ¨ āĻŦā§āĻ˛āĻ āĻ¨āĻž āĻĨāĻžāĻā§, āĻ¤āĻāĻ¨ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻ¯āĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ "when" āĻāĻ° āĻŽāĻ§ā§āĻ¯ āĻĻāĻŋāĻ¯āĻŧā§ āĻĒāĻĄāĻŧā§
āĻ āĻĨāĻŦāĻž "āĻĄāĻŋāĻĢāĻ˛ā§āĻ" āĻŦā§āĻ˛āĻā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻāĻ¤āĻŋāĻļā§āĻ˛āĻāĻžāĻŦā§ āĻā§āĻ°āĻž "āĻĢā§āĻ°āĻ" āĻŦāĻž āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§
āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻāĻāĻžāĻŦā§ "āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤" āĻāĻŦāĻĻā§āĻ§āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻāĻŦāĻ āĻ¤āĻžāĻ° āĻāĻā§, "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯ā§āĻ¤ā§" āĻāĻ āĻĢāĻ°ā§āĻŽāĻāĻŋ āĻāĻŋāĻ˛
āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "āĻ¸ā§āĻāĻ" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž āĻšāĻ˛ā§āĻ āĻāĻĒāĻ˛āĻŦā§āĻ§ā§ˇ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĻā§āĻā§āĻ¨ āĻāĻŦāĻ "āĻ¸ā§āĻāĻ āĻāĻ°ā§āĻ¨
āĻŦāĻŋāĻŦā§āĻ¤āĻŋ" āĻāĻ°āĻ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻŋāĻ¨ā§āĨ¤
cos EXPR
cos EXPR āĻāĻ° āĻā§āĻ¸āĻžāĻāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ (āĻ°ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ā§ āĻĒā§āĻ°āĻāĻžāĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧ)āĨ¤ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ˛ā§, āĻ˛āĻžāĻā§
$_ āĻāĻ° āĻā§āĻ¸āĻžāĻāĻ¨āĨ¤
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻā§āĻ¸āĻžāĻāĻ¨ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻŋ "Math::Trig::acos()" āĻĢāĻžāĻāĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ āĻĨāĻŦāĻž
āĻāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨:
sub acos { atan2( sqrt(1 - $_[0] * $_[0]), $_[0] ) }
āĻā§āĻ°āĻŋāĻĒā§āĻ āĻĒā§āĻ˛ā§āĻāĻ¨āĻā§āĻā§āĻ¸āĻ, āĻ¸āĻ˛ā§āĻ
āĻ āĻŋāĻ āĻŽāĻ¤ āĻāĻāĻāĻŋ āĻĄāĻžāĻāĻā§āĻ¸ā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ āĻ¸āĻŽāĻžāĻ§āĻŋāĻā§āĻš(3) āĻ¸āĻŋ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ¤ā§ āĻĢāĻžāĻāĻļāĻ¨ (āĻ§āĻ°ā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻā§āĻā§
āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻāĻ¸āĻ˛ā§ āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻ˛ā§āĻĒā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ
āĻ āĻ¸ā§āĻ¤ā§āĻ°āĻļāĻ¸ā§āĻ¤ā§āĻ°)āĨ¤
āĻā§āĻ°āĻŋāĻĒā§āĻ() āĻāĻāĻāĻŋ āĻāĻāĻŽā§āĻā§ āĻšā§āĻ¯āĻžāĻļ āĻĢāĻžāĻāĻļāĻ¨āĨ¤ PLAINTEXT āĻāĻŦāĻ SALT āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻ°āĻŋāĻŖāĻ¤ āĻšāĻ¯āĻŧ
āĻ¸ā§āĻā§āĻ°āĻŋāĻ, āĻāĻāĻāĻŋ āĻĄāĻžāĻāĻā§āĻ¸ā§āĻ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻ PLAINTEXT āĻāĻŦāĻ SALT āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻšāĻŦā§
āĻāĻāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ¸āĻ˛ PLAINTEXT āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻā§āĻ¨ (āĻāĻžāĻ¨āĻž) āĻāĻĒāĻžāĻ¯āĻŧ āĻ¨ā§āĻ
āĻšā§āĻ¯āĻžāĻļ PLAINTEXT āĻŦāĻž SALT-āĻ āĻā§āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻĢāĻ˛ā§ āĻŦāĻĄāĻŧ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻŦā§
āĻĒāĻ°āĻŋāĻĒāĻžāĻ āĻāĻ°āĻž.
āĻā§āĻ¨ āĻĄāĻŋāĻā§āĻ°āĻŋāĻĒā§āĻ āĻĢāĻžāĻāĻļāĻ¨ āĻ¨ā§āĻ. āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻā§āĻ°āĻžāĻĢāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§ āĻ¨āĻ¯āĻŧ
(āĻāĻ° āĻāĻ¨ā§āĻ¯, āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§āĻ¨ āĻ¸āĻŽāĻžāĻ§āĻŋāĻā§āĻš āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻāĻžāĻāĻžāĻāĻŋ CPAN āĻŽāĻŋāĻ°āĻ° āĻŽāĻĄāĻŋāĻāĻ˛) āĻāĻŦāĻ āĻ¨āĻžāĻŽ "āĻā§āĻ°āĻŋāĻĒā§āĻ"
āĻāĻāĻāĻŋ āĻā§āĻ˛ āĻ¨āĻžāĻŽ āĻāĻāĻāĻŋ āĻŦāĻŋāĻ. āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻŋ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻāĻāĻžāĻŦā§ āĻĻā§āĻ āĻā§āĻāĻ°ā§ āĻĒāĻžāĻ ā§āĻ¯ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ
āĻā§āĻā§āĻ¸āĻ āĻ¨āĻŋāĻā§āĻ āĻĒā§āĻ°ā§āĻ°āĻŖ āĻŦāĻž āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻ¨āĻž āĻāĻ°ā§ āĻāĻāĻ. āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻ āĻŋāĻ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄā§āĻ° āĻĄāĻžāĻāĻā§āĻ¸ā§āĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¨āĻž
āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ¨āĻŋāĻā§āĻāĨ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻāĻžāĻāĻĒ āĻ¯ā§ āĻšāĻ¯āĻŧ āĻā§āĻ°āĻŋāĻĒā§āĻ()āĻāĻāĻ āĻ˛āĻŦāĻŖ āĻĻāĻŋāĻ¯āĻŧā§ d
āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻĄāĻžāĻāĻā§āĻ¸ā§āĻāĨ¤ āĻ¯āĻĻāĻŋ āĻĻā§āĻāĻŋ āĻĄāĻžāĻāĻā§āĻ¸ā§āĻ āĻŽāĻŋāĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧ, āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻāĻŋ āĻ¸āĻ āĻŋāĻāĨ¤
āĻāĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĄāĻžāĻāĻā§āĻ¸ā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¯āĻžāĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻĒāĻ¨āĻžāĻā§ āĻ˛āĻŦāĻŖ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĄāĻžāĻāĻā§āĻ¸ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ (āĻ¯ā§āĻŽāĻ¨
"crypt($plain, $digest) eq $digest")āĨ¤ āĻĄāĻžāĻāĻā§āĻ¸ā§āĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻ¸āĻ˛ā§āĻ āĻĻā§āĻļā§āĻ¯āĻŽāĻžāĻ¨
āĻĄāĻžāĻāĻā§āĻ¸ā§āĻā§āĻ° āĻ āĻāĻļ āĻšāĻŋāĻ¸āĻžāĻŦā§āĨ¤ āĻāĻāĻŋ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§ āĻā§āĻ°āĻŋāĻĒā§āĻ() āĻāĻāĻ āĻ¸āĻā§āĻā§ āĻ¨āĻ¤ā§āĻ¨ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšā§āĻ¯āĻžāĻļ āĻšāĻŦā§
āĻĒāĻ°āĻŋāĻĒāĻžāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ˛āĻŦāĻŖāĨ¤ āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄāĻā§ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻŦāĻ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ
āĻāĻ°ā§ āĻŦāĻšāĻŋāĻ°āĻžāĻāĻ¤ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĨ¤ āĻ āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, āĻĢāĻŋāĻ°ā§ āĻāĻ¸āĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻŋāĻā§āĻ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž
āĻ¨āĻŋāĻā§āĻ āĻŦāĻž āĻ¸āĻ˛ā§āĻ āĻāĻ¤ āĻŦāĻžāĻāĻ āĻŦā§āĻ¯āĻžāĻĒāĻžāĻ° āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¨āĻž.
āĻāĻ¤āĻŋāĻšā§āĻ¯āĻāĻ¤āĻāĻžāĻŦā§ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻšāĻ˛ 13 āĻŦāĻžāĻāĻā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ: āĻ˛āĻŦāĻŖā§āĻ° āĻĻā§āĻāĻŋ āĻĒā§āĻ°āĻĨāĻŽ āĻŦāĻžāĻāĻ,
āĻ¤āĻžāĻ°āĻĒāĻ°ā§ "[./11-0A-Za-z]" āĻ¸ā§āĻ āĻĨā§āĻā§ 9 āĻŦāĻžāĻāĻ āĻāĻŦāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻāĻ āĻŦāĻžāĻāĻ
PLAINTEXT āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻšā§āĻ¯āĻžāĻļāĻŋāĻ āĻ¸ā§āĻāĻŋāĻŽ (āĻ¯ā§āĻŽāĻ¨ MD5), āĻāĻā§āĻ āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž
āĻ¸ā§āĻāĻŋāĻŽ (āĻ¯ā§āĻŽāĻ¨ C2), āĻāĻŦāĻ āĻ¨āĻ¨-āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻŋāĻ¨ā§āĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĨ¤
āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ˛āĻŦāĻŖ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻĻā§āĻāĻŋ āĻ āĻā§āĻˇāĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨ āĻ¯āĻžāĻ° āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋ āĻāĻ¸ā§
āĻ¸ā§āĻ āĻĨā§āĻā§ "[./0-9A-Za-z]" (āĻ¯ā§āĻŽāĻ¨ "āĻ¯ā§āĻāĻĻāĻžāĻ¨ '', ('.', '/', 0..9, 'A'..'Z', 'a')āĨ¤ .'z') [āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄ
64, rand 64]")āĨ¤ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻ āĻ¸ā§āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ; āĻ āĻā§āĻˇāĻ°
āĻ˛āĻŦāĻŖā§ āĻ āĻ¨ā§āĻŽā§āĻĻāĻŋāĻ¤ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§ āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛ āĻĒāĻžāĻ°ā§ āĻ¨āĻž
"āĻā§āĻ°āĻŋāĻĒā§āĻ()" āĻā§ āĻ˛āĻŦāĻŖ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ āĻ¤āĻž āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¯āĻž āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§ āĻ¯ā§ āĻ¯āĻžāĻ°āĻž āĻāĻ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻāĻžāĻ˛āĻžāĻ¯āĻŧ āĻ¤āĻžāĻ°āĻž āĻ¤āĻžāĻĻā§āĻ° āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻāĻžāĻ¨ā§:
$pwd = (getpwuid($<))[1];
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ "stty -echo";
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ:";
chomp($word = );
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "\n";
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ "āĻ¸ā§āĻāĻŋāĻāĻŋ āĻāĻā§";
āĻ¯āĻĻāĻŋ (crypt($word, $pwd) ne $pwd) {
āĻŽā§āĻ¤ā§āĻ¯ā§ "āĻĻā§āĻāĻāĻŋāĻ¤...\n";
} āĻ āĻ¨ā§āĻ¯ {
"āĻ āĻŋāĻ āĻāĻā§" āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨;
}
āĻ āĻŦāĻļā§āĻ¯āĻ, āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻā§āĻ° āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻāĻžāĻāĻĒ āĻāĻ°āĻž āĻ¯ā§ āĻā§āĻ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻāĻāĻŋ āĻāĻžāĻāĻŦā§ āĻ¤āĻž āĻŦā§āĻĻā§āĻ§āĻŋāĻŽāĻžāĻ¨ā§āĻ° āĻāĻžāĻ āĻ¨āĻ¯āĻŧāĨ¤
āĻā§āĻ°āĻŋāĻĒā§āĻ āĻĢāĻžāĻāĻļāĻ¨ āĻŦāĻĄāĻŧ āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§ āĻĄā§āĻāĻž āĻšā§āĻ¯āĻžāĻļ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻĒāĻ¯ā§āĻā§āĻ¤, āĻ āĻ¨ā§āĻ¤āĻ¤ āĻāĻŋāĻā§ āĻ¨āĻ¯āĻŧ
āĻ¸āĻŦ āĻāĻžāĻ°āĻŖ āĻāĻĒāĻ¨āĻŋ āĻ¤āĻĨā§āĻ¯ āĻĢāĻŋāĻ°ā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¨āĻž. āĻāĻ°ā§ āĻāĻ¨ā§āĻ¯ āĻĄāĻžāĻāĻā§āĻ¸ā§āĻ āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¤āĻžāĻāĻžāĻ¨
āĻļāĻā§āĻ¤āĻŋāĻļāĻžāĻ˛ā§ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽāĨ¤
āĻ¯āĻĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻā§āĻ°āĻŋāĻĒā§āĻ() āĻāĻāĻāĻŋ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ (āĻ¯āĻž āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻā§āĻĄāĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻš āĻ āĻā§āĻˇāĻ° āĻāĻā§
255 āĻāĻ° āĻāĻĒāĻ°ā§), āĻĒāĻžāĻ°ā§āĻ˛ āĻĄāĻžāĻāĻ¨āĻā§āĻ°ā§āĻĄ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻŦā§āĻāĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§ (āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ
āĻ āĻĢ) āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻāĻāĻāĻŋ āĻāĻ-āĻŦāĻŋāĻ āĻŦāĻžāĻāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ āĻĢāĻŋāĻ°ā§ āĻ¯āĻžāĻ¨ āĻā§āĻ°āĻŋāĻĒā§āĻ() (āĻāĻ āĻāĻĒāĻŋāĻ¤ā§)āĨ¤
āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°ā§, āĻāĻžāĻ˛āĨ¤ āĻ¯āĻĻāĻŋ āĻ¨āĻž, āĻā§āĻ°āĻŋāĻĒā§āĻ() "āĻā§āĻ°āĻŋāĻĒā§āĻā§ āĻāĻ¯āĻŧāĻžāĻāĻĄ āĻā§āĻ¯āĻžāĻ°ā§āĻā§āĻāĻžāĻ°" āĻĻāĻŋāĻ¯āĻŧā§ āĻŽāĻžāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻā§āĻ°āĻŋāĻĒā§āĻ"āĨ¤
dbmclose āĻšā§āĻ¯āĻžāĻļ
[āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻŽā§āĻ˛āĻ¤ "untie" āĻĢāĻžāĻāĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤]
āĻāĻāĻāĻŋ DBM āĻĢāĻžāĻāĻ˛ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŦāĻžāĻāĻ§āĻžāĻ āĻā§āĻā§ āĻĻā§āĻ¯āĻŧā§ˇ
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "dbmclose"āĨ¤
dbmopen āĻšā§āĻ¯āĻžāĻļ, DBNAME, āĻŽāĻžāĻ¸ā§āĻ
[āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻŽā§āĻ˛āĻ¤ āĻāĻžāĻ āĻĢāĻžāĻāĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤]
āĻāĻāĻŋ āĻāĻŦāĻĻā§āĻ§ āĻāĻ°ā§ āĻĄāĻŋāĻŦāĻŋāĻāĻŽ(ā§¨ā§Ļā§§ā§§), ndbm(ā§¨ā§Ļā§§ā§§), sdbm(ā§¨ā§Ļā§§ā§§), āĻāĻŋāĻĄāĻŋāĻŦāĻŋāĻāĻŽ(3), āĻŦāĻž āĻŦāĻžāĻ°ā§āĻāĻ˛ā§ āĻĄāĻŋāĻŦāĻŋ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻĢāĻžāĻāĻ˛. āĻšā§āĻ¯āĻžāĻļ
āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻ¨āĻžāĻŽāĨ¤ (āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ "āĻā§āĻ˛āĻž" āĻĨā§āĻā§ āĻāĻŋāĻ¨ā§āĻ¨, āĻĒā§āĻ°āĻĨāĻŽ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻ˛ āĻ¨āĻž a
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ¯āĻĻāĻŋāĻ āĻāĻāĻŋ āĻĻā§āĻāĻ¤ā§ āĻāĻ)āĨ¤ DBNAME āĻšāĻ˛ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ā§āĻ° āĻ¨āĻžāĻŽ
(āĻāĻžāĻĄāĻŧāĻž āĨ¤ āĻšāĻ¯āĻŧ or .pag āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§)āĨ¤ āĻ¯āĻĻāĻŋ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨āĻž āĻĨāĻžāĻā§ āĻ¤āĻŦā§ āĻ¤āĻž āĻšāĻ¯āĻŧ
MASK āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸ā§āĻ°āĻā§āĻˇāĻž āĻĻāĻŋāĻ¯āĻŧā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ (āĻ¯ā§āĻŽāĻ¨ "āĻāĻŽāĻžāĻ¸ā§āĻ" āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻāĻļā§āĻ§āĻŋāĻ¤)āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻ°ā§āĻ§ āĻāĻ°āĻ¤ā§
āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨āĻž āĻĨāĻžāĻā§, āĻāĻĒāĻ¨āĻŋ 0 āĻāĻ° āĻāĻāĻāĻŋ āĻŽā§āĻĄ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻŦāĻ
āĻĢāĻžāĻāĻļāĻ¨ āĻāĻāĻāĻŋ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻŦā§ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĄāĻžāĻāĻžāĻŦā§āĻ¸ āĻā§āĻāĻā§ āĻ¨āĻž āĻĒāĻžāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻ¤ā§āĻŽāĻžāĻ°
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°āĻžāĻ¨ā§ DBM āĻĢāĻžāĻāĻļāĻ¨ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§, āĻāĻĒāĻ¨āĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ "dbmopen" āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻĒā§āĻ°āĻžāĻ¨ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ DBM āĻŦāĻž ndbm āĻ¨āĻž āĻĨāĻžāĻā§,
"dbmopen" āĻāĻ˛ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻŽāĻžāĻ°āĻžāĻ¤ā§āĻŽāĻ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻā§; āĻāĻāĻž āĻāĻāĻ¨ āĻĢāĻŋāĻ°ā§ āĻĒāĻĄāĻŧā§ sdbm(3).
āĻāĻĒāĻ¨āĻžāĻ° āĻ¯āĻĻāĻŋ DBM āĻĢāĻžāĻāĻ˛ā§ āĻ˛ā§āĻāĻžāĻ° āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻ¨āĻž āĻĨāĻžāĻā§ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻšā§āĻ¯āĻžāĻļ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻĒāĻĄāĻŧāĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨, āĻ¨āĻž
āĻ¤āĻžāĻĻā§āĻ° āĻ¸ā§āĻ āĻāĻĒāĻ¨āĻŋ āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŋāĻ¨āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨, āĻšāĻ¯āĻŧ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻŦāĻž āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻ¨
āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĢāĻžāĻāĻĻ āĻāĻāĻāĻŋ "eval" āĻāĻŋāĻ¤āĻ°ā§ āĻāĻāĻāĻŋ āĻĄāĻžāĻŽāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻ¸ā§āĻ āĻāĻ°āĻž.
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ "āĻā§" āĻāĻŦāĻ "āĻŽāĻžāĻ¨" āĻāĻ° āĻŽāĻ¤ā§ āĻĢāĻžāĻāĻļāĻ¨āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻŋāĻļāĻžāĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻĄāĻŧ āĻĄāĻŋāĻŦāĻŋāĻāĻŽ āĻĢāĻžāĻāĻ˛āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻŦāĻĄāĻŧ DBM āĻāĻ° āĻāĻĒāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻ°āĻ¤ā§ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻĢāĻžāĻāĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¨āĻĨāĻŋ āĻĒāĻ¤ā§āĻ°. āĻāĻĻāĻžāĻšāĻ°āĻŖ:
# āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻāĻ āĻāĻ¤āĻŋāĻšāĻžāĻ¸ āĻĢāĻžāĻāĻ˛ āĻ āĻĢāĻ¸ā§āĻ
dbmopen(%HIST,'/usr/lib/news/history',0666);
āĻ¯āĻāĻ¨ (($key,$val) = āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ %HIST) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $key, ' = ', āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ('L',$val), "\n";
}
dbmclose(%HIST);
āĻāĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻāĻŦāĻ āĻ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻ°āĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŦāĻŋāĻŦāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ AnyDBM_File āĻĻā§āĻā§āĻ¨
āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ dbm āĻĒāĻ¨ā§āĻĨāĻž, āĻ¸ā§āĻāĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻ¸āĻŽā§āĻĻā§āĻ§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ DB_FileāĨ¤
āĻāĻĒāĻ¨āĻŋ āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻ¸ā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻ˛ā§āĻĄ āĻāĻ°ā§ āĻāĻĒāĻ¨āĻŋ āĻā§āĻ¨ DBM āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĻ¨ āĻ¤āĻž āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ā§ˇ
dbmopen():
DB_File āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
dbmopen(%NS_Hist, "$ENV{HOME}/.netscape/history.db")
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻ¨ā§āĻāĻ¸ā§āĻā§āĻĒ āĻāĻ¤āĻŋāĻšāĻžāĻ¸ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "dbmopen"āĨ¤
āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ EXPR
āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤
EXPR-āĻāĻ° āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻĄāĻŧāĻž āĻ āĻ¨ā§āĻ¯ āĻā§āĻ¨ā§ āĻŽāĻžāĻ¨ āĻāĻā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻŦāĻ˛ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻŽāĻžāĻ¨ "undef"āĨ¤ EXPR āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻ¨āĻž āĻĨāĻžāĻāĻ˛ā§, $_ āĻā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻ āĻ¨ā§āĻ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž, āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇ, āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°āĻ¤ā§ "undef" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ,
āĻ āĻĒā§āĻ°āĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛, āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽā§ āĻļāĻ°ā§āĻ¤āĨ¤ āĻāĻ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻĒāĻ¨āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨
āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŽāĻžāĻ¨ āĻĨā§āĻā§ "undef" āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°ā§āĻ¨āĨ¤ (āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŦā§āĻ˛āĻŋāĻ¯āĻŧāĻžāĻ¨ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻāĻ°āĻŦā§ āĻ¨āĻž
"undef", āĻļā§āĻ¨ā§āĻ¯, āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻŦāĻ "0" āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¯āĻž āĻ¸āĻŦāĻ āĻ¸āĻŽāĻžāĻ¨āĻāĻžāĻŦā§ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĨ¤) āĻ¨ā§āĻ
āĻ¯ā§āĻšā§āĻ¤ā§ "undef" āĻāĻāĻāĻŋ āĻŦā§āĻ§ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻāĻ° āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻ¨ā§āĻ āĻ āĻāĻ¤ā§āĻ¯āĻž āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§āĻ¨
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽā§ āĻļāĻ°ā§āĻ¤: "āĻĒāĻĒ" "undef" āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯āĻāĻ¨ āĻāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻšāĻ¯āĻŧ, or
āĻ¯āĻāĻ¨ āĻĢāĻŋāĻ°ā§ āĻāĻ¸āĻžāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ "undef" āĻšāĻŦā§āĨ¤
āĻāĻĒāĻ¨āĻŋ "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤(&func)" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ &func āĻāĻāĻ¨āĻ āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§
āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ &func-āĻāĻ° āĻā§āĻ¨ā§ āĻĢāĻ°ā§āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻā§āĻˇāĻŖāĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢā§āĻ°āĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻ
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ¯āĻž āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ āĻ¤āĻž āĻāĻāĻ¨āĻ āĻāĻ˛āĻ¯ā§āĻā§āĻ¯ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§: āĻāĻ° āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻāĻāĻāĻŋ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
"āĻ āĻā§āĻ˛ā§āĻĄ" āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ¯āĻž āĻāĻāĻŋāĻā§ āĻĒā§āĻ°āĻĨāĻŽāĻŦāĻžāĻ°ā§āĻ° āĻŽāĻ¤ā§ āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ¸ā§
āĻĄāĻžāĻāĻž perlsub āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¸āĻŽāĻˇā§āĻāĻŋāĻ¤ā§ (āĻšā§āĻ¯āĻžāĻļ āĻāĻŦāĻ āĻ ā§āĻ¯āĻžāĻ°ā§) "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤" āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻāĻž āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻāĻ°āĻ¤ā§āĻ¨
āĻ¯ā§ āĻ¸āĻŽāĻˇā§āĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻŽā§āĻŽāĻ°āĻŋ āĻāĻāĻ¨āĻ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŋāĻ¨āĻž. āĻāĻ āĻāĻāĻ°āĻŖ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ āĻ āĻĻā§āĻļā§āĻ¯ āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻŦā§āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤:
āĻ¯āĻĻāĻŋ (@an_array) { āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻā§\n" }
āĻ¯āĻĻāĻŋ (%a_hash) { āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻšā§āĻ¯āĻžāĻļ āĻ¸āĻĻāĻ¸ā§āĻ¯ āĻāĻā§\n" }
āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ˛ā§, āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻ˛ā§ āĻ¯ā§ āĻŽāĻžāĻ¨āĻāĻŋ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻ¨āĻ¯āĻŧ
āĻā§ āĻšā§āĻ¯āĻžāĻļā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨āĨ¤ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§ "āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻŽā§āĻĻā§āĻ°āĻŖ āĻ¯āĻĻāĻŋ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ $switch{D};
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻž "$val\n" āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ ($val = pop(@ary));
die "āĻ˛āĻŋāĻā§āĻ āĻĒāĻĄāĻŧāĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻž $sym: $!"
āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ ($value = readlink $sym);
āĻ¸āĻžāĻŦ foo { āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ &$bar? &$bar(@_): āĻĄāĻžāĻ "āĻ¨ā§ āĻŦāĻžāĻ°"; }
$debugging = 0 āĻ¯āĻĻāĻŋ āĻ¨āĻž $debugging āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ;
āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: āĻ āĻ¨ā§āĻ āĻ˛ā§āĻ "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤" āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻŦāĻŖāĻ¤āĻž āĻ°āĻžāĻā§ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻāĻŋ āĻāĻŦāĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°ā§ āĻ āĻŦāĻžāĻ āĻšāĻ¯āĻŧ
āĻ¸āĻāĻā§āĻ¯āĻž 0 āĻāĻŦāĻ "" (āĻļā§āĻ¨ā§āĻ¯-āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻ) āĻāĻ¸āĻ˛ā§, āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻŽāĻžāĻ¨āĨ¤ āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻŦāĻ˛ā§āĻ¨
"ab" =~ /a(.*)b/;
āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻŽā§āĻ¯āĻžāĻ āĻ¸āĻĢāĻ˛ āĻšāĻ¯āĻŧ āĻāĻŦāĻ $1 āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻĻāĻŋāĻ āĻāĻāĻŋ "āĻāĻŋāĻā§āĻ" āĻŽā§āĻ˛ā§ āĻ¨āĻžāĨ¤ āĻāĻāĻž
āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻāĻŋāĻā§ āĻŽā§āĻ˛ā§ āĻ¨āĻž. āĻŦāĻ°āĻ, āĻāĻāĻŋ āĻāĻŽāĻ¨ āĻāĻŋāĻā§ āĻŽāĻŋāĻ˛ā§āĻā§ āĻ¯āĻž āĻāĻā§āĻā§
āĻļā§āĻ¨ā§āĻ¯ āĻ āĻā§āĻˇāĻ° āĻĻā§āĻ°ā§āĻ āĻšāĻ¤ā§. āĻāĻ āĻ¸āĻŦ āĻā§āĻŦ āĻāĻĒāĻ°ā§-āĻŦā§āĻ°ā§āĻĄ āĻāĻŦāĻ āĻ¸ā§. āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨
āĻāĻāĻāĻŋ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦā§āĻāĻžāĻ°ā§āĻ¯ āĻ¯ā§ āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻāĻŋ āĻ¸ā§ āĻĻāĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĻŋ
āĻāĻ¤ā§āĻ¤āĻ°. āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻŋ "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¯āĻāĻ¨ āĻāĻŋ āĻ¸āĻ¤āĻ¤āĻž āĻĒā§āĻ°āĻļā§āĻ¨
āĻāĻĒāĻ¨āĻŋ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻā§āĻ¨āĨ¤ āĻ āĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¯āĻŧā§, 0 āĻŦāĻž "" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ¸āĻšāĻ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻĒāĻ¨āĻŋ āĻ¯āĻž āĻāĻžāĻ¨ āĻ¤āĻžāĨ¤
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĻā§āĻā§āĻ¨ "undef", "exists", "ref"āĨ¤
EXPR āĻŽā§āĻā§āĻ¨
āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻž āĻ¯āĻž āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻŦāĻž āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻ¸ā§āĻ˛āĻžāĻāĻ¸ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§, "āĻŽā§āĻā§āĻ¨" āĻŽā§āĻā§ āĻĻā§āĻ¯āĻŧ
āĻ¯ā§ āĻšā§āĻ¯āĻžāĻļ āĻĨā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¯āĻžāĻ¤ā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨() āĻ¯ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻ° āĻĢāĻŋāĻ°ā§ āĻ¨āĻž
āĻ¸āĻ¤ā§āĻ¯ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¸ā§āĻ āĻ¤āĻžāĻ° āĻā§ āĻ āĻĒāĻ¸āĻžāĻ°āĻŖ āĻ¨āĻž, āĻāĻŋāĻ¨ā§āĻ¤ā§
āĻāĻāĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻ¯āĻŧ; "āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§, āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻŽāĻžāĻ¨ āĻŦāĻž āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻ āĻĨāĻŦāĻž āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻļā§āĻˇ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§:
āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦāĻšā§āĻ¨ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻ¤āĻžāĻĻā§āĻ° āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻŽāĻ§ā§āĻ¯ā§ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨āĨ¤
āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž() āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻŦāĻ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻ¸ā§āĻ˛āĻžāĻāĻ¸ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¤āĻŦā§ āĻāĻ° āĻāĻāĻ°āĻŖ āĻāĻŽ
āĻ¸ā§āĻāĻž āĻ¯āĻĻāĻŋāĻ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨() āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻāĻ¨ā§āĻā§āĻ°āĻŋ, āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻĢāĻŋāĻ°ā§ āĻāĻ¸āĻŦā§
āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻŽāĻžāĻ¨ā§āĻ° āĻ¸ā§āĻāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§ āĻ¨āĻž; āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻļāĻŋāĻĢāĻ() or āĻ¸ā§āĻĒā§āĻ˛āĻŋāĻ¸() āĻāĻ¨ā§āĻ¨āĻ¤
āĻ¯ā§ āĻ¯āĻžāĻāĻšā§āĻ, āĻ¯āĻĻāĻŋ āĻā§āĻ¨ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻļā§āĻˇā§ āĻĒāĻĄāĻŧā§, āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻāĻāĻžāĻ°
āĻ¸āĻ°ā§āĻŦā§āĻā§āĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻ¸āĻā§āĻā§āĻāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¯āĻž āĻāĻāĻ¨āĻ āĻ¸āĻ¤ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨(), āĻŦāĻž
0 āĻĨā§āĻā§ āĻ¯āĻĻāĻŋ āĻā§āĻ āĻ¨āĻž āĻāĻ°ā§āĨ¤ āĻ āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§ āĻ āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻĨāĻžāĻāĻŦā§ āĻ¨āĻž
āĻāĻāĻāĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻĒāĻ°ā§āĨ¤
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž: āĻ ā§āĻ¯āĻžāĻ°ā§ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ "āĻŽā§āĻā§āĻ¨" āĻāĻ˛ āĻāĻ°āĻž āĻĻā§āĻĸāĻŧāĻāĻžāĻŦā§ āĻ¨āĻŋāĻ°ā§ā§āĻ¸āĻžāĻšāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻ° āĻ§āĻžāĻ°āĻŖāĻž
āĻĒāĻžāĻ°ā§āĻ˛ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻŦāĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻ§āĻžāĻ°āĻŖāĻžāĻāĻ¤āĻāĻžāĻŦā§ āĻ¨āĻ¯āĻŧ
āĻ¸ā§āĻ¸āĻā§āĻāĻ¤, āĻāĻŦāĻ āĻāĻļā§āĻāĻ°ā§āĻ¯āĻāĻ¨āĻ āĻāĻāĻ°āĻŖā§āĻ° āĻĻāĻŋāĻā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
%ENV āĻĨā§āĻā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻĢāĻ˛ā§ āĻĒāĻ°āĻŋāĻŦā§āĻļ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻāĻŋ DBM āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŦāĻžāĻāĻ§āĻž āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻĨā§āĻā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻā§āĻā§
DBM āĻĢāĻžāĻāĻ˛ āĻĨā§āĻā§ āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻŽā§āĻā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻāĻāĻŋ "āĻāĻžāĻāĻĄ" āĻšā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§ āĻĨā§āĻā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ āĻāĻ¤ā§āĻ¯āĻž āĻāĻŋāĻā§ āĻĢā§āĻ°āĻ¤; āĻāĻāĻŋ "āĻāĻžāĻāĻĄ" āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§
DELETE āĻĒāĻĻā§āĻ§āĻ¤āĻŋ, āĻ¯āĻž āĻā§āĻļāĻŋ āĻ¤āĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
"āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ EXPR āĻŽā§āĻā§āĻ¨" āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻ āĻāĻ˛āĻŽāĻžāĻ¨ āĻ¸āĻŽāĻ¯āĻŧā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŦā§āĻ˛āĻā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻ°āĻŖ āĻāĻ°ā§
āĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻ˛āĻ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤, āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§āĻāĻžāĻŦā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻāĻ° āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨ā§āĻāĨ¤
āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻžāĻŦā§ "āĻ¯ā§āĻāĻŋāĻ āĻ§āĻ°āĻŖā§āĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻ°āĻŖ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž" āĻĻā§āĻā§āĻ¨āĨ¤
%āĻšā§āĻ¯āĻžāĻļ = (foo => 11, āĻŦāĻžāĻ° => 22, baz => 33);
$scalar = $hash{foo} āĻŽā§āĻā§ āĻĢā§āĻ˛ā§āĻ¨; # $scalar āĻšāĻ˛ 11
$scalar = āĻĄāĻŋāĻ˛āĻŋāĻ @hash{qw(foo bar)}; # $scalar āĻšāĻ˛ 22
@array = āĻĄāĻŋāĻ˛āĻŋāĻ @hash{qw(foo baz)}; # @array āĻšāĻ˛ (undef,33)
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ (āĻ āĻĻāĻā§āĻˇāĻāĻžāĻŦā§) %HASH āĻāĻŦāĻ @ARRAY-āĻāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŽāĻžāĻ¨ āĻŽā§āĻā§ āĻĻā§āĻ¯āĻŧ:
foreach $key (āĻā§ % āĻšā§āĻ¯āĻžāĻļ) {
$HASH{$key} āĻŽā§āĻā§āĻ¨;
}
foreach $index (0 .. $#ARRAY) {
$ARRAY[$index] āĻŽā§āĻā§āĻ¨;
}
āĻāĻŦāĻ āĻ¤āĻžāĻ āĻāĻāĻā§āĻ˛āĻŋ āĻāĻ°ā§āĻ¨:
@HASH{āĻā§ % HASH} āĻŽā§āĻā§āĻ¨;
@ARRAY[0 .. $#ARRAY] āĻŽā§āĻā§āĻ¨;
āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻ¯āĻŧāĻ āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻŦāĻž %HASH āĻŦāĻž @ARRAY āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻ§ā§āĻ°, āĻ¯āĻž
āĻāĻāĻāĻŋ āĻ¸āĻŽāĻˇā§āĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻĨāĻžāĻāĻ¤ āĻāĻĒāĻžāĻ¯āĻŧ āĻšāĻ˛:
% āĻšā§āĻ¯āĻžāĻļ = (); # āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻžāĻ˛āĻŋ % āĻšā§āĻ¯āĻžāĻļ
undef % āĻšā§āĻ¯āĻžāĻļ; # āĻā§āĻ˛ā§ āĻ¯āĻžāĻ¨ % āĻšā§āĻ¯āĻžāĻļ āĻāĻāĻ¨āĻ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻāĻŋāĻ˛
@ARRAY = (); # āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻžāĻ˛āĻŋ @ARRAY
undef @ARRAY; # āĻā§āĻ˛ā§ āĻ¯āĻžāĻ¨ @ARRAY āĻāĻāĻ¨āĻ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻāĻŋāĻ˛
EXPR āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻāĻžāĻ°ā§ āĻāĻāĻŋāĻ˛ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ āĻāĻ° āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ˛āĻžāĻĒāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻŦāĻž
āĻāĻāĻāĻŋ āĻ¸āĻŽāĻˇā§āĻāĻŋāĻ° āĻā§āĻāĻ°āĻž:
$ref->[$x][$y]{$key} āĻŽā§āĻā§āĻ¨;
@{$ref->[$x][$y]}{$key1, $key2, @morekeys} āĻŽā§āĻā§āĻ¨;
$ref->[$x][$y][$index] āĻŽā§āĻā§āĻ¨;
@{$ref->[$x][$y] [$index1, $index2, @moreindices] āĻŽā§āĻā§āĻ¨;
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĄāĻžāĻ
"āĻĄāĻžāĻ" āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ "eval" āĻāĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻāĻŋ $@ āĻāĻŦāĻ āĻ āĻ¸ā§āĻāĻžāĻĢ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
"eval" āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻˇ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻšāĻ˛ā§ āĻ¸āĻŦāĻžāĻ° āĻŦāĻžāĻāĻ°ā§
"eval" āĻā§āĻ˛āĻŋāĻā§ āĻāĻŦāĻĻā§āĻ§ āĻāĻ°ā§, āĻ¤āĻžāĻ°āĻĒāĻ° āĻ§āĻ°āĻž āĻ¨āĻž āĻĒāĻĄāĻŧāĻž āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ LIST āĻā§ "STDERR" āĻ¤ā§ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§
āĻāĻāĻāĻŋ āĻ -āĻļā§āĻ¨ā§āĻ¯ āĻŽāĻžāĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻā§āĻĄ āĻ¸āĻš āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨, āĻĻā§āĻā§āĻ¨
"āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨"
āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
die "āĻ¸ā§āĻĒā§āĻ˛ āĻāĻ°āĻ¤ā§ āĻ¸āĻŋāĻĄāĻŋ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž: $!\n" āĻ¯āĻĻāĻŋ āĻ¨āĻž chdir '/usr/spool/news';
chdir '/usr/spool/news' āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻ¸ā§āĻĒā§āĻ˛ āĻāĻ°āĻ¤ā§ āĻ¸āĻŋāĻĄāĻŋ āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž: $!\n"
āĻ¯āĻĻāĻŋ LIST āĻāĻ° āĻļā§āĻˇ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ˛āĻžāĻāĻ¨ā§ āĻļā§āĻˇ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ˛āĻžāĻāĻ¨ āĻ¨āĻŽā§āĻŦāĻ°
āĻāĻŦāĻ āĻāĻ¨āĻĒā§āĻ āĻ˛āĻžāĻāĻ¨ āĻ¨āĻŽā§āĻŦāĻ° (āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§) āĻŽā§āĻĻā§āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ˛āĻžāĻāĻ¨ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§
"āĻāĻ¨āĻĒā§āĻ āĻ˛āĻžāĻāĻ¨ āĻ¨āĻŽā§āĻŦāĻ°" (āĻāĻāĻžāĻĄāĻŧāĻžāĻ "āĻāĻŖā§āĻĄ" āĻ¨āĻžāĻŽā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤) āĻ¯ā§ āĻā§āĻ¨ā§ āĻ§āĻžāĻ°āĻŖāĻžāĻ° āĻ¸āĻžāĻĒā§āĻā§āĻˇā§
"āĻ˛āĻžāĻāĻ¨" āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻŦā§, āĻāĻŦāĻ āĻŦāĻŋāĻļā§āĻˇ āĻšāĻŋāĻ¸āĻžāĻŦā§āĻ āĻāĻĒāĻ˛āĻŦā§āĻ§
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ $.. āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§ "$/" āĻāĻŦāĻ "$" āĻĻā§āĻā§āĻ¨āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§
āĻāĻā§āĻāĻŋāĻ¤: āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻāĻĒāĻ¨āĻžāĻ° āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ¯āĻŧ ", stop" āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻāĻāĻŋāĻā§ āĻāĻ°āĻ āĻāĻžāĻ˛ āĻāĻ°ā§ āĻ¤ā§āĻ˛āĻŦā§ā§ˇ
āĻ¯āĻāĻ¨ "āĻāĻ foo āĻ˛āĻžāĻāĻ¨ 123" āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻāĻ¨ āĻ¸ā§āĻ¨ā§āĻ¸ āĻāĻ°ā§āĨ¤ āĻ§āĻ°ā§āĻ¨ āĻāĻĒāĻ¨āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻžāĻ˛āĻžāĻā§āĻā§āĻ¨
"āĻāĻžāĻ¨āĻžāĻ¸ā§āĻ¤āĻž"āĨ¤
āĻĄāĻžāĻ "/etc/games āĻāĻžāĻ˛ āĻ¨āĻ¯āĻŧ";
die "/etc/games āĻāĻžāĻ˛ āĻ¨āĻž, āĻŦāĻ¨ā§āĻ§";
āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨, āĻ¯āĻĨāĻžāĻā§āĻ°āĻŽā§
/etc/games āĻā§āĻ¯āĻžāĻ¨āĻžāĻ¸ā§āĻ¤āĻž āĻ˛āĻžāĻāĻ¨ 123 āĻ āĻāĻžāĻ˛ āĻ¨āĻ¯āĻŧāĨ¤
/etc/games āĻāĻžāĻ˛ āĻ¨āĻž, āĻā§āĻ¯āĻžāĻ¨āĻžāĻ¸ā§āĻ¤āĻž āĻ˛āĻžāĻāĻ¨ 123 āĻ āĻĨāĻžāĻŽā§āĨ¤
āĻ¯āĻĻāĻŋ āĻāĻāĻāĻĒā§āĻ āĻāĻžāĻ˛āĻŋ āĻĨāĻžāĻā§ āĻāĻŦāĻ $@ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨ āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻĨā§āĻā§
eval) "\t...āĻĒā§āĻ°āĻāĻžāĻ°āĻŋāĻ¤" āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§ āĻ¸ā§āĻ āĻŽāĻžāĻ¨āĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻ āĻāĻ¨ā§āĻ¯ āĻĻāĻ°āĻāĻžāĻ°ā§
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻĒā§āĻ°āĻāĻžāĻ°:
eval { ... };
āĻŽā§āĻ¤ā§āĻ¯ā§ āĻ¨āĻž āĻšāĻ˛ā§ $@ =~ /āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ/;
āĻ¯āĻĻāĻŋ āĻāĻāĻāĻĒā§āĻ āĻāĻžāĻ˛āĻŋ āĻĨāĻžāĻā§ āĻāĻŦāĻ $@ āĻāĻāĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĨāĻžāĻā§ āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ "āĻĒā§āĻ°āĻāĻžāĻ°" āĻāĻā§
āĻĒāĻĻā§āĻ§āĻ¤āĻŋ, āĻ¸ā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋāĻā§ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻāĻŦāĻ āĻ˛āĻžāĻāĻ¨ āĻ¨āĻŽā§āĻŦāĻ° āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻ¸āĻš āĻāĻ˛ ââāĻāĻ°āĻž āĻšāĻŦā§āĨ¤
āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ $@ āĻ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§; āĻ¯ā§āĻŽāĻ¨, āĻ¯ā§āĻ¨ "$@ = eval {
$@->āĻĒā§āĻ°āĻāĻžāĻ° (__āĻĢāĻžāĻāĻ˛__, __āĻ˛āĻžāĻāĻ¨__) };" āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛āĨ¤
āĻ¯āĻĻāĻŋ $@ āĻāĻžāĻ˛āĻŋ āĻšāĻ¯āĻŧ āĻ¤āĻžāĻšāĻ˛ā§ "Died" āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻ¯āĻĻāĻŋ āĻā§āĻ¨ā§ āĻ§āĻ°āĻž āĻ¨āĻž āĻĒāĻĄāĻŧāĻž āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻĻā§āĻāĻžāĻˇā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ° āĻĢāĻ˛ā§, āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻā§āĻĄ āĻĨā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ
$ āĻāĻ° āĻŽāĻžāĻ¨! āĻāĻŦāĻ $? āĻāĻ āĻ¸āĻŋāĻāĻĄā§āĻā§āĻĄ āĻĻāĻŋāĻ¯āĻŧā§:
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ $! āĻ¯āĻĻāĻŋ $!; # āĻā§āĻ˛
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ $? >> 8 āĻ¯āĻĻāĻŋ $? >> 8; # āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ 255; # āĻļā§āĻˇ āĻ āĻŦāĻ˛āĻŽā§āĻŦāĻ¨
āĻ āĻāĻŋāĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻšāĻ˛ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻāĻžāĻ°āĻŖ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¯āĻ¤āĻāĻž āĻ¸āĻŽā§āĻāĻŦ āĻ¤āĻĨā§āĻ¯ āĻā§āĻĒā§ āĻ°āĻžāĻāĻž
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻā§āĻĄā§āĻ° āĻ¸ā§āĻŽāĻŋāĻ¤ āĻ¸ā§āĻĨāĻžāĻ¨āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, $ āĻšāĻŋāĻ¸āĻžāĻŦā§! C āĻāĻ° "errno" āĻāĻ° āĻŽāĻžāĻ¨
āĻ¯ā§ āĻā§āĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸ā§āĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻā§āĻĄā§āĻ° āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ
āĻĻā§āĻŦāĻžāĻ°āĻž "āĻŽā§āĻ¤ā§āĻ¯ā§" āĻ -āĻāĻŦāĻŋāĻˇā§āĻ¯āĻĻā§āĻŦāĻžāĻŖā§āĻ¯ā§āĻā§āĻ¯ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¤āĻžāĻ āĻāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ, āĻ -
āĻļā§āĻ¨ā§āĻ¯āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻš "āĻĄāĻžāĻ" āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻž āĻĒāĻĄāĻŧā§ āĻĨāĻžāĻā§
"eval", $@ āĻ¸ā§āĻ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§āĨ¤ āĻāĻāĻŋ āĻāĻ°āĻ āĻŦāĻŋāĻ¸ā§āĻ¤ā§āĻ¤ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ
āĻ āĻŦāĻā§āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¯āĻž āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¸ā§āĻŦā§āĻā§āĻāĻžāĻāĻžāĻ°ā§ āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻŦāĻāĻžāĻ¯āĻŧ āĻ°āĻžāĻā§āĨ¤ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ¸ā§āĻāĻŋāĻŽ āĻšāĻ˛
āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻ¸āĻā§āĻā§ $@ āĻāĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŽāĻžāĻ¨ āĻŽā§āĻ˛āĻžāĻ¨ā§ āĻĒāĻāĻ¨ā§āĻĻāĻ¨ā§āĻ¯āĻŧ
āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻāĻžāĻ°āĻŖ $@ āĻāĻāĻāĻŋ āĻā§āĻ˛ā§āĻŦāĻžāĻ˛ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻŦāĻ āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ "eval" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨, āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ āĻŦāĻ˛āĻŽā§āĻŦāĻ¨ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§āĻāĻŋ āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖ āĻāĻ°āĻ˛ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ¨āĻž āĻšāĻ¯āĻŧ
āĻā§āĻ˛ā§āĻŦāĻžāĻ˛ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸āĨ¤ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ¸āĻšāĻ
āĻā§āĻ¨ā§ āĻāĻžāĻ°āĻ¸āĻžāĻāĻŋāĻ° āĻāĻā§āĨ¤ āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
Scalar::Util "blessed" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
eval { ... ; die Some::Module::Exception->new( FOO => "bar" ) };
āĻ¯āĻĻāĻŋ (āĻāĻŽāĻžāĻ° $ev_err = $@) {
āĻ¯āĻĻāĻŋ (āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻāĻĒā§āĻ°āĻžāĻĒā§āĻ¤($ev_err)
&& $ev_err->isa("āĻāĻŋāĻā§::āĻŽāĻĄāĻŋāĻāĻ˛::āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ")) {
# āĻāĻŋāĻā§ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛::āĻŽāĻĄāĻŋāĻāĻ˛::āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ
}
āĻ āĻ¨ā§āĻ¯ {
# āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽāĻā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°ā§āĻ¨
}
}
āĻāĻžāĻ°āĻŖ āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻā§ āĻ§āĻ°āĻž āĻ¨āĻž āĻĒāĻĄāĻŧāĻž āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻā§āĻ˛āĻŋāĻā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻĢāĻžāĻ āĻāĻ°ā§, āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻāĻ°āĻŦā§āĻ¨
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻāĻĒāĻ° stringification āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻāĻāĻžāĻ°āĻ˛ā§āĻĄ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨āĨ¤ āĻāĻ¨ā§āĻ¯ āĻāĻāĻžāĻ°āĻ˛ā§āĻĄ āĻĻā§āĻā§āĻ¨
āĻ¯ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤āĨ¤
āĻāĻĒāĻ¨āĻŋ "āĻĄāĻžāĻ" āĻāĻ° āĻāĻžāĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻ āĻŋāĻ āĻāĻā§ āĻāĻāĻāĻŋ āĻāĻ˛āĻŦā§āĻ¯āĻžāĻ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
$SIG{__DIE__} āĻšā§āĻ āĻ¸ā§āĻ āĻāĻ°āĻā§āĨ¤ āĻāĻ°āĻ° āĻā§āĻā§āĻ¸āĻ āĻ¸āĻš āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°āĻā§ āĻĄāĻžāĻāĻž āĻšāĻ¯āĻŧ
āĻāĻŦāĻ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻŽāĻ¨ā§ āĻšāĻ¯āĻŧ, āĻāĻŦāĻžāĻ° "āĻĄāĻžāĻ" āĻāĻ˛ āĻāĻ°ā§āĨ¤ "%SIG" āĻĻā§āĻā§āĻ¨
%SIG āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻ¸ā§āĻ āĻāĻ°āĻžāĻ° āĻŦāĻŋāĻļāĻĻ āĻŦāĻŋāĻŦāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§ āĻāĻŦāĻ āĻāĻŋāĻā§ āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ "āĻāĻāĻžāĻ˛ āĻŦā§āĻ˛āĻ"āĨ¤
āĻ¯āĻĻāĻŋāĻ āĻāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻ āĻŋāĻ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻāĻāĻŋ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻ¤āĻž āĻ¨āĻ¯āĻŧ: $SIG{__DIE__} āĻšā§āĻāĻāĻŋāĻā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻāĻŽāĻ¨āĻāĻŋ āĻāĻŋāĻ¤āĻ°ā§āĻ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§ˇ eval()ed
āĻŦā§āĻ˛āĻ/āĻ¸ā§āĻā§āĻ°āĻŋāĻ! āĻ¯āĻĻāĻŋ āĻā§āĻ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§ āĻšā§āĻ āĻāĻŋāĻā§ āĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¯āĻŧ, āĻ°āĻžāĻā§āĻ¨
āĻŽā§āĻ¤ā§āĻ¯ā§ @_ āĻ¯āĻĻāĻŋ $^S;
āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ˛āĻžāĻāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ (āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§ "$^S" āĻĻā§āĻā§āĻ¨)āĨ¤ āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻĒā§āĻ°āĻāĻžāĻ° āĻāĻ°ā§
āĻĻā§āĻ°āĻ¤ā§āĻŦā§ āĻ āĻĻā§āĻā§āĻ¤ āĻ ā§āĻ¯āĻžāĻāĻļāĻ¨, āĻāĻ āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ°āĻāĻ¨ā§āĻā§āĻāĻāĻŋāĻ āĻāĻāĻ°āĻŖ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻ āĻŋāĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŽā§āĻā§āĻ¤āĻŋ.
āĻāĻ°ā§ āĻĻā§āĻā§āĻ¨ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ (), āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨(), āĻāĻŦāĻ āĻāĻžāĻ°ā§āĻĒ āĻŽāĻĄāĻŋāĻāĻ˛āĨ¤
āĻŦā§āĻ˛āĻ āĻāĻ°ā§āĻ¨
āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻ¨āĻž. āĻāĻ° āĻā§āĻ°āĻŽāĻžāĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻļā§āĻˇ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻŦā§āĻ˛āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻāĻŽāĻžāĻ¨ā§āĻĄāĨ¤ āĻ¯āĻāĻ¨ "āĻ¯āĻāĻ¨" āĻŦāĻž "āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤" āĻ˛ā§āĻĒ āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ,
āĻ˛ā§āĻĒ āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻāĻā§ āĻāĻāĻŦāĻžāĻ° BLOCK āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°ā§āĨ¤ (āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŦāĻŋāĻŦā§āĻ¤āĻŋāĻ¤ā§
āĻ˛ā§āĻĒ āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽā§ āĻļāĻ°ā§āĻ¤āĻ¸āĻžāĻĒā§āĻā§āĻˇ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĨ¤)
"Do BLOCK" āĻāĻ°ā§ āĻ¨āĻž āĻāĻāĻāĻŋ āĻ˛ā§āĻĒ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŖāĻ¨āĻž, āĻ¤āĻžāĻ āĻ˛ā§āĻĒ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻŦāĻŋāĻŦā§āĻ¤āĻŋ "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§", "āĻļā§āĻˇ", āĻŦāĻž
āĻŦā§āĻ˛āĻāĻāĻŋ āĻā§āĻĄāĻŧā§ āĻ¯ā§āĻ¤ā§ āĻŦāĻž āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻ¤ā§ "āĻ°āĻŋāĻĄā§" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻžāĨ¤ āĻŦāĻŋāĻāĻ˛ā§āĻĒā§āĻ° āĻāĻ¨ā§āĻ¯ perlsyn āĻĻā§āĻā§āĻ¨
āĻā§āĻļāĻ˛āĨ¤
EXPR āĻāĻ°āĻŦā§āĻ¨
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻšāĻŋāĻ¸āĻžāĻŦā§ EXPR āĻāĻ° āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻŦāĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§āĻā§āĻ˛āĻŋāĻā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ˛āĻžāĻ¯āĻŧ
āĻ˛āĻŋāĻĒāĻŋ.
'stat.pl' āĻāĻ°ā§āĻ¨;
āĻ āĻ¨ā§āĻāĻāĻž āĻŽāĻ¤
eval `cat stat.pl`;
āĻŦā§āĻ¯āĻ¤ā§āĻ¤ āĻāĻāĻŋ āĻāĻ°āĻ āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤, āĻā§āĻ¨āĻ āĻŦāĻžāĻšā§āĻ¯āĻŋāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻžāĻ˛āĻžāĻ¯āĻŧ āĻ¨āĻž, āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§āĻ° āĻā§āĻ°ā§āĻ¯āĻžāĻ āĻ°āĻžāĻā§
āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ, @INC āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ %INC āĻāĻĒāĻĄā§āĻ āĻāĻ°ā§ āĻ¯āĻĻāĻŋ
āĻĢāĻžāĻāĻ˛ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§ "@INC" āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§ "%INC" āĻĻā§āĻā§āĻ¨āĨ¤ āĻāĻāĻž
āĻāĻāĻžāĻĄāĻŧāĻžāĻ "do FILENAME" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻā§āĻĄā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻĻā§āĻāĻž āĻ¯āĻžāĻ¯āĻŧ
āĻĒāĻ°āĻŋāĻŦā§āĻˇā§āĻāĻŋāĻ¤ āĻ¸ā§āĻ¯ā§āĻ; "eval STRING" āĻāĻ°ā§āĨ¤ āĻāĻāĻž āĻāĻāĻ, āĻ¯āĻžāĻāĻšā§āĻ, āĻ¯ā§ āĻāĻāĻŋ reparse āĻ¨āĻž
āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻ¯āĻāĻ¨ āĻāĻĒāĻ¨āĻŋ āĻāĻ˛ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻ˛ā§āĻĒā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¨āĻžāĨ¤
āĻ¯āĻĻāĻŋ "do" āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĒāĻĄāĻŧāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻ¨āĻž āĻĒāĻžāĻ°ā§ āĻ¤āĻŦā§ āĻāĻāĻŋ "undef" āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸ā§āĻ āĻāĻ°ā§
$@ āĻ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĨ¤ āĻ¯āĻĻāĻŋ "do" āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĒāĻĄāĻŧāĻ¤ā§ āĻ¨āĻž āĻĒāĻžāĻ°ā§ āĻ¤āĻŦā§ āĻāĻāĻŋ undef āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ $ āĻ¸ā§āĻ āĻāĻ°ā§! āĻĨā§āĻā§
āĻ¤ā§āĻ°ā§āĻāĻŋ. āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻĒā§āĻ°āĻĨāĻŽā§ $@ āĻā§āĻ āĻāĻ°ā§āĻ¨, āĻāĻžāĻ°āĻŖ āĻ¸āĻāĻāĻ˛āĻ¨ āĻāĻŽāĻ¨āĻāĻžāĻŦā§ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻž $! āĻ¸ā§āĻ āĻāĻ°ā§āĨ¤
āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻž āĻšāĻ˛ā§, "do" āĻļā§āĻˇ āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ā§āĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨
"āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻāĻŦāĻ "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨" āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤āĻŋ āĻāĻ°āĻ āĻāĻžāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧ,
āĻ¯āĻž āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§ āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻā§āĻ¨ā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻĨāĻžāĻā§ āĻ¤āĻŦā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻĢāĻžāĻāĻ˛ āĻĒāĻĄāĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ "do" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛ āĻ¤ā§āĻ°ā§āĻāĻŋ
āĻā§āĻāĻŋāĻ āĻāĻ āĻāĻžāĻŦā§ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§:
# āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻĒāĻĄāĻŧā§āĻ¨: āĻĒā§āĻ°āĻĨāĻŽā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ, āĻ¤āĻžāĻ°āĻĒāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§
$file ("/share/prog/defaults.rc", āĻāĻ° āĻāĻ¨ā§āĻ¯
"$ENV{HOME}/.someprogrc")
{
āĻ¯āĻĻāĻŋ āĻ¨āĻž ($return = do $file) {
āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ "$file āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ: $@" āĻ¯āĻĻāĻŋ $@;
āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ "$file:$ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋāĻ¨āĻŋ!" $return āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ˛ā§;
āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ "$file āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻ¯āĻžāĻŦā§ āĻ¨āĻž" āĻ¯āĻĻāĻŋ āĻ¨āĻž $return;
}
}
āĻĄāĻžāĻŽā§āĻĒ āĻ˛ā§āĻŦā§āĻ˛
āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ° āĻĄāĻžāĻŽā§āĻĒ
āĻŽāĻ¨āĻŽāĻ°āĻž āĻāĻžāĻŦ
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻāĻāĻŋ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻā§āĻ° āĻĄāĻžāĻŽā§āĻĒ āĻāĻžāĻ°āĻŖ. āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĻā§āĻā§āĻ¨ -u āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻāĻ¨ āĻ¸ā§āĻāĻ āĻāĻ¨
perlrun, āĻ¯āĻž āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻāĻ°ā§āĨ¤ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻāĻāĻžāĻŦā§ āĻāĻāĻŋ āĻ¯āĻžāĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻ¨āĻĄāĻžāĻŽā§āĻĒ
āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ (āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ) āĻĨāĻžāĻāĻžāĻ° āĻĒāĻ° āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻ° āĻĄāĻžāĻŽā§āĻĒāĻā§ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻā§āĻŦāĻ˛ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋāĻ¤ā§ āĻĒāĻ°āĻŋāĻŖāĻ¤ āĻāĻ°āĻ¤ā§
āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻļā§āĻ°ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻ¨āĨ¤ āĻ¯āĻāĻ¨ āĻ¨āĻ¤ā§āĻ¨ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ
āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ˛ā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ "goto LABEL" āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻļā§āĻ°ā§ āĻšāĻŦā§ (āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻŋāĻ§āĻŋāĻ¨āĻŋāĻˇā§āĻ§ āĻ¸āĻš
"āĻā§āĻā§" āĻā§āĻā§)āĨ¤ āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻŦāĻ°ā§āĻ¤ā§ āĻā§āĻ° āĻĄāĻžāĻŽā§āĻĒ āĻ¸āĻš āĻāĻāĻāĻŋ āĻā§āĻā§ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻŦā§āĻ¨ āĻāĻŦāĻ
āĻĒā§āĻ¨āĻ°ā§āĻāĻ¨ā§āĻŽ āĻ¯āĻĻāĻŋ "LABEL" āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻĒāĻ°ā§āĻ° āĻĨā§āĻā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°āĻŽā§āĻ āĻāĻ°ā§āĨ¤ āĻ¨āĻ°ā§āĻĻāĻŽāĻž
EXPR" āĻĢāĻ°ā§āĻŽ, āĻĒāĻžāĻ°ā§āĻ˛ 5.18.0 āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ āĻāĻĒāĻ˛āĻŦā§āĻ§, āĻāĻāĻāĻŋ āĻ¨āĻžāĻŽ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ
āĻ¸āĻŽāĻ¯āĻŧ, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ "āĻĄāĻžāĻŽā§āĻĒ LABEL" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ āĻāĻŋāĻ¨ā§āĻ¨āĨ¤
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĻŽā§āĻ˛āĻ: āĻā§āĻ¨ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĄāĻžāĻŽā§āĻĒ āĻšāĻŦā§ āĻ¨āĻž āĻ¯āĻāĻ¨ āĻāĻ°ā§ āĻā§āĻ˛āĻž
āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻĒā§āĻ¨āĻ°ā§āĻāĻ¨ā§āĻŽ āĻšāĻ¯āĻŧ, āĻĒāĻžāĻ°ā§āĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻ° āĻ¸āĻžāĻĨā§āĨ¤
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻāĻāĻ¨ āĻŽā§āĻ˛āĻ¤ āĻ āĻĒā§āĻ°āĻāĻ˛āĻŋāĻ¤, āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻā§āĻ° āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻž āĻā§āĻŦ āĻāĻ āĻŋāĻ¨
āĻāĻāĻāĻŋ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻā§āĻŦāĻ˛ āĻ āĻĢāĻžāĻāĻ˛ āĻāĻ°ā§āĻ¨āĨ¤ āĻ¸ā§āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻāĻ¨ āĻāĻāĻŋāĻā§ "CORE::dump()" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĄāĻžāĻāĻ¤ā§ āĻšāĻŦā§, āĻ¯āĻĻāĻŋ
āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻāĻžāĻāĻĒā§āĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§ āĻ¸āĻ¤āĻ°ā§āĻ āĻšāĻ¤ā§ āĻāĻžāĻ¨ āĻ¨āĻžāĨ¤
āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¨āĻžāĻŽāĻ§āĻžāĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, āĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨āĻŽā§āĻ¨ā§āĻā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻšāĻž āĻ
āĻā§āĻšāĻžāĻ°āĻž-āĻŽāĻ¤-āĻāĻāĻāĻŋ-āĻĢāĻžāĻāĻļāĻ¨ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻĨā§āĻā§ āĻŽā§āĻā§āĻ¤, āĻ¤āĻžāĻ "āĻĄāĻžāĻŽā§āĻĒ ("foo")āĨ¤"bar"" "āĻŦāĻžāĻ°" āĻ¸ā§āĻˇā§āĻāĻŋ āĻāĻ°āĻŦā§
"āĻĄāĻžāĻŽā§āĻĒ" āĻāĻ°āĻžāĻ° āĻ¯ā§āĻā§āĻ¤āĻŋāĻ° āĻ āĻāĻļ āĻšāĻ¤ā§āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻĄāĻžāĻŽā§āĻĒ"āĨ¤
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ EXPR
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻāĻ˛ āĻāĻ°āĻž āĻšāĻ˛ā§, āĻā§ āĻ¸āĻŽāĻ¨ā§āĻŦāĻŋāĻ¤ āĻāĻāĻāĻŋ 2-āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻŽāĻžāĻ¨āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ 5.12 āĻāĻŦāĻ āĻĒāĻ°ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ°, āĻāĻāĻŋāĻ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻāĻ āĻāĻŦāĻ āĻŽāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¨ āĻ¯āĻžāĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻ° āĻāĻĒāĻ°; āĻĒā§āĻ°āĻžāĻ¨ā§ āĻĒāĻžāĻ°ā§āĻ˛āĻ¸ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§āĨ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻŦāĻ˛āĻž āĻšāĻ˛ā§,
āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻā§ (āĻŽāĻžāĻ¨ āĻ¨āĻ¯āĻŧ), āĻŦāĻž āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸ā§āĻā§ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻšā§āĻ¯āĻžāĻļ āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻāĻāĻāĻŋ āĻĻā§āĻļā§āĻ¯āĻ¤ āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻā§āĻ°āĻŽā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ. āĻĒā§āĻ°āĻā§āĻ¤ āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻā§āĻ°āĻŽ āĻšāĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻšā§āĻ¯āĻžāĻļ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ; āĻĻā§āĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻāĻ āĻ¸āĻŋāĻ°āĻŋāĻā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻŋāĻ¨ā§āĻ¨ āĻā§āĻ°āĻŽā§āĨ¤ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¯ā§āĻā§āĻ¨ā§ āĻ¸āĻ¨ā§āĻ¨āĻŋāĻŦā§āĻļ āĻā§āĻ°āĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§,
āĻ¯ā§ āĻā§āĻ¨ā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻŽāĻ¤ā§āĻ, āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻāĻ¤āĻŽ āĻā§āĻāĻŋ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻžāĻĄāĻŧāĻž
āĻ āĻĨāĻŦāĻž āĻ āĻ°ā§āĻĄāĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¨āĻž āĻāĻ°ā§āĻ "āĻā§" āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻšā§āĻ¯āĻžāĻļ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĻā§āĻ°ā§āĻ
āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻāĻĒāĻ¨āĻŋ āĻŦāĻžāĻ°āĻŦāĻžāĻ° āĻāĻāĻ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§ "āĻā§", "āĻŽāĻžāĻ¨" āĻāĻŦāĻ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻā§ āĻ āĻĒāĻ°ā§āĻ° āĻŽāĻ¤ āĻ āĻ°ā§āĻĄāĻžāĻ°āĨ¤ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlsec āĻ "āĻ ā§āĻ¯āĻžāĻ˛āĻā§āĻ°āĻŋāĻĻāĻŽāĻŋāĻ āĻāĻāĻŋāĻ˛āĻ¤āĻž āĻāĻā§āĻ°āĻŽāĻŖ" āĻĻā§āĻā§āĻ¨
āĻā§āĻ¨ āĻšā§āĻ¯āĻžāĻļ āĻ āĻ°ā§āĻĄāĻžāĻ° āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĻžāĻāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ. āĻāĻāĻžāĻ¨ā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻāĻŋāĻā§āĻ˛āĻŋ āĻāĻžāĻĄāĻŧāĻžāĻ āĻ¸āĻ āĻŋāĻ
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻšā§āĻ¯āĻžāĻļ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽā§āĻ° āĻŦāĻŋāĻŦāĻ°āĻŖ āĻāĻŦāĻ āĻšā§āĻ¯āĻžāĻļ āĻā§āĻ°āĻžāĻāĻžāĻ°ā§āĻ¸āĻžāĻ˛ āĻ āĻ°ā§āĻĄāĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¸āĻžāĻĒā§āĻā§āĻˇā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ¯ā§āĻā§āĻ¨ā§ āĻ°āĻŋāĻ˛āĻŋāĻāĨ¤
"āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻšā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§ āĻĨā§āĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§, "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ"-āĻ¤ā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻ˛
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻŦāĻ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ "undef" āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§; āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻ˛
āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻ¯ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°āĻŽā§āĻ. āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻāĻā§
āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻāĻžāĻ°ā§, "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ", "āĻā§" āĻāĻŦāĻ "āĻŽāĻžāĻ¨" āĻĻā§āĻŦāĻžāĻ°āĻž āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻāĻžāĻ°ā§ āĻĒāĻ°ā§āĻā§āĻˇāĻāĻžāĻŦā§ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻ¯āĻāĻ¨ "āĻĒā§āĻ°āĻ¤ā§āĻ¯ā§āĻ" āĻ āĻŋāĻ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻļā§āĻˇ āĻšāĻ¯āĻŧā§ āĻā§āĻā§; āĻāĻāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻšā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§ "āĻā§" āĻŦāĻž "āĻŽāĻžāĻ¨" āĻāĻ˛ āĻāĻ°āĻžāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻ¯ā§āĻ āĻŦāĻž āĻŽā§āĻā§ āĻĢā§āĻ˛ā§āĻ¨
āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻāĻāĻŋāĻ° āĻāĻĒāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° āĻĒā§āĻ°āĻāĻžāĻŦ āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ; āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻ¨ā§āĻā§āĻ°āĻŋāĻā§āĻ˛āĻŋ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻž āĻŦāĻž āĻ¸āĻĻā§āĻļ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ -- āĻ¤āĻžāĻ āĻāĻāĻŋ āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻžā§ˇ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ: āĻāĻāĻž
"each()" āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽā§āĻĒā§āĻ°āĻ¤āĻŋ āĻĢāĻŋāĻ°ā§ āĻāĻ¸āĻž āĻāĻāĻā§āĻŽāĻāĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ, āĻ¤āĻžāĻ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤āĻā§āĻ˛āĻŋ
āĻā§āĻĄ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§:
āĻ¯āĻāĻ¨ (($āĻā§, $āĻŽāĻžāĻ¨) = āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ %āĻšā§āĻ¯āĻžāĻļ) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $key, "\n";
$hash{$key} āĻŽā§āĻā§āĻ¨; # āĻāĻāĻŋ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ
}
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻšā§āĻ¯āĻžāĻļ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻžāĻāĻ§āĻž āĻšā§āĻ¯āĻžāĻļāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻāĻŋāĻ¨ā§āĻ¨ āĻā§āĻ°āĻŽ āĻāĻāĻ°āĻŖ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻ āĻŽāĻ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻ°āĻŋāĻŦā§āĻļ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻāĻ printenv(1) āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻāĻŋāĻ¨ā§āĻ¨
āĻ āĻ°ā§āĻĄāĻžāĻ°:
āĻ¯āĻāĻ¨ (($āĻā§,$āĻŽāĻžāĻ¨) = āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ %ENV) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "$key=$value\n";
}
āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° EXPR āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻ āĻļā§āĻ āĻšā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§āĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ dereferenced āĻāĻ°āĻž āĻšāĻŦā§. āĻāĻ
"āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻāĻ° āĻĻāĻŋāĻāĻāĻŋ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻŦāĻ˛ā§ āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻ āĻŋāĻ āĻāĻāĻ°āĻŖ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĨ¤
āĻ¯āĻāĻ¨ (($key,$value) = āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ $hashref) { ... }
āĻĒāĻžāĻ°ā§āĻ˛ 5.18 āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ "āĻ¯āĻāĻ¨" āĻ˛ā§āĻĒā§ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ¯āĻž $_ āĻāĻžāĻ˛ā§ āĻāĻ°āĻŦā§
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ
āĻ¯āĻāĻ¨ (āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ %ENV) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "$_=$ENV{$_}\n";
}
āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ¯āĻžāĻ°āĻž āĻāĻ° āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻžāĻā§āĻā§
āĻ°āĻšāĻ¸ā§āĻ¯āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻš āĻĒāĻžāĻ°ā§āĻ˛, āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ°āĻžāĻā§āĻ¨
āĻ¸āĻāĻā§āĻ¤ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻā§āĻŦāĻ˛ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻāĻŋāĻ¨ā§āĻā§āĻā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻ¸-āĻ:
5.012 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻā§/āĻŽāĻžāĻ¨/āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§ āĻāĻžāĻ āĻāĻ°ā§
5.014 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻā§/āĻŽāĻžāĻ¨/ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻžāĻ (āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ)
5.018 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ˛āĻžāĻāĻžāĻ˛ā§āĻ¨ āĻāĻāĻžāĻā§ $_ āĻā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§
āĻāĻāĻžāĻĄāĻŧāĻžāĻ "āĻā§", "āĻŽāĻžāĻ¨", āĻāĻŦāĻ "āĻ¸āĻ°ā§āĻ" āĻĻā§āĻā§āĻ¨āĨ¤
eof FILEHANDLE
eof ()
eof 1 āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻĻā§āĻ¯āĻŧ āĻ¯āĻĻāĻŋ FILEHANDLE āĻāĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻĒāĻĄāĻŧāĻž āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°āĻŦā§ or āĻ¯āĻĻāĻŋ FILEHANDLE āĻšāĻ¯āĻŧ
āĻā§āĻ˛āĻž āĻ¨āĻž FILEHANDLE āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ¤ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĻā§āĻ¯āĻŧāĨ¤
(āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻāĻ¸āĻ˛ā§ āĻāĻāĻāĻŋ āĻ āĻā§āĻˇāĻ° āĻĒāĻĄāĻŧā§ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° "ungetc" āĻāĻ°ā§, āĻ¤āĻžāĻ āĻ¨āĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻāĻžāĻ°ā§āĻā§āĻāĻŋāĻ āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§ āĻĻāĻ°āĻāĻžāĻ°ā§āĨ¤) āĻāĻāĻāĻŋ āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨āĻžāĻ˛ āĻĢāĻžāĻāĻ˛ āĻĨā§āĻā§ āĻĒāĻĄāĻŧāĻŦā§āĻ¨ āĻ¨āĻž (āĻŦāĻž āĻāĻ˛ āĻāĻ°ā§āĻ¨
"eof(FILEHANDLE)" āĻāĻāĻŋāĻ¤ā§) āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇ-āĻ āĻĒā§āĻāĻā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§āĨ¤ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ§āĻ°āĻ¨ āĻ¯ā§āĻŽāĻ¨ āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨āĻžāĻ˛
āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻāĻ°ā§āĻ¨ āĻ¤āĻžāĻšāĻ˛ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇ āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻšāĻžāĻ°āĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻāĻāĻŋ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻžāĻĄāĻŧāĻž āĻāĻāĻāĻŋ "eof" āĻļā§āĻˇ āĻĒāĻĄāĻŧāĻž āĻĢāĻžāĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻāĻžāĻ˛āĻŋ āĻĻāĻŋāĻ¯āĻŧā§ "eof()" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻā§āĻā§
āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻāĻŋāĻ¨ā§āĻ¨āĨ¤ āĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻĨā§āĻā§ āĻāĻ āĻŋāĻ¤ āĻāĻĻā§āĻŽ āĻĢāĻžāĻāĻ˛ āĻŦā§āĻāĻžāĻ¯āĻŧ
āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻāĻ¨ā§ āĻāĻŦāĻ "<>" āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¯ā§āĻšā§āĻ¤ā§ "<>" āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻ¨āĻ¯āĻŧ
āĻā§āĻ˛āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§, "<>" āĻāĻ° āĻāĻā§ āĻāĻāĻāĻŋ "eof()" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻŦā§
@ARGV āĻāĻ¨āĻĒā§āĻ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻāĻāĻāĻāĻžāĻŦā§, āĻāĻāĻāĻŋ "eof()" āĻāĻ° āĻĒāĻ°ā§
"<>" āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇā§ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĻā§ āĻ§āĻ°ā§ āĻ¨āĻŋāĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻāĻ°ā§āĻāĻāĻŋ @ARGV āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻā§āĻ¨, āĻāĻŦāĻ
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ @ARGV āĻ¸ā§āĻ āĻ¨āĻž āĻāĻ°ā§ āĻĨāĻžāĻā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ "STDIN" āĻĨā§āĻā§ āĻāĻ¨āĻĒā§āĻ āĻĒāĻĄāĻŧāĻŦā§; āĻĒāĻžāĻ°ā§āĻ˛ā§āĻĒā§ "I/O āĻ āĻĒāĻžāĻ°ā§āĻāĻ°" āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻāĻāĻŋ "while (<>)" āĻ˛ā§āĻĒā§, "eof" āĻŦāĻž "eof(ARGV)" āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋāĻ° āĻļā§āĻˇ āĻļāĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĢāĻžāĻāĻ˛, āĻ¯ā§āĻāĻžāĻ¨ā§ "eof()" āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻļā§āĻˇ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇ āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻŦā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
# āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻ¨āĻĒā§āĻ āĻĢāĻžāĻāĻ˛ā§ āĻ˛āĻžāĻāĻ¨ āĻ¨āĻŽā§āĻŦāĻ° āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§āĻ¨
āĻ¯āĻāĻ¨ (<>) {
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¯āĻĻāĻŋ /^\s*#/; # āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "$.\t$_";
} āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨ {
ARGV āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§āĻ¨ āĻ¯āĻĻāĻŋ eof; # āĻāĻāĻĢ() āĻ¨āĻ¯āĻŧ!
}
# āĻļā§āĻˇ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻ āĻŋāĻ āĻāĻā§ āĻĄā§āĻ¯āĻžāĻļ āĻ¸āĻ¨ā§āĻ¨āĻŋāĻŦā§āĻļ āĻāĻ°āĻžāĻ¨
āĻ¯āĻāĻ¨ (<>) {
if (eof()) { # āĻļā§āĻˇ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "------------\n";
}
āĻāĻžāĻĒāĻž;
āĻļā§āĻˇ āĻ¯āĻĻāĻŋ eof(); # āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻāĻāĻāĻŋ āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨āĻžāĻ˛ āĻĨā§āĻā§ āĻĒāĻĄāĻŧāĻŋ
}
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻŋāĻ āĻāĻā§āĻāĻŋāĻ¤: āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻāĻāĻ¨āĻ āĻĒāĻžāĻ°ā§āĻ˛ā§ "eof" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻž, āĻāĻžāĻ°āĻŖ āĻāĻ¨āĻĒā§āĻ
āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻ°āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ "undef" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻ¯āĻāĻ¨ āĻ¤āĻžāĻ°āĻž āĻĄā§āĻāĻž āĻĢā§āĻ°āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ āĻŦāĻž āĻā§āĻ¨ā§ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻ¸āĻŽā§āĻŽā§āĻā§āĻ¨ āĻšāĻ¯āĻŧāĨ¤
eval EXPR
eval āĻŦā§āĻ˛āĻ
āĻ¸ā§āĻĒāĻˇā§āĻ
āĻĒā§āĻ°āĻĨāĻŽ āĻĢāĻ°ā§āĻŽā§, āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ "āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻāĻžāĻ˛" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, EXPR āĻāĻ° āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨
āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻŦāĻ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¯ā§āĻ¨ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĨ¤ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻ° āĻŽāĻžāĻ¨
(āĻ¯āĻž āĻ¸ā§āĻŦāĻ¯āĻŧāĻ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ) āĻĒā§āĻ°āĻĨāĻŽā§ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§
āĻā§āĻ¨ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¨ā§āĻ, āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛, āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻ¯ā§āĻā§āĻ¨ā§ āĻŦāĻžāĻāĻ°ā§āĻ° āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻāĻŋāĻ° āĻāĻžāĻā§ āĻĻā§āĻļā§āĻ¯āĻŽāĻžāĻ¨, āĻāĻŦāĻ āĻ¯ā§ āĻā§āĻ¨ā§
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻŦāĻž āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻāĻŦāĻ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ¸āĻāĻā§āĻāĻž āĻĒāĻ°ā§ āĻĨāĻžāĻā§āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° "eval" āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŽāĻžāĻ¨āĻāĻŋ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ,
$_ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻ āĻĢāĻ°ā§āĻŽāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĒāĻžāĻ°ā§āĻ¸āĻŋāĻ āĻāĻŦāĻ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ā§ āĻŦāĻŋāĻ˛āĻŽā§āĻŦ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ
āĻ°āĻžāĻ¨ āĻāĻžāĻāĻŽ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ EXPR āĻāĻ° āĻĒāĻžāĻ ā§āĻ¯āĨ¤
āĻ¯āĻĻāĻŋ "āĻāĻāĻ¨āĻŋāĻā§āĻĄ_āĻāĻāĻžāĻ˛" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻĨāĻžāĻā§ (āĻ¯āĻž "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° 5.16" āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻŦāĻž
āĻāĻā§āĻāĻ¤āĻ° āĻā§āĻˇāĻŖāĻž), EXPR āĻŦāĻž $_ āĻā§ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ "utf8 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨"
āĻā§āĻˇāĻŖāĻžāĻ° āĻā§āĻ¨ āĻĒā§āĻ°āĻāĻžāĻŦ āĻ¨ā§āĻ āĻāĻŦāĻ āĻā§āĻ¸ āĻĢāĻŋāĻ˛ā§āĻāĻžāĻ° āĻ¨āĻŋāĻˇāĻŋāĻĻā§āĻ§āĨ¤ āĻ āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§
"unicode_eval" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯, āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻ āĻā§āĻˇāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŖā§āĻ¯ āĻāĻ°āĻž āĻšāĻŦā§ āĻāĻŦāĻ
āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻŦāĻžāĻāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻāĻ¨āĻā§āĻĄāĻŋāĻ āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§, āĻāĻŦāĻ āĻāĻ¤ā§āĻ¸ āĻĢāĻŋāĻ˛ā§āĻāĻžāĻ° āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
"eval" āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻŋāĻā§āĻā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ¤āĻŋāĻšāĻžāĻ¸āĻŋāĻ āĻāĻāĻ°āĻŖ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°ā§
āĻŦāĻžāĻāĻ°ā§āĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸ā§āĻ¯ā§āĻ āĻ¯āĻž āĻāĻāĻ¨āĻ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻž āĻšāĻā§āĻā§āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ "evalbytes" āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻĻā§āĻā§āĻ¨, āĻ¯āĻž
āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻāĻŋāĻ° āĻāĻ¨āĻĒā§āĻāĻā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻŽ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§ āĻāĻŦāĻ āĻ¸ā§āĻ°ā§āĻ¸ āĻĢāĻŋāĻ˛ā§āĻāĻžāĻ°āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§ āĻāĻŦāĻ
āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ pragma.
āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻĻā§āĻāĻž āĻĻāĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĢā§āĻ˛ā§āĻāĻŋāĻ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¸āĻŽā§āĻŦāĻ˛āĻŋāĻ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°ā§āĨ¤
āĻ¸ā§āĻ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°āĻāĻŋ āĻ āĻā§āĻˇāĻ°ā§ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ "NaN" āĻŦāĻž "āĻāĻ¨āĻĢāĻŋāĻ¨āĻŋāĻāĻŋ"; āĻŦāĻž, āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§
āĻāĻāĻāĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ˛ā§āĻā§āĻ˛" āĻāĻ°, āĻĻāĻļāĻŽāĻŋāĻ āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻ āĻā§āĻˇāĻ° āĻāĻāĻāĻŋ āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻāĻžāĻĄāĻŧāĻž āĻ āĻ¨ā§āĻ¯ āĻāĻŋāĻā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻ¯ā§āĻŽāĻ¨
āĻāĻŽāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§)āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻāĻļāĻž āĻāĻ°āĻā§āĻ¨ āĻāĻāĻā§āĻ˛āĻŋāĻ° āĻā§āĻ¨ā§āĻāĻŋāĻ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻžāĻ° āĻ¸āĻŽā§āĻāĻžāĻŦāĻ¨āĻž āĻ¨ā§āĻāĨ¤
āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻĢāĻ°ā§āĻŽā§, BLOCK-āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻā§āĻĄāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻŦāĻžāĻ°--āĻāĻāĻ āĻ¸āĻŽāĻ¯āĻŧā§ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
"eval" āĻāĻ° āĻāĻļā§āĻĒāĻžāĻļā§āĻ° āĻā§āĻĄāĻāĻŋ āĻ¨āĻŋāĻā§āĻ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛--āĻāĻŦāĻ āĻāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĨ¤ āĻāĻ āĻĢāĻ°ā§āĻŽāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽāĻā§āĻ˛āĻŋāĻā§ āĻāĻ°āĻ āĻĢāĻžāĻāĻĻā§ āĻĢā§āĻ˛āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ
āĻĒā§āĻ°āĻĨāĻŽāĻāĻŋāĻ° āĻā§āĻ¯āĻŧā§ āĻĻāĻā§āĻˇāĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§ (āĻ¨ā§āĻā§ āĻĻā§āĻā§āĻ¨), āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ āĻā§āĻāĻŋāĻāĻ¯āĻŧā§āĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻāĻŽā§āĻĒāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻ˛āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻā§āĻĄāĨ¤
āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻ¸ā§āĻŽāĻŋāĻā§āĻ˛āĻ¨, āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§, EXPR āĻāĻ° āĻŽāĻžāĻ¨ āĻĨā§āĻā§ āĻŦāĻž āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦā§āĻ˛āĻāĨ¤
āĻāĻāĻ¯āĻŧ āĻ°ā§āĻĒā§, āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻšāĻ˛ āĻāĻŋāĻ¤āĻ°ā§ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻļā§āĻˇ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻ° āĻŽāĻžāĻ¨
āĻŽāĻŋāĻ¨āĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ; āĻāĻāĻāĻŋ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻ¸ā§āĻā§āĻāĻŽā§āĻ¨ā§āĻāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ āĻŋāĻ āĻ¯ā§āĻŽāĻ¨ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§āĨ¤ āĻĻā§āĻ¯
āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻāĻžāĻ°ā§ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻŋ āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°, āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻŦāĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ,
"āĻāĻāĻžāĻ˛" āĻāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§āĨ¤ āĻāĻŋāĻāĻžāĻŦā§ āĻāĻ°ā§ āĻāĻ¨ā§āĻ¯ "wantarray" āĻĻā§āĻā§āĻ¨
āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻž āĻ°āĻžāĻ¨āĻāĻžāĻāĻŽ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĨāĻžāĻā§, āĻŦāĻž āĻāĻāĻāĻŋ "āĻĄāĻžāĻ" āĻŦāĻŋāĻŦā§āĻ¤āĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, "eval"
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§ "undef" āĻŦāĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ $@ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĨ¤ (5.16-āĻāĻ° āĻāĻā§, āĻāĻāĻāĻŋ āĻŦāĻžāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ "undef" āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻāĻ¨āĻžāĻ° āĻāĻžāĻ°āĻŖ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛
āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸āĻā§āĻ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ°āĻžāĻ¨āĻāĻžāĻāĻŽ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻ¯āĻŧāĨ¤) āĻ¯āĻĻāĻŋ āĻā§āĻ¨ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¨āĻž āĻĨāĻžāĻā§, $@ āĻšāĻ¯āĻŧ
āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¸ā§āĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻĒā§āĻ°āĻŦāĻžāĻš āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¯ā§āĻŽāĻ¨ "āĻļā§āĻˇ" āĻŦāĻž "āĻā§āĻā§" āĻŦāĻžāĻāĻĒāĻžāĻ¸ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
$@ āĻāĻ° āĻ¸ā§āĻāĻŋāĻāĨ¤ āĻ¸āĻ¤āĻ°ā§āĻ āĻĨāĻžāĻā§āĻ¨ āĻ¯ā§ "āĻāĻāĻžāĻ˛" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒāĻžāĻ°ā§āĻ˛āĻā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻŽā§āĻĻā§āĻ°āĻŖ āĻĨā§āĻā§ āĻ¨ā§āĻ°āĻŦ āĻāĻ°ā§ āĻ¨āĻž
STDERR-āĻ, āĻŦāĻž āĻāĻāĻŋ $@-āĻ āĻ¸āĻ¤āĻ°ā§āĻāĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻĒāĻžāĻ ā§āĻ¯ āĻ¸ā§āĻāĻžāĻĢ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻ¯ā§āĻā§āĻ¨ā§ āĻāĻāĻāĻŋ āĻāĻ°āĻ¤ā§
āĻ¸ā§āĻā§āĻ˛āĻŋ, āĻāĻĒāĻ¨āĻžāĻā§ $SIG{__WARN__} āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻ āĻĨāĻŦāĻž āĻāĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
"āĻā§āĻ¨āĻ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¨ā§āĻ 'āĻ¸āĻŦ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻŦā§āĻ˛āĻ āĻŦāĻž EXPRāĨ¤ "āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž", āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ° āĻāĻŦāĻ āĻ¸āĻ¤āĻ°ā§āĻāĻŦāĻžāĻŖā§ āĻĻā§āĻā§āĻ¨āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨, āĻāĻžāĻ°āĻŖ "āĻāĻāĻžāĻ˛" āĻĢāĻžāĻāĻĻā§ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ- āĻŽāĻžāĻ°āĻžāĻ¤ā§āĻŽāĻ āĻ¤ā§āĻ°ā§āĻāĻŋ, āĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĻāĻ°āĻāĻžāĻ°ā§
āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ (āĻ¯ā§āĻŽāĻ¨ "āĻ¸āĻā§āĻ" āĻŦāĻž "āĻ¸āĻŋāĻŽāĻ˛āĻŋāĻāĻ") āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŋāĻ¨āĻžāĨ¤ āĻāĻāĻāĻž
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ-āĻā§āĻ°ā§āĻ¯āĻžāĻĒāĻŋāĻ āĻŽā§āĻāĻžāĻ¨āĻŋāĻāĻŽ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻĄāĻžāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻŦāĻžāĻĄāĻŧāĻžāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽāĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ XS āĻŽāĻĄāĻŋāĻāĻ˛ āĻ˛ā§āĻĄ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¤ā§āĻ°ā§āĻāĻŋāĻā§āĻ˛āĻŋ āĻāĻāĻāĻžāĻ¤ā§ āĻāĻžāĻ¨, āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻŋāĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž
āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ (āĻ¯ā§āĻŽāĻ¨ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¸ā§āĻā§) āĻāĻŽāĻ¨āĻāĻŋ "eval" āĻāĻ° āĻ¸āĻžāĻĨā§āĻ āĻŽāĻžāĻ°āĻžāĻ¤ā§āĻŽāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ āĻ¨āĻž
$ENV{PERL_DL_NONLAZY} āĻ¸ā§āĻ āĻāĻ°āĻž āĻāĻā§āĨ¤ perlrun āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¯āĻĻāĻŋ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻ āĻāĻ°āĻž āĻā§āĻĄāĻāĻŋ āĻāĻŋāĻ¨ā§āĻ¨ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻŋ āĻ°āĻžāĻ¨ āĻĢāĻžāĻāĻĻā§ āĻāĻāĻžāĻ˛-āĻŦā§āĻ˛āĻ āĻĢāĻ°ā§āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨-
āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻžāĻ° āĻāĻ°āĻŋāĻŽāĻžāĻ¨āĻž āĻŦāĻšāĻ¨ āĻ¨āĻž āĻāĻ°ā§ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻ¤ā§āĻ°ā§āĻāĻŋāĨ¤ āĻ¤ā§āĻ°ā§āĻāĻŋ, āĻ¯āĻĻāĻŋ
āĻ¯ā§āĻā§āĻ¨ā§, āĻāĻāĻ¨āĻ $@ āĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
# āĻŦāĻŋāĻāĻžāĻāĻ¨-āĻŦāĻžāĻ-āĻļā§āĻ¨ā§āĻ¯ āĻ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤ āĻāĻ°ā§āĻ¨
eval { $answer = $a / $b; }; āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ $@ āĻ¯āĻĻāĻŋ $@;
# āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻŽ āĻĻāĻā§āĻˇ
eval '$āĻāĻ¤ā§āĻ¤āĻ° = $a / $b'; āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ $@ āĻ¯āĻĻāĻŋ $@;
# āĻāĻāĻāĻŋ āĻāĻŽā§āĻĒāĻžāĻāĻ˛-āĻāĻžāĻāĻŽ āĻ¤ā§āĻ°ā§āĻāĻŋ
eval { $answer = }; #āĻā§āĻ˛
# āĻāĻāĻāĻŋ āĻ°āĻžāĻ¨-āĻāĻžāĻāĻŽ āĻ¤ā§āĻ°ā§āĻāĻŋ
eval '$āĻāĻ¤ā§āĻ¤āĻ° ='; # āĻ¸ā§āĻ $@
āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻĢāĻžāĻāĻĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ "eval{}" āĻĢāĻ°ā§āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻŋāĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻā§āĨ¤ āĻŦāĻžāĻāĻŋ
"__DIE__" āĻšā§āĻā§āĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¤āĻ°ā§āĻāĻ¯ā§āĻā§āĻ¯āĻāĻžāĻŦā§ āĻāĻžāĻāĻž āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻŋ āĻā§āĻ°āĻŋāĻāĻžāĻ° āĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¯ā§ āĻā§āĻ¨ā§ "__DIE__" āĻšā§āĻ āĻ¯āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻā§āĻĄ āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻāĻ°āĻž āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻĒāĻ¨āĻŋ "āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§ $SIG{__DIE__}" āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ, āĻ¯ā§āĻŽāĻ¨ āĻāĻ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻāĻŋ āĻĻā§āĻāĻžāĻ¯āĻŧ:
# āĻŦāĻŋāĻāĻžāĻāĻ¨-āĻŦāĻžāĻ-āĻļā§āĻ¨ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻ¤ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻĢāĻžāĻāĻĻ
eval { āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ $SIG{'__DIE__'}; $āĻāĻ¤ā§āĻ¤āĻ° = $a / $b; };
āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ $@ āĻ¯āĻĻāĻŋ $@;
āĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻ¤āĻžā§āĻĒāĻ°ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ, āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¯ā§ "__DIE__" āĻšā§āĻāĻā§āĻ˛āĻŋ āĻāĻŦāĻžāĻ° "āĻĄāĻžāĻ" āĻŦāĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻž
āĻ¤āĻžāĻĻā§āĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻāĻžāĻŦ āĻāĻā§:
# __DIE__ āĻšā§āĻ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
{
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ $SIG{'__DIE__'} =
sub { (āĻāĻŽāĻžāĻ° $x = $_[0]) =~ s/foo/bar/g; āĻĄāĻžāĻ $x };
eval { die "foo live here" };
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $@ āĻ¯āĻĻāĻŋ $@; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻŦāĻžāĻ° āĻāĻāĻžāĻ¨ā§ āĻĨāĻžāĻā§"
}
āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĻā§āĻ°āĻ¤ā§āĻŦā§ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ˛āĻžāĻĒā§āĻ° āĻĒā§āĻ°āĻāĻžāĻ° āĻāĻ°ā§, āĻāĻ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻ¸ā§āĻŦāĻā§āĻāĻžāĻŽā§āĻ˛āĻ āĻāĻāĻ°āĻŖ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻ°āĻŋāĻ˛āĻŋāĻā§ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻāĻāĻŋ "āĻāĻāĻžāĻ˛" āĻāĻ° āĻ¸āĻžāĻĨā§, āĻāĻĒāĻ¨āĻžāĻā§ āĻā§ āĻĻā§āĻāĻž āĻšāĻā§āĻā§ āĻ¤āĻž āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻ¤ā§ āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻ¸āĻ¤āĻ°ā§āĻ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤
āĻāĻāĻ¨:
eval $x; # āĻŽāĻžāĻŽāĻ˛āĻž 1
eval "$x"; # āĻā§āĻ¸ 2
eval '$x'; # āĻāĻāĻ¨āĻž 3
eval { $x }; # āĻāĻāĻ¨āĻž ā§Ē
eval "\$$x++"; # āĻāĻāĻ¨āĻž ā§Ģ
$$x++; # āĻāĻāĻ¨āĻž 6
āĻāĻĒāĻ°ā§āĻ° āĻā§āĻ¸ 1 āĻāĻŦāĻ 2 āĻāĻāĻāĻāĻžāĻŦā§ āĻāĻāĻ°āĻŖ āĻāĻ°ā§: āĻ¤āĻžāĻ°āĻž āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĨāĻžāĻāĻž āĻā§āĻĄ āĻāĻžāĻ˛āĻžāĻ¯āĻŧ
$x (āĻ¯āĻĻāĻŋāĻ āĻā§āĻ¸ 2-āĻ āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻĻā§āĻŦāĻŋāĻā§āĻŖ āĻāĻĻā§āĻ§ā§āĻ¤āĻŋ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻĒāĻžāĻ āĻāĻā§ āĻ āĻŦāĻžāĻ āĻāĻ°ā§ āĻāĻ° āĻā§ āĻāĻ°ā§
āĻāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻāĻŋāĻā§āĻ āĻ¨āĻ¯āĻŧāĨ¤) āĻā§āĻ¸ 3 āĻāĻŦāĻ 4 āĻāĻāĻāĻāĻžāĻŦā§ āĻāĻāĻāĻāĻžāĻŦā§ āĻāĻāĻ°āĻŖ āĻāĻ°ā§: āĻ¤āĻžāĻ°āĻž
āĻā§āĻĄ '$x' āĻāĻžāĻ˛āĻžāĻ¨, āĻ¯āĻž $x āĻāĻ° āĻŽāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻāĻžāĻĄāĻŧāĻž āĻāĻŋāĻā§āĻ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ (āĻā§āĻ¸ 4 āĻšāĻ˛
āĻŦāĻŋāĻļā§āĻĻā§āĻ§āĻāĻžāĻŦā§ āĻāĻžāĻā§āĻˇā§āĻˇ āĻāĻžāĻ°āĻŖā§ āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻāĻŋāĻ¤ā§ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻžāĻ° āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ āĻ°āĻ¯āĻŧā§āĻā§
āĻ°āĻžāĻ¨-āĻāĻžāĻāĻŽā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻŽā§āĻĒāĻžāĻāĻ˛-āĻāĻžāĻāĻŽāĨ¤) āĻā§āĻ¸ 5 āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻāĻžāĻ¯āĻŧāĻāĻž āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻĒāĻ¨āĻŋ would āĻŽāĻ¤
āĻĄāĻŦāĻ˛ āĻāĻĻā§āĻ§ā§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§, āĻāĻ āĻŦāĻŋāĻļā§āĻˇ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§ āĻāĻžāĻĄāĻŧāĻž, āĻāĻĒāĻ¨āĻŋ āĻļā§āĻ§ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻŋāĻŽā§āĻŦāĻ˛āĻŋāĻ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸, āĻ¯ā§āĻŽāĻ¨ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ 6.
āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻāĻ° āĻāĻā§, āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻ°āĻŖā§āĻ° āĻĒā§āĻ¨āĻāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ā§āĻ° āĻāĻā§ $@-āĻ āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨āĻŽā§āĻ¨ā§āĻ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛
āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛, āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄāĻāĻŋ āĻĒā§āĻ°āĻžāĻ¨ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻāĻŋ āĻ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§
āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻāĻŋāĻā§ āĻŽāĻžāĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¨āĻ¯āĻŧ:
# āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻā§āĻŖā§āĻ¯ āĻŦāĻŋāĻĻā§āĻŦā§āĻˇā§āĻ° āĻāĻ¨ā§āĻ¯ $@ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨
{
āĻāĻŽāĻžāĻ° $e;
{
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ $@; # āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ $@ āĻ°āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨
eval { test_repugnancy() };
# $@ =~ /āĻ āĻĒāĻ°āĻžāĻ§ā§/ āĻāĻŦāĻ āĻŽā§āĻ¤ā§āĻ¯ā§ $@; # āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻāĻŦāĻ āĻāĻā§āĻāĻ¤āĻ°
$@ =~ /āĻ¨āĻŋāĻˇā§āĻ ā§āĻ°/ āĻāĻŦāĻ $e = $@;
}
die $e āĻ¯āĻĻāĻŋ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ $e
}
"eval BLOCK" āĻāĻ°ā§ āĻ¨āĻž āĻāĻāĻāĻŋ āĻ˛ā§āĻĒ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŖāĻ¨āĻž, āĻ¤āĻžāĻ āĻ˛ā§āĻĒ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻŦāĻŋāĻŦā§āĻ¤āĻŋ "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§", "āĻļā§āĻˇ",
āĻ āĻĨāĻŦāĻž āĻŦā§āĻ˛āĻāĻāĻŋ āĻā§āĻĄāĻŧā§ āĻ¯ā§āĻ¤ā§ āĻŦāĻž āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻ¤ā§ "āĻ°āĻŋāĻĄā§" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻžāĨ¤
"DB" āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻāĻāĻāĻŋ "eval ''" āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ¯āĻŧ āĻ¨āĻž
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻļā§āĻĒāĻžāĻļā§āĻ° āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻ¯ā§āĻ, āĻŦāĻ°āĻ āĻĒā§āĻ°āĻĨāĻŽ āĻ¨āĻ¨-āĻĄāĻŋāĻŦāĻŋ āĻā§āĻāĻ°āĻžāĻ° āĻ¸ā§āĻ¯ā§āĻ
āĻā§āĻĄ āĻ¯ā§ āĻāĻāĻž āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ. āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻšāĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻāĻŋāĻ¨ā§āĻ¤āĻž āĻāĻ°āĻžāĻ° āĻĻāĻ°āĻāĻžāĻ° āĻ¨ā§āĻ
āĻāĻāĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ āĻĄāĻŋāĻŦāĻžāĻāĻžāĻ° āĻ˛ā§āĻāĻžāĨ¤
evalbytes EXPR
evalbytes
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻš "eval" āĻāĻ° āĻŽāĻ¤, āĻāĻāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¤āĻžāĻ° āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°ā§
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ, āĻ āĻĨāĻŦāĻž $_ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻŦāĻžāĻāĻā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§āĨ¤ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ§āĻžāĻ°āĻŖāĻāĻžāĻ°ā§
āĻ¯ā§ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋāĻ° āĻ āĻ°ā§āĻĄāĻŋāĻ¨āĻžāĻ˛ āĻŽāĻžāĻ¨ 255-āĻāĻ° āĻŦā§āĻļāĻŋ āĻšāĻ˛ā§ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĻā§āĻāĻž āĻĻā§āĻ¯āĻŧāĨ¤ āĻā§āĻ¸ āĻĢāĻŋāĻ˛ā§āĻāĻžāĻ°
āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻā§āĻĄā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻā§āĻĄ āĻ¨āĻŋāĻā§āĻ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¯.
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "evalbytes" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻĒāĻ˛āĻŦā§āĻ§, āĻāĻāĻāĻŋ "v5.16 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" (āĻŦāĻž
āĻāĻā§āĻāĻ¤āĻ°) āĻā§āĻˇāĻŖāĻž, āĻ āĻĨāĻŦāĻž āĻāĻāĻāĻŋ "CORE::" āĻāĻĒāĻ¸āĻ°ā§āĻ āĻ¸āĻšāĨ¤ āĻāĻ°āĻ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĻā§āĻā§āĻ¨.
exec āĻ¤āĻžāĻ˛āĻŋāĻāĻž
exec āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ¤āĻžāĻ˛āĻŋāĻāĻž
"exec" āĻĢāĻžāĻāĻļāĻ¨ āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻžāĻ˛āĻžāĻ¯āĻŧ āĻāĻŦāĻ āĻ¨āĻž āĻāĻ¯āĻŧ; āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻāĻ° "exec" āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§ āĻāĻžāĻ¨āĨ¤ āĻāĻāĻŋ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻāĻĻā§āĻļ āĻĻāĻŋāĻ˛ā§āĻ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻāĻāĻŋāĻ° āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦ āĻ¨ā§āĻ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻļā§āĻ˛ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ
(āĻ¨āĻŋāĻā§ āĻĻā§āĻ).
āĻ¯ā§āĻšā§āĻ¤ā§ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ" āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "exec" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻā§āĻ˛, āĻ¤āĻžāĻ āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§
"exec" āĻā§ āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻŦāĻŋāĻŦā§āĻ¤āĻŋ āĻĨāĻžāĻā§ āĻ¯āĻž āĻ¨ā§āĻ
"āĻĄāĻžāĻ", "āĻ¸āĻ¤āĻ°ā§āĻ" āĻŦāĻž "āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨" (āĻ¯āĻĻāĻŋ "-w" āĻ¸ā§āĻ āĻāĻ°āĻž āĻĨāĻžāĻā§--āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¤āĻž āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻ āĻ¨āĻž?) āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ
āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻ āĻ¨ā§āĻ¯ āĻāĻŋāĻā§ āĻŦāĻŋāĻŦā§āĻ¤āĻŋ āĻ¸āĻš āĻāĻāĻāĻŋ "exec" āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨, āĻāĻĒāĻ¨āĻŋ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻļā§āĻ˛ā§:
exec ('foo') āĻŦāĻž āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ STDERR "foo āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĻŋ: $!";
{ exec ('foo') }; āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ STDERR "foo āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĻŋ: $!";
āĻ¯āĻĻāĻŋ LIST āĻ āĻāĻāĻžāĻ§āĻŋāĻ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋ āĻāĻ˛ āĻāĻ°ā§ execvp(3) āĻŽāĻ§ā§āĻ¯ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻā§āĻā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¯āĻĻāĻŋ LIST āĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻāĻŋ āĻļā§āĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻŽā§āĻāĻžāĻā§āĻ¯āĻžāĻ°ā§āĻā§āĻāĻžāĻ°, āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻā§āĻ¨ā§ āĻĨāĻžāĻā§, āĻĒā§āĻ°ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻžāĻā§ āĻāĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧ
āĻĒāĻžāĻ°ā§āĻ¸āĻŋāĻāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻļā§āĻ˛ (āĻāĻāĻŋ "/ āĻŦāĻŋāĻ¨ / SH -c" āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ āĻ¨ā§āĻ¯ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧ
āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ)āĨ¤ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§ āĻ¯āĻĻāĻŋ āĻā§āĻ¨ āĻļā§āĻ˛ āĻŽā§āĻāĻžāĻā§āĻ¯āĻžāĻ°ā§āĻā§āĻāĻžāĻ° āĻ¨āĻž āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋ āĻŦāĻŋāĻāĻā§āĻ¤ āĻšāĻ¯āĻŧ
āĻļāĻŦā§āĻĻ āĻāĻŦāĻ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ "execvp" āĻ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻāĻ°āĻ āĻĻāĻā§āĻˇāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
exec '/āĻŦāĻŋāĻ¨/āĻāĻā§', 'āĻāĻĒāĻ¨āĻžāĻ° āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻ˛: ', @ARGV;
exec "āĻ¸āĻ°ā§āĻ $outfile | uniq";
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻĒā§āĻ°āĻĨāĻŽ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻ¨āĻž āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻŦāĻ˛āĻ¤ā§ āĻāĻžāĻ¨
āĻāĻĒāĻ¨āĻŋ āĻ¤āĻžāĻ° āĻ¨āĻŋāĻā§āĻ° āĻ¨āĻžāĻŽ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻš āĻāĻ°āĻā§āĻ¨, āĻāĻĒāĻ¨āĻŋ āĻāĻ¸āĻ˛ā§ āĻ¯ā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻāĻžāĻ¨ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
LIST āĻāĻ° āĻ¸āĻžāĻŽāĻ¨ā§ āĻāĻāĻāĻŋ "āĻĒāĻ°ā§āĻā§āĻˇ āĻ āĻŦāĻā§āĻā§āĻ" (āĻāĻŽāĻž āĻāĻžāĻĄāĻŧāĻž) āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ˛āĻžāĻ¨, āĻ¯ā§āĻŽāĻ¨ "exec"
āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĨ¤" (āĻāĻāĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻāĻāĻŋ āĻŦāĻšā§āĻŽā§āĻ˛ā§āĻ¯ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻ¤ā§ āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°ā§,
āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĨāĻžāĻā§āĨ¤) āĻāĻĻāĻžāĻšāĻ°āĻŖ:
$shell = '/bin/csh';
exec $shell '-sh'; # āĻāĻžāĻ¨ āĻāĻ°ā§āĻ¨ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ˛āĻāĻāĻ¨ āĻļā§āĻ˛
āĻ āĻĨāĻŦāĻž, āĻāĻ°ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ,
exec {'/bin/csh'} '-sh'; # āĻāĻžāĻ¨ āĻāĻ°ā§āĻ¨ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ˛āĻāĻāĻ¨ āĻļā§āĻ˛
āĻ¯āĻāĻ¨ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻļā§āĻ˛ āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻĢāĻ˛āĻžāĻĢāĻ˛āĻā§āĻ˛āĻŋ āĻ¤āĻžāĻ° āĻ¸āĻžāĻĒā§āĻā§āĻˇā§
quirks āĻāĻŦāĻ āĻā§āĻˇāĻŽāĻ¤āĻž. āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlop āĻ "`STRING`" āĻĻā§āĻā§āĻ¨āĨ¤
"exec" āĻŦāĻž "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ" āĻ¸āĻš āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇ āĻ āĻŦāĻā§āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻ°āĻ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻāĨ¤ āĻāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°
(āĻ¯āĻžāĻ° āĻ¸āĻžāĻĨā§āĻ āĻāĻžāĻ˛ āĻāĻžāĻ āĻāĻ°ā§ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ()) āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻ¤ā§ āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°ā§ a
multivalued āĻ¤āĻžāĻ˛āĻŋāĻāĻž, āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĨāĻžāĻā§āĨ¤ āĻāĻ āĻāĻžāĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ
āĻļā§āĻ˛ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ¯āĻŧāĻžāĻāĻ˛ā§āĻĄāĻāĻžāĻ°ā§āĻĄ āĻŦāĻž āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸ āĻ¸āĻš āĻļāĻŦā§āĻĻ āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°āĻžāĨ¤
@āĻāĻ°ā§āĻāĻ¸ = ("āĻāĻā§ āĻ¸āĻžāĻ°āĻĒā§āĻ°āĻžāĻāĻ");
exec @args; # āĻļā§āĻ˛ āĻĒāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧ
# āĻ¯āĻĻāĻŋ @args == 1
exec { $args[0] } @args; # āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻāĻŽāĻ¨āĻāĻŋ āĻāĻ-āĻāĻ°ā§āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¸āĻš
āĻĒā§āĻ°āĻĨāĻŽ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ, āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇ āĻŦāĻ¸ā§āĻ¤ā§ āĻāĻžāĻĄāĻŧāĻž, āĻ°āĻžāĻ¨ āĻĒā§āĻ°āĻ¤āĻŋāĻ§ā§āĻŦāĻ¨āĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ, āĻĒāĻžāĻ¸āĻŋāĻ
āĻāĻāĻž "āĻŦāĻŋāĻ¸ā§āĻŽāĻ¯āĻŧ" āĻāĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋ. āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻāĻ°ā§āĻ¨āĻŋ; āĻāĻāĻŋ āĻ¨āĻžāĻŽā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻāĻŋāĻ˛
"āĻĒā§āĻ°āĻ¤āĻŋāĻ§ā§āĻŦāĻ¨āĻŋ āĻāĻļā§āĻāĻ°ā§āĻ¯", āĻāĻāĻŋ āĻā§āĻāĻā§ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ, āĻāĻŦāĻ $ āĻ¸ā§āĻ? āĻāĻāĻāĻŋ āĻ -āĻļā§āĻ¨ā§āĻ¯ āĻŽāĻžāĻ¨ āĻ¯āĻž āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§āĨ¤
Windows āĻ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "exec PROGRAM LIST" āĻĒāĻ°ā§āĻā§āĻˇ āĻ āĻŦāĻā§āĻā§āĻ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¯ā§āĻā§āĻ¯āĻāĻžāĻŦā§ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻŦā§
āĻļā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§; "exec LIST", āĻāĻŽāĻ¨āĻāĻŋ āĻāĻāĻžāĻ§āĻŋāĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻĨāĻžāĻāĻž āĻ¸āĻ¤ā§āĻ¤ā§āĻŦā§āĻ, āĻĢāĻŋāĻ°ā§ āĻāĻ¸āĻŦā§ā§ˇ
āĻļā§āĻ˛ āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻĨāĻŽ āĻ¸ā§āĻĒāĻ¨ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧāĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻā§āĻ¸ā§āĻā§āĻ° āĻāĻā§ āĻāĻāĻāĻĒā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻĢā§āĻ˛āĻžāĻļ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻŋāĻā§ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻšāĻŦā§ (āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻ āĻĻā§āĻā§āĻ¨)āĨ¤ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻšāĻ¤ā§, āĻāĻĒāĻ¨āĻžāĻā§ $| āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
(āĻāĻāĻ°ā§āĻāĻŋāĻ¤ā§ $AUTOFLUSH) āĻ āĻĨāĻŦāĻž āĻ¯ā§āĻā§āĻ¨ā§ āĻā§āĻ˛āĻžāĻ° "IO::Handle" āĻāĻ° "autoflush()" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻāĻ˛ āĻāĻ°ā§āĻ¨
āĻšāĻžāĻ°āĻžāĻ¨ā§ āĻāĻāĻāĻĒā§āĻ āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ "exec" āĻāĻĒāĻ¨āĻžāĻ° "END" āĻŦā§āĻ˛āĻāĻā§āĻ˛āĻŋāĻā§ āĻāĻ˛ āĻāĻ°āĻŦā§ āĻ¨āĻž, āĻŦāĻž āĻāĻāĻŋ "DESTROY" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§āĻ˛āĻŋāĻā§ āĻāĻšā§āĻŦāĻžāĻ¨ āĻāĻ°āĻŦā§ āĻ¨āĻž
āĻāĻĒāĻ¨āĻžāĻ° āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻāĻĒāĻ°āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "exec"āĨ¤
EXPR āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨
āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻž āĻ¯āĻž āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§, āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ˛ā§ āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ āĻāĻāĻ¨āĻ āĻļā§āĻ°ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻŽāĻžāĻ¨ āĻšāĻ¯āĻŧ
āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤
āĻ¯āĻĻāĻŋ $hash{$key} āĻĨāĻžāĻā§ āĻ¤āĻžāĻšāĻ˛ā§ "Exists\n" āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨;
$hash{$key} āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻšāĻ˛ā§ "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤\n" āĻŽā§āĻĻā§āĻ°āĻŖ āĻāĻ°ā§āĻ¨;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "True\n" āĻ¯āĻĻāĻŋ $hash{$key};
āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨āĻā§ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§āĻ āĻŦāĻ˛āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¤āĻŦā§ āĻāĻ° āĻāĻāĻ°āĻŖ āĻ āĻ¨ā§āĻ āĻāĻŽ āĻ¸ā§āĻĒāĻˇā§āĻ āĻāĻŦāĻ
āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§ "āĻŽā§āĻā§āĻ¨" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻĻā§āĻĸāĻŧāĻāĻžāĻŦā§ āĻāĻŦāĻĻā§āĻ§āĨ¤
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž: āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ "āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨" āĻāĻ˛ āĻāĻ°āĻž āĻĻā§āĻĸāĻŧāĻāĻžāĻŦā§ āĻ¨āĻŋāĻ°ā§ā§āĻ¸āĻžāĻšāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻ° āĻ§āĻžāĻ°āĻŖāĻž
āĻĒāĻžāĻ°ā§āĻ˛ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻŦāĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻ§āĻžāĻ°āĻŖāĻžāĻāĻ¤āĻāĻžāĻŦā§ āĻ¨āĻ¯āĻŧ
āĻ¸ā§āĻ¸āĻā§āĻāĻ¤, āĻāĻŦāĻ āĻāĻļā§āĻāĻ°ā§āĻ¯āĻāĻ¨āĻ āĻāĻāĻ°āĻŖā§āĻ° āĻĻāĻŋāĻā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ $array[$index] āĻĨāĻžāĻā§ āĻ¤āĻžāĻšāĻ˛ā§ "Exists\n" āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨;
$array[$index] āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻšāĻ˛ā§ "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤\n" āĻŽā§āĻĻā§āĻ°āĻŖ āĻāĻ°ā§āĻ¨;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "True\n" āĻ¯āĻĻāĻŋ $array[$index];
āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¸āĻ¤ā§āĻ¯ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻŦāĻ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻŦā§āĻ
āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻ āĻāĻ¤ā§āĻ¯āĻž āĻ¸āĻ¤ā§āĻ¯ āĻ°āĻžāĻāĻž āĻ¨āĻž.
āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻ¨āĻžāĻŽ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§, āĻ¯āĻĻāĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻšāĻ¯āĻŧ
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻāĻāĻ¨āĻ āĻā§āĻˇāĻŖāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻ˛ā§āĻ˛ā§āĻ āĻ
āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻŦāĻž āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ¨ā§āĻ¯ subroutine āĻ¨āĻžāĻŽ āĻāĻāĻŋ āĻā§āĻˇāĻŖāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž. āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻ
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ¯ā§āĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨ā§āĻ āĻ¤āĻž āĻāĻāĻ¨āĻ āĻāĻ˛āĻ¯ā§āĻā§āĻ¯ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§: āĻāĻ° āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻāĻāĻāĻŋ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
"āĻ āĻā§āĻ˛ā§āĻĄ" āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ¯āĻž āĻāĻāĻŋāĻā§ āĻĒā§āĻ°āĻĨāĻŽāĻŦāĻžāĻ°ā§āĻ° āĻŽāĻ¤ā§ āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ¸ā§
āĻĄāĻžāĻāĻž perlsub āĻĻā§āĻā§āĻ¨āĨ¤
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨\n" āĻ¯āĻĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻā§ &āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤\n" āĻ¯āĻĻāĻŋ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ &āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨;
āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ EXPR āĻ¯āĻ¤āĻā§āĻˇāĻŖ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ˛āĻžāĻĒ āĻšāĻ¯āĻŧ āĻ¤āĻ¤āĻā§āĻˇāĻŖ āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻāĻžāĻ°ā§ āĻāĻāĻŋāĻ˛ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻšā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§ āĻā§ āĻ˛ā§āĻāĻāĻĒ āĻŦāĻž āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻ¨āĻžāĻŽ:
āĻ¯āĻĻāĻŋ ($ref->{A}->{B}->{$key} āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻā§) { }
āĻ¯āĻĻāĻŋ ($hash{A}{B}{$key} āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻā§) { }
āĻ¯āĻĻāĻŋ ($ref->{A}->{B}->[$ix] āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻā§) { }
āĻ¯āĻĻāĻŋ ($hash{A}{B}[$ix] āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻā§) { }
āĻ¯āĻĻāĻŋ (āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻĨāĻžāĻā§ &{$ref->{A}{B}{$key}}) { }
āĻ¯āĻĻāĻŋāĻ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻā§āĻ°āĻāĻžāĻŦā§ āĻ¨ā§āĻ¸ā§āĻā§āĻĄ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻŦāĻž āĻšā§āĻ¯āĻžāĻļ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦā§ āĻāĻ¸āĻŦā§ āĻ¨āĻž
āĻāĻžāĻ°āĻŖ āĻāĻ° āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻ¯ā§ āĻā§āĻ¨ā§ āĻšāĻ¸ā§āĻ¤āĻā§āĻˇā§āĻĒāĻāĻžāĻ°ā§āĻ°āĻž āĻāĻ°āĻŦā§āĨ¤ āĻāĻāĻāĻžāĻŦā§ "$ref->{"A"}"
āĻāĻŦāĻ "$ref->{"A"}->{"B"} āĻāĻ° āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻāĻžāĻ°āĻŖā§ āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦ āĻ˛āĻžāĻ āĻāĻ°āĻŦā§
āĻāĻĒāĻ°ā§ $āĻā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĨ¤ āĻ¤ā§āĻ° āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻāĻŋ āĻāĻāĻŦā§, āĻāĻŽāĻ¨āĻāĻŋ āĻ¸āĻš
āĻāĻāĻžāĻ¨ā§:
undef $ref;
āĻ¯āĻĻāĻŋ (āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ $ref->{"āĻāĻŋāĻā§ āĻā§"}) { }
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $ref; #āĻāĻŋ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻšā§āĻ¯āĻžāĻļ(0x80d3d5c)
āĻāĻ āĻāĻļā§āĻāĻ°ā§āĻ¯āĻāĻ¨āĻ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻ¤āĻž āĻ¯āĻž āĻĒā§āĻ°āĻĨāĻŽ āĻĻā§āĻāĻžāĻ¯āĻŧ āĻ¨āĻž - āĻŦāĻž āĻāĻŽāĻ¨āĻāĻŋ āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻ¨āĻāĻ°ā§
āĻāĻāĻāĻŋ lvalue āĻĒā§āĻ°āĻ¸āĻā§āĻ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻšāĻā§āĻā§ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻ°āĻŋāĻ˛āĻŋāĻā§ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ¨āĻžāĻŽā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ā§ˇ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨() is
āĻāĻāĻāĻŋ āĻā§āĻ˛.
āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ â # āĻ āĻŋāĻ āĻāĻā§
āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ &sub(); # āĻ¤ā§āĻ°ā§āĻāĻŋ
āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ° āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§āĻ¨
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨
EXPR āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¸ā§āĻ āĻŽāĻžāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
$ans = ;
0 āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§āĻ¨ āĻ¯āĻĻāĻŋ $ans =~ /^[Xx]/;
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĻā§āĻā§āĻ¨ "āĻŽā§āĻ¤ā§āĻ¯ā§"āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ 0 āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸ āĻ¸āĻš āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻŽāĻžāĻ¤ā§āĻ° āĻ¸āĻ°ā§āĻŦāĻāĻ¨ā§āĻ¨
EXPR-āĻāĻ° āĻ¸ā§āĻŦā§āĻā§āĻ¤ āĻŽāĻžāĻ¨ āĻšāĻ˛ āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ 0 āĻāĻŦāĻ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ 1; āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŽāĻžāĻ¨ āĻŦāĻŋāĻˇāĻ¯āĻŧ
āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻ¯ā§ āĻĒāĻ°āĻŋāĻŦā§āĻļā§ āĻāĻ˛āĻā§ āĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻ¤ā§āĨ¤
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, a āĻĨā§āĻā§ 69 (EX_UNAVAILABLE) āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻā§āĻā§ āĻŽā§āĻāĻ˛ āĻĒāĻžāĻ āĻžāĻ āĻāĻ¨āĻāĻžāĻŽāĻŋāĻ-āĻŽā§āĻāĻ˛ āĻĢāĻŋāĻ˛ā§āĻāĻžāĻ° āĻšāĻŦā§
āĻŽā§āĻāĻ˛āĻžāĻ°āĻā§ āĻāĻāĻā§āĻŽāĻāĻŋ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻāĻžāĻ°āĻŖ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻ¸āĻ°ā§āĻŦāĻ¤ā§āĻ° āĻ¸āĻ¤ā§āĻ¯ āĻ¨āĻ¯āĻŧāĨ¤
āĻā§āĻ āĻāĻžāĻāĻ˛ā§ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°āĻ¤ā§ "āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž
āĻ¯āĻžāĻ āĻšā§āĻ āĻ¨āĻž āĻā§āĻ¨ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻāĻā§āĻā§ āĻĢāĻžāĻāĻĻ. āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "āĻĄāĻžāĻ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻ¯āĻž āĻāĻāĻāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻāĻā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
"āĻāĻāĻžāĻ˛"
āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻŋāĻ° āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ () āĻĢāĻžāĻāĻļāĻ¨ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¨ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ "END" āĻāĻ˛ āĻāĻ°ā§
āĻ°ā§āĻāĻŋāĻ¨āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻĨāĻŽā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ "END" āĻ°ā§āĻāĻŋāĻ¨āĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻā§āĻ°āĻžāĻ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻ¨āĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ā§ˇ āĻāĻāĻāĻāĻžāĻŦā§
āĻ¯ā§āĻā§āĻ¨ āĻ āĻŦāĻā§āĻā§āĻ āĻĄā§āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ° āĻ¯āĻžāĻā§ āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¤āĻžāĻĻā§āĻ°āĻā§ āĻāĻ¸āĻ˛ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻĄāĻžāĻāĻž āĻšāĻ¯āĻŧāĨ¤ "āĻļā§āĻˇ"
āĻ°ā§āĻāĻŋāĻ¨ āĻāĻŦāĻ āĻ§ā§āĻŦāĻāĻ¸āĻāĻžāĻ°ā§āĻ°āĻž $? āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻ āĻ¯āĻĻāĻŋ āĻ
āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž, āĻāĻĒāĻ¨āĻŋ END āĻāĻŦāĻ āĻ§ā§āĻŦāĻāĻ¸āĻāĻžāĻ°ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖ āĻāĻĄāĻŧāĻžāĻ¤ā§ "POSIX::_exit($status)" āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlmod āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§āĻ¨"āĨ¤
āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻ¸ āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°
āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻ¸ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ e (āĻĒā§āĻ°āĻžāĻā§āĻ¤āĻŋāĻ āĻ˛āĻāĻžāĻ°āĻŋāĻĻāĻŽ āĻŦā§āĻ¸) EXPR āĻāĻ° āĻļāĻā§āĻ¤āĻŋāĻ¤ā§āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ,
āĻĻā§āĻ¯āĻŧ "exp($_)"āĨ¤
fc EXPR
fc EXPR āĻāĻ° āĻā§āĻ¸āĻĢā§āĻ˛ā§āĻĄā§āĻĄ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĢāĻžāĻāĻļāĻ¨ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨
āĻĄāĻŦāĻ˛-āĻāĻĻā§āĻ§ā§āĻ¤ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ¤ā§ "\F" āĻāĻ¸ā§āĻā§āĻĒāĨ¤
āĻā§āĻ¸āĻĢā§āĻ˛ā§āĻĄāĻŋāĻ āĻšāĻ˛ āĻāĻāĻāĻŋ āĻĢāĻ°ā§āĻŽā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŽā§āĻ¯āĻžāĻĒ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¯ā§āĻāĻžāĻ¨ā§ āĻā§āĻ¸ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻ°āĻ¯āĻŧā§āĻā§
āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž; āĻĻā§āĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§ āĻ¤āĻžāĻĻā§āĻ° āĻā§āĻ¸āĻĢā§āĻ˛ā§āĻĄ āĻāĻāĻžāĻ°ā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻāĻžāĻ°ā§āĻ¯āĻāĻ°āĻāĻžāĻŦā§ āĻāĻŋāĻā§āĻāĻžāĻ¸āĻž āĻāĻ°āĻžāĻ° āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻ¯āĻŧ
āĻ¯āĻĻāĻŋ āĻĻā§āĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¸āĻŽāĻžāĻ¨ āĻšāĻ¯āĻŧ, āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻļā§āĻˇā§āĨ¤
āĻŽā§āĻāĻžāĻŽā§āĻāĻŋāĻāĻžāĻŦā§, āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻ¨āĻ āĻ¨āĻŋāĻā§āĻā§ āĻāĻāĻŋ āĻ˛āĻŋāĻāĻ¤ā§ āĻā§āĻāĻā§ āĻĒāĻžāĻ¨
lc($this) eq lc($that) # āĻā§āĻ˛!
# āĻ āĻĨāĻŦāĻž
uc($this) eq uc($that) # āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻā§āĻ˛!
# āĻ āĻĨāĻŦāĻž
$this =~ /^\Q$that\E\z/i # āĻ āĻŋāĻ āĻāĻā§!
āĻāĻāĻ¨ āĻāĻĒāĻ¨āĻŋ āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
fc($this) eq fc($that)
āĻāĻŦāĻ āĻ¸āĻ āĻŋāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĒāĻžāĻ¨āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻā§āĻ¸āĻĢā§āĻ˛ā§āĻĄāĻŋāĻāĻ¯āĻŧā§āĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻĢāĻ°ā§āĻŽ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻžāĻāĻāĻā§āĻ˛āĻŋ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° "āĻā§āĻ¸āĻĢā§āĻ˛ā§āĻĄ()"āĻāĻāĻ¨āĻŋāĻā§āĻĄā§::UCD āĻāĻŦāĻ"prop_invmap()"āĻāĻāĻ¨āĻŋāĻā§āĻĄā§::āĻāĻāĻ¸āĻŋāĻĄāĻŋāĨ¤ āĻāĻ°āĻ āĻāĻ¨ā§āĻ¯
āĻā§āĻ¸āĻĢā§āĻ˛ā§āĻĄāĻŋāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻ¤āĻĨā§āĻ¯, āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻĻā§āĻā§āĻ¨, āĻŦāĻŋāĻļā§āĻˇāĻ¤ āĻŦāĻŋāĻāĻžāĻ 3.13
"āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻā§āĻ¸ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨āĻ¸", 4.2 "āĻā§āĻ¸-āĻ¨āĻ°ā§āĻŽā§āĻāĻŋāĻ", āĻāĻŦāĻ 5.18 "āĻā§āĻ¸ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻāĻ¸", āĻāĻĒāĻ˛āĻŦā§āĻ§
athttp://www.unicode.org/versions/latest/>, āĻ¸ā§āĻāĻ¸āĻžāĻĨā§ āĻā§āĻ¸ āĻāĻžāĻ°ā§āĻ āĻāĻāĻžāĻ¨ā§ āĻāĻĒāĻ˛āĻŦā§āĻ§
<http://www.unicode.org/charts/case/>.
āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ pragma āĻ āĻ§ā§āĻ¨ā§ āĻāĻāĻ āĻāĻžāĻŦā§ āĻāĻāĻ°āĻŖ āĻāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ āĻāĻŋāĻ¤āĻ°ā§
"āĻāĻāĻ¨āĻŋāĻā§āĻĄ_āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¸ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨", āĻ¯ā§āĻŽāĻ¨ "lc" āĻāĻ°ā§, āĻāĻ° "fc" āĻāĻ° āĻāĻāĻ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻ¸āĻš
āĻ˛ā§āĻ¯āĻžāĻāĻŋāĻ¨ āĻā§āĻ¯āĻžāĻĒāĻŋāĻāĻžāĻ˛ āĻ˛ā§āĻāĻžāĻ° āĻļāĻžāĻ°ā§āĻĒ āĻāĻ¸ (U+1E9E) "āĻ˛ā§āĻā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻāĻ° āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§āĨ¤ āĻĢā§āĻ˛ā§āĻĄāĻā§āĻ¸
āĻāĻ āĻ āĻā§āĻˇāĻ°āĻāĻŋāĻ° āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ "ss" āĻšāĻŦā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¯ā§āĻŽāĻ¨āĻāĻŋ "lc" āĻŦāĻŋāĻāĻžāĻā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻā§āĻˇā§āĻ¤ā§āĻ°ā§
āĻ¯ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ 255/256 āĻ¸ā§āĻŽāĻžāĻ¨āĻž āĻ āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°ā§ āĻ¤āĻž āĻ˛ā§āĻā§āĻ˛ā§āĻ° āĻ āĻ§ā§āĻ¨ā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ¯ā§āĻā§āĻ¤, āĻāĻŦāĻ āĻ¤āĻžāĻ
āĻ¨āĻŋāĻˇāĻŋāĻĻā§āĻ§ āĻ¤āĻžāĻ, āĻ˛ā§āĻā§āĻ˛ā§āĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§
"\x{17F}\x{17F}", āĻ¯āĻž āĻ˛ā§āĻ¯āĻžāĻāĻŋāĻ¨ āĻā§āĻ āĻ āĻā§āĻˇāĻ° āĻĻā§āĻ°ā§āĻ āĻāĻ¸āĨ¤ āĻ¯ā§āĻšā§āĻ¤ā§ āĻ¸ā§āĻ āĻ āĻā§āĻˇāĻ°āĻāĻŋ āĻ¨āĻŋāĻā§āĻ
"s" āĻ¤ā§ āĻāĻžāĻāĻ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻĻā§āĻ° āĻĻā§āĻāĻŋāĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻāĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻāĻāĻā§āĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤
āĻāĻžāĻāĻ āĻāĻ°āĻž āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ U+1E9EāĨ¤
āĻ¯āĻĻāĻŋāĻ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻā§āĻ¸āĻĢā§āĻ˛ā§āĻĄāĻŋāĻāĻ¯āĻŧā§āĻ° āĻĻā§āĻāĻŋ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻĢāĻ°ā§āĻŽ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§, āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋāĻā§āĻ° āĻāĻ¨ā§āĻ¯
āĻāĻžāĻˇāĻž āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¯ā§ āĻāĻāĻāĻŋ āĻ āĻā§āĻˇāĻ° āĻāĻāĻžāĻ§āĻŋāĻ āĻ āĻā§āĻˇāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° āĻ¨āĻž, āĻāĻ āĻšāĻ¯āĻŧ
āĻĒāĻžāĻ°ā§āĻ˛ āĻā§āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž; āĻ¯āĻžāĻāĻšā§āĻ, CPAN āĻŽāĻĄāĻŋāĻāĻ˛ "āĻāĻāĻ¨āĻŋāĻā§āĻĄ::āĻā§āĻ¸āĻŋāĻ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻ¤ā§āĨ¤
āĻāĻ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻāĻ¨āĻ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¯āĻāĻ¨ "fc" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻĨāĻžāĻā§, āĻ āĻĨāĻŦāĻž āĻ¯āĻāĻ¨ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ¸āĻ°ā§āĻ āĻĨāĻžāĻā§
"āĻŽā§āĻ˛::"; āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĻā§āĻā§āĻ¨āĨ¤ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧāĻā§āĻ°āĻŽā§, āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° v5.16" āĻŦāĻž āĻ¤āĻžāĻ° āĻĒāĻ°ā§ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨
āĻ¸ā§āĻ¯ā§āĻ
fcntl āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻĢāĻžāĻāĻļāĻ¨, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ fcntl(2) āĻĢāĻžāĻāĻļāĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻŦāĻ˛āĻ¤ā§ āĻšāĻŦā§
Fcntl āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¸āĻ āĻŋāĻ āĻ§ā§āĻ°ā§āĻŦāĻ āĻ¸āĻāĻā§āĻāĻž āĻĒā§āĻ¤ā§ āĻĒā§āĻ°āĻĨāĻŽā§āĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖ āĻāĻŦāĻ āĻŽāĻžāĻ¨ āĻĢāĻŋāĻ°ā§
āĻ¨āĻŋāĻā§āĻ° "ioctl" āĻāĻ° āĻŽāĻ¤ āĻāĻžāĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
Fcntl āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
fcntl($filehandle, F_GETFL, $packed_return_buffer)
āĻ āĻĨāĻŦāĻž die "fcntl āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻž F_GETFL: $!";
"fcntl" āĻĨā§āĻā§ āĻĢā§āĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻĒāĻ¨āĻžāĻā§ "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤" āĻā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻžāĨ¤ āĻ¯ā§āĻŽāĻ¨ "ioctl", āĻāĻāĻž
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻĨā§āĻā§ 0 āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽā§āĻ¯āĻžāĻĒ āĻāĻ°ā§ āĻĒāĻžāĻ°ā§āĻ˛ā§ "0 āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ¤ā§āĻ¯"āĨ¤ āĻāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¸āĻ¤ā§āĻ¯
āĻŦā§āĻ˛āĻŋāĻ¯āĻŧāĻžāĻ¨ āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻŦāĻ 0 āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻĒā§āĻ°āĻ¸āĻā§āĻā§āĨ¤ āĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻĨā§āĻā§āĻ āĻ āĻŦā§āĻ¯āĻžāĻšāĻ¤āĻŋāĻĒā§āĻ°āĻžāĻĒā§āĻ¤ -w
āĻ āĻ¨ā§āĻĒāĻ¯ā§āĻā§āĻ¤ āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°ā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ "fcntl" āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ āĻ¨āĻž
fcntl(2)āĨ¤ Fcntl āĻŽāĻĄāĻŋāĻāĻ˛ āĻĻā§āĻā§āĻ¨ āĻŦāĻž āĻāĻĒāĻ¨āĻžāĻ° fcntl(2) āĻĢāĻžāĻāĻļāĻ¨ āĻāĻŋ āĻāĻžāĻ¨āĻ¤ā§ āĻŽā§āĻ¯āĻžāĻ¨āĻĒā§āĻ
āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻĒāĻ˛āĻŦā§āĻ§āĨ¤
āĻāĻāĻžāĻ¨ā§ "REMOTE" āĻ¨āĻžāĻŽā§āĻ° āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻ¸ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻžāĻ¤ā§ āĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¸ā§āĻ¤āĻ°āĨ¤ āĻāĻĒāĻ¨āĻžāĻā§ $| āĻāĻ˛ā§āĻāĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻā§āĻ° āĻāĻĒāĻ°, āĻ¯āĻĻāĻŋāĻ.
Fcntl qw(F_GETFL F_SETFL O_NONBLOCK) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
$flags = fcntl(REMOTE, F_GETFL, 0)
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻ¸āĻā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ¤āĻžāĻāĻž āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻā§āĻā§ āĻ¨āĻž: $!\n";
$flags = fcntl(REMOTE, F_SETFL, $flags | O_NONBLOCK)
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻ¸āĻā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ¤āĻžāĻāĻž āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!\n";
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "fcntl"āĨ¤
__āĻĢāĻžāĻāĻ˛__
āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻā§āĻā§āĻ¨ āĻ¯āĻž āĻĢāĻžāĻāĻ˛āĻāĻŋāĻ° āĻ¨āĻžāĻŽ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻāĻŋ āĻāĻā§āĨ¤
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ, āĻŦāĻž āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻ¨āĻž āĻĨāĻžāĻāĻ˛ā§ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤
āĻā§āĻ˛āĻž āĻ¯āĻĻāĻŋ OS āĻ¸ā§āĻ¤āĻ°ā§ āĻā§āĻ¨ āĻĒā§āĻ°āĻā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§ āĻ¨āĻž āĻĨāĻžāĻā§, āĻ¯ā§āĻŽāĻ¨āĻāĻŋ āĻāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻ¤ā§āĻ¤ā§āĻ¯āĻŧāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ¸āĻš "āĻāĻĒā§āĻ¨" āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻŽā§āĻŽāĻ°āĻŋ āĻ āĻŦāĻā§āĻā§āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤
āĻ¯ā§āĻā§āĻ¤āĻŋ, -1 āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤
āĻāĻāĻŋ āĻĒā§āĻ°āĻ§āĻžāĻ¨āĻ¤ "āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨" āĻāĻŦāĻ āĻ¨āĻŋāĻŽā§āĻ¨-āĻ¸ā§āĻ¤āĻ°ā§āĻ° POSIX tty-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻāĻŽā§āĻ¯āĻžāĻĒ āĻ¤ā§āĻ°āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§āĨ¤
āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻŋāĻ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨āĨ¤ āĻ¯āĻĻāĻŋ FILEHANDLE āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻšāĻ¯āĻŧ, āĻŽāĻžāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ
āĻĒāĻ°ā§āĻā§āĻˇ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ° āĻ¨āĻžāĻŽāĨ¤
āĻĻā§āĻāĻŋ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻāĻāĻ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤āĻā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻā§āĻāĻā§ āĻŦā§āĻ° āĻāĻ°āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§:
if (fileno(This) != -1 && fileno(this) == fileno(THAT)) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ "āĻāĻāĻŋ āĻāĻŦāĻ āĻāĻāĻŋ āĻĄā§āĻĒāĻ¸\n";
} elsif (fileno(this) != -1 && fileno(THAT) != -1) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻāĻāĻŋ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻ˛āĻžāĻĻāĻž"āĨ¤
"āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§\n";
} āĻ āĻ¨ā§āĻ¯ {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ "āĻāĻāĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ āĻ¨ā§āĻ¤āĻ¤ āĻāĻāĻāĻŋ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻ°ā§"āĨ¤
"āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§ āĻ¨ā§āĻ";
}
āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§ "āĻĢāĻžāĻāĻ˛ā§āĻ¨ā§" āĻāĻ° āĻāĻāĻ°āĻŖ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§āĨ¤ āĻāĻĒāĻ° āĻ
āĻ¸āĻā§āĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ dirfd(3) āĻŦāĻž āĻ āĻ¨ā§āĻ°ā§āĻĒ, āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° "āĻĢāĻžāĻāĻ˛ā§āĻ¨ā§" āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§; āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻā§āĻ¨ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻžāĻĄāĻŧāĻž āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, āĻāĻāĻž
āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ $ āĻ¸ā§āĻ āĻāĻ°ā§! (āĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ)āĨ¤
āĻĢā§āĻ˛āĻ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛,āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨
āĻāĻ˛ āĻĒāĻžāĻ˛(2), āĻŦāĻž āĻāĻāĻŋāĻ° āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻāĻ°āĻŖ, FILEHANDLE āĻāĨ¤ āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤, āĻŽāĻŋāĻĨā§āĻ¯āĻž
āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻ¨āĻž āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ˛ā§ āĻāĻāĻāĻŋ āĻŽāĻžāĻ°āĻžāĻ¤ā§āĻŽāĻ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§
āĻĒāĻžāĻ˛(ā§¨ā§Ļā§§ā§§), fcntl(2) āĻ˛āĻāĻŋāĻ, āĻŦāĻž lockf(3)āĨ¤ "flock" āĻšāĻ˛ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻĒā§āĻ°ā§āĻā§āĻŦāĻ˛ āĻĢāĻžāĻāĻ˛-āĻ˛āĻāĻŋāĻ
āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸, āĻ¯āĻĻāĻŋāĻ āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻĢāĻžāĻāĻ˛ āĻ˛āĻ āĻāĻ°ā§, āĻ°ā§āĻāĻ°ā§āĻĄ āĻ¨āĻ¯āĻŧāĨ¤
āĻĻā§āĻāĻŋ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻ -āĻ¸ā§āĻĒāĻˇā§āĻ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ¤āĻŋāĻšā§āĻ¯āĻāĻ¤ "āĻĢā§āĻ˛ā§āĻ" āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻšāĻ˛ āĻ¯ā§ āĻāĻāĻŋ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§
āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻāĻāĻžāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ˛āĻ āĻŽāĻā§āĻā§āĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻŦāĻ āĻ¯ā§ āĻ¤āĻžāĻ° āĻ¤āĻžāĻ˛āĻž āĻšāĻ¯āĻŧ āĻ¨āĻŋāĻāĻ āĻāĻĒāĻĻā§āĻļāĻāĨ¤ āĻāĻŽāĻ¨
āĻŦāĻŋāĻŦā§āĻāĻ¨āĻžāĻŽā§āĻ˛āĻ āĻ˛āĻāĻā§āĻ˛āĻŋ āĻāĻ°āĻ āĻ¨āĻŽāĻ¨ā§āĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻŽ āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻāĻŋ āĻ āĻĢāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻāĻ āĻ¯ā§ āĻŽāĻžāĻ¨ā§
āĻ¯ā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻā§āĻ˛āĻŋ "āĻĢā§āĻ˛āĻ" ââāĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¨āĻž āĻ¸ā§āĻā§āĻ˛āĻŋ "āĻĢā§āĻ˛āĻ" ââāĻĻāĻŋāĻ¯āĻŧā§ āĻ˛āĻ āĻāĻ°āĻž āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻĻā§āĻāĻž
perlport, āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ-āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻŽā§āĻ¯āĻžāĻ¨āĻĒā§āĻ
āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯. āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĒā§āĻ°ā§āĻā§āĻŦāĻ˛ āĻ˛āĻŋāĻāĻā§āĻ¨ āĻ¤āĻŦā§ āĻāĻ¤āĻŋāĻšā§āĻ¯āĻāĻ¤ āĻāĻāĻ°āĻŖ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°āĻž āĻāĻžāĻ˛
āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ (āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¤āĻž āĻ¨āĻž āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻŽāĻ¤ā§ āĻ˛āĻŋāĻāĻ¤ā§ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻŦāĻŋāĻ§āĻžāĻ¯āĻŧ āĻŦā§āĻ§ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻāĻĄāĻŋāĻāĻ¸āĻŋāĻā§āĻā§āĻ°āĻžāĻ¸āĻŋāĻ¸ (āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ "āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯" āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ)āĨ¤ āĻ¸ā§āĻ˛āĻžāĻāĻŋāĻļ āĻāĻ¨ā§āĻāĻ¤ā§āĻ¯
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻāĻĻā§āĻŦā§āĻ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻĒāĻĨā§ āĻŦāĻžāĻ§āĻž āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤)
OPERATION āĻšāĻ˛ LOCK_SH, LOCK_EX, āĻŦāĻž LOCK_UN-āĻāĻ° āĻāĻāĻāĻŋ, āĻ¸āĻŽā§āĻāĻŦāĻ¤ LOCK_NB-āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻ˛āĻŋāĻ¤ā§ˇ
āĻāĻ āĻ§ā§āĻ°ā§āĻŦāĻāĻā§āĻ˛āĻŋ āĻāĻ¤āĻŋāĻšā§āĻ¯āĻāĻ¤āĻāĻžāĻŦā§ 1, 2, 8 āĻāĻŦāĻ 4 āĻŽā§āĻ˛ā§āĻ¯āĻŦāĻžāĻ¨, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¨āĻžāĻŽāĻā§āĻ˛āĻŋ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ Fcntl āĻŽāĻĄāĻŋāĻāĻ˛ āĻĨā§āĻā§ āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°ā§āĻ¨, āĻšāĻ¯āĻŧ āĻ¸ā§āĻŦāĻ¤āĻ¨ā§āĻ¤ā§āĻ°āĻāĻžāĻŦā§, āĻŦāĻž āĻāĻāĻāĻŋ āĻĻāĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§
": flock" āĻā§āĻ¯āĻžāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ LOCK_SH āĻāĻāĻāĻŋ āĻļā§āĻ¯āĻŧāĻžāĻ° āĻāĻ°āĻž āĻ˛āĻā§āĻ° āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°ā§, LOCK_EX āĻāĻāĻāĻŋ āĻāĻā§āĻ¸āĻā§āĻ˛ā§āĻ¸āĻŋāĻ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°ā§ā§ˇ
āĻ˛āĻ, āĻāĻŦāĻ LOCK_UN āĻĒā§āĻ°ā§āĻŦā§ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻ˛āĻ āĻĒā§āĻ°āĻāĻžāĻļ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ LOCK_NB āĻŦāĻŋāĻāĻāĻ¯āĻŧāĻžāĻāĻ-āĻŦāĻž'āĻĄ āĻšāĻ¯āĻŧ
LOCK_SH āĻŦāĻž LOCK_EX āĻāĻ° āĻ¸āĻžāĻĨā§, āĻ¤āĻžāĻ°āĻĒāĻ° āĻ āĻĒā§āĻā§āĻˇāĻžāĻā§ āĻŦā§āĻ˛āĻ āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "āĻĢā§āĻ˛āĻ" ââāĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§
āĻ˛āĻ āĻāĻ¨ā§āĻ¯; āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻĒā§āĻ¯āĻŧā§āĻā§āĻ¨ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻĻā§āĻāĻ¤ā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸ āĻā§āĻ āĻāĻ°ā§āĻ¨āĨ¤
āĻā§āĻ˛ āĻ¸āĻŽāĻ¨ā§āĻŦāĻ¯āĻŧā§āĻ° āĻ¸āĻŽā§āĻāĻžāĻŦāĻ¨āĻž āĻāĻĄāĻŧāĻžāĻ¤ā§, āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻāĻ¨ āĻāĻā§ FILEHANDLE āĻĢā§āĻ˛āĻžāĻļ āĻāĻ°ā§
āĻ˛āĻ āĻāĻ°āĻž āĻŦāĻž āĻāĻ¨āĻ˛āĻ āĻāĻ°āĻžāĨ¤
āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻāĻŽā§āĻ˛ā§āĻļāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ lockf(3) āĻāĻžāĻ āĻāĻ°āĻž āĻ˛āĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¨āĻž, āĻāĻŦāĻ āĻāĻāĻŋ
FILEHANDLE āĻ˛ā§āĻāĻžāĻ° āĻ āĻāĻŋāĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻš āĻā§āĻ˛āĻž āĻĨāĻžāĻāĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ˇ āĻāĻ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻ¯ā§
lockf(3) āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§āĨ¤ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻāĻ āĻ¯āĻĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ¨āĻž āĻāĻ°ā§ lockf(3) āĻĒāĻ°āĻŋāĻĒā§āĻ°ā§āĻā§āĻˇāĻŋāĻ¤ā§ fcntl(2)
āĻ˛āĻāĻŋāĻ, āĻ¯āĻĻāĻŋāĻ, āĻ¤āĻžāĻ āĻāĻŋāĻ¨ā§āĻ¨ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻā§āĻŦ āĻŦā§āĻļāĻŋ āĻ˛ā§āĻāĻā§ āĻāĻžāĻŽāĻĄāĻŧāĻžāĻŦā§ āĻ¨āĻžāĨ¤
āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ fcntl(2) āĻāĻ° āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻĒāĻžāĻ˛(3) FILEHANDLE āĻāĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻ˛āĻž āĻĨāĻžāĻāĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ˇ
LOCK_SH āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ āĻĒāĻĄāĻŧā§āĻ¨ āĻāĻŦāĻ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ˛ā§āĻāĻžāĻ° āĻ āĻāĻŋāĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻš āĻā§āĻ˛āĻž āĻĨāĻžāĻāĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨
LOCK_EX.
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ "āĻĢā§āĻ˛āĻ" ââāĻāĻ° āĻāĻŋāĻā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻā§ āĻāĻŋāĻ¨āĻŋāĻ¸āĻā§āĻ˛āĻŋ āĻ˛āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž; āĻ¤ā§āĻŽāĻŋ āĻāĻ°āĻŦā§
āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ°āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ-āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ "fcntl" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻžāĻāĻ˛ā§ āĻĒāĻžāĻ°ā§āĻ˛āĻā§ āĻā§āĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ˛(2) āĻĢāĻžāĻāĻļāĻ¨, āĻāĻŦāĻ āĻ¤āĻžāĻ āĻ¤āĻžāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻĒā§āĻ°āĻĻāĻžāĻ¨ fcntl(2)-āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻ
āĻ āĻ¨ā§āĻāĻ°āĻŖ, "-Ud_flock" āĻ¸ā§āĻāĻ āĻĒāĻžāĻ¸ āĻāĻ°ā§ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ¯āĻāĻ¨ āĻāĻĒāĻ¨āĻŋ
āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻāĻžāĻ¨ā§ BSD āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻŽā§āĻ˛āĻŦāĻā§āĻ¸ āĻ ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄāĻžāĻ° āĻ°āĻ¯āĻŧā§āĻā§āĨ¤
# āĻāĻŽāĻĻāĻžāĻ¨āĻŋ LOCK_* āĻāĻŦāĻ SEEK_END āĻ§ā§āĻ°ā§āĻŦāĻ
Fcntl qw(:flock SEEK_END) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¸āĻžāĻŦ āĻ˛āĻ {
āĻāĻŽāĻžāĻ° ($fh) = @_;
flock($fh, LOCK_EX) āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻŽā§āĻ˛āĻŦāĻā§āĻ¸ āĻ˛āĻ āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž - $!\n";
# āĻāĻŦāĻ, āĻāĻŽāĻ°āĻž āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻā§āĻ āĻ¯ā§āĻā§āĻ¤ āĻšāĻ˛ā§...
āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§āĻ¨($fh, 0, SEEK_END) āĻ āĻĨāĻŦāĻž āĻŽāĻžāĻ°āĻž āĻ¯āĻžāĻ¨ "āĻāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž - $!\n";
}
āĻ¸āĻžāĻŦ āĻāĻ¨āĻ˛āĻ {
āĻāĻŽāĻžāĻ° ($fh) = @_;
flock($fh, LOCK_UN) āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻŽā§āĻ˛āĻŦāĻā§āĻ¸ āĻāĻ¨āĻ˛āĻ āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž - $!\n";
}
āĻā§āĻ˛ā§āĻ¨(āĻāĻŽāĻžāĻ° $mbox, ">>", "/usr/spool/mail/$ENV{'USER'}")
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻŽā§āĻāĻ˛āĻŦāĻā§āĻ¸ āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
āĻ˛āĻ ($mbox);
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $mbox $msg,"\n\n";
āĻāĻ¨āĻ˛āĻ ($mbox);
āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨āĻāĻžāĻ°ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻĒāĻžāĻ˛(2), āĻ˛āĻāĻā§āĻ˛āĻŋ āĻāĻ¤ā§āĻ¤āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ¸ā§āĻ¤ā§āĻ°ā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻšāĻ¯āĻŧ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ () āĻāĻ˛,
āĻ¯āĻžāĻ°āĻž āĻāĻ°ā§ āĻā§āĻ¤ā§āĻ āĻ āĻŦāĻ˛āĻŽā§āĻŦāĻ¨ āĻāĻ°āĻž āĻāĻŦāĻļā§āĻ¯āĻ fcntl(2) āĻĢāĻžāĻāĻļāĻ¨ āĻ¤āĻžāĻĻā§āĻ° āĻšāĻžāĻ°āĻžāĻ¨
āĻ˛āĻ, āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻā§āĻ˛āĻŋ āĻ˛āĻŋāĻāĻ¤ā§ āĻā§āĻ°ā§āĻ¤āĻ°āĻāĻžāĻŦā§ āĻāĻ āĻŋāĻ¨ āĻāĻ°ā§ āĻ¤ā§āĻ˛ā§āĨ¤
āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻ¨ā§āĻ¯ DB_File āĻĻā§āĻā§āĻ¨ flock() āĻāĻĻāĻžāĻšāĻ°āĻŖāĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻĢā§āĻ˛āĻ"āĨ¤
āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ
āĻ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ(2) āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻāĻāĻ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ āĻāĻ˛āĻŽāĻžāĻ¨
āĻāĻāĻ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻāĻŋ āĻĒāĻŋāĻ¤āĻžāĻŽāĻžāĻ¤āĻžāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¤ā§ āĻāĻžāĻāĻ˛ā§āĻĄ āĻĒāĻŋāĻĄ, āĻāĻžāĻāĻ˛ā§āĻĄ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¤ā§ 0 āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ,
āĻ āĻĨāĻŦāĻž "undef" āĻ¯āĻĻāĻŋ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧāĨ¤ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§ (āĻāĻŦāĻ āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻ˛āĻ āĻšāĻ¯āĻŧ
āĻ¸ā§āĻ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§āĻā§āĻ˛āĻŋ) āĻāĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻŦāĻžāĻāĻŋ āĻ¸āĻŦāĻāĻŋāĻā§ āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§
āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ (), āĻāĻāĻŋāĻā§ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻĻāĻā§āĻˇ āĻāĻ°ā§ āĻ¤ā§āĻ˛āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻ¯āĻ¤ā§āĻ¨ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§ (āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻĄā§āĻāĻž āĻĒā§āĻˇā§āĻ āĻžāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻĒāĻŋ-āĻ āĻ¨-āĻ°āĻžāĻāĻ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§), āĻāĻāĻŋāĻā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻļāĻžāĻ˛ā§ āĻāĻ°ā§ āĻ¤ā§āĻ˛ā§
āĻāĻ¤ āĻāĻ¯āĻŧā§āĻ āĻĻāĻļāĻ āĻ§āĻ°ā§ āĻŽāĻžāĻ˛ā§āĻāĻŋāĻāĻžāĻ¸ā§āĻāĻŋāĻāĻ¯āĻŧā§āĻ° āĻĻā§āĻˇā§āĻāĻžāĻ¨ā§āĻ¤āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻžāĻāĻ˛ā§āĻĄ āĻĒā§āĻ°āĻ¸ā§āĻ¸ āĻĢā§āĻ°ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻāĻāĻāĻĒā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻĢā§āĻ˛āĻžāĻļ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§,
āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻāĻŋāĻā§ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻ āĻĻā§āĻā§āĻ¨)āĨ¤ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻšāĻ¤ā§, āĻāĻĒāĻ¨āĻŋ āĻĒāĻžāĻ°ā§āĻ¨
$| āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ (āĻāĻāĻ°ā§āĻāĻŋāĻ¤ā§ $AUTOFLUSH) āĻ āĻĨāĻŦāĻž "autoflush()" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻāĻ˛ āĻāĻ°ā§āĻ¨
āĻĄā§āĻĒā§āĻ˛āĻŋāĻā§āĻ āĻāĻāĻāĻĒā§āĻ āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ¯ā§āĻā§āĻ¨ā§ āĻā§āĻ˛āĻž āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ "IO::āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛"āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻ¨āĻ āĻāĻĒāĻ¨āĻžāĻ° āĻŦāĻžāĻā§āĻāĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻ¨āĻž āĻāĻ°ā§ "āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ" āĻāĻ°ā§āĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻāĻŽā§āĻŦāĻŋāĻā§āĻ˛āĻŋ āĻ¸āĻāĻā§āĻ°āĻš āĻāĻ°āĻŦā§āĻ¨āĨ¤ āĻāĻžāĻ˛ā§
āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, āĻāĻĒāĻ¨āĻŋ $SIG{CHLD} āĻā§ "ignore" āĻ āĻ¸ā§āĻ āĻāĻ°ā§ āĻāĻāĻŋ āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ perlipc āĻĻā§āĻā§āĻ¨
āĻŽāĻ°āĻŋāĻŦāĻ¨ā§āĻĄ āĻļāĻŋāĻļā§āĻĻā§āĻ° āĻāĻžāĻāĻāĻž āĻāĻžāĻāĻž āĻāĻŦāĻ āĻāĻžāĻāĻžāĻ° āĻāĻ°āĻ āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ āĻāĻ°āĻž āĻļāĻŋāĻļā§āĻāĻŋ STDIN āĻāĻŦāĻ STDOUT āĻāĻ° āĻŽāĻ¤ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§āĻ° āĻāĻ¤ā§āĻ¤āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ°ā§ āĻšāĻ¯āĻŧ
āĻ¯ā§āĻā§āĻ˛āĻŋ āĻāĻ¸āĻ˛ā§ āĻāĻāĻāĻŋ āĻĒāĻžāĻāĻĒ āĻŦāĻž āĻ¸āĻā§āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻāĻ¯ā§āĻā§āĻ¤, āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻ°āĻŋāĻŽā§āĻ
āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° (āĻ¯ā§āĻŽāĻ¨, āĻŦāĻ˛ā§āĻ¨, āĻāĻāĻāĻŋ CGI āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻŦāĻž āĻāĻāĻāĻŋ āĻĒāĻāĻā§āĻŽāĻŋāĻāĻž āĻāĻžāĻ āĻāĻāĻāĻŋ āĻĻā§āĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻļā§āĻ˛ āĻĨā§āĻā§ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§)
āĻāĻžāĻŦāĻŦā§āĻ¨ āĻ¨āĻž āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°ā§āĻā§āĻ¨āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸ā§āĻā§āĻ˛āĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻā§āĻ˛āĻ¤ā§ āĻšāĻŦā§ āĻāĻĒāĻ¨āĻžāĻ° / dev / āĻ¨āĻžāĻ˛ āĻ¯āĻĻāĻŋ āĻā§āĻ¨ā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻšāĻ¯āĻŧāĨ¤
āĻāĻŋāĻā§ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻ¨ā§āĻĄā§āĻ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ () āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ¨āĻ¯āĻŧ, āĻĒāĻžāĻ°ā§āĻ˛
āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ () āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ°ā§āĻāĻžāĻ°ā§āĨ¤ āĻāĻŽā§āĻ˛ā§āĻļāĻ¨ āĻĄāĻŋāĻāĻžāĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ
āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻ¸ā§āĻ¤āĻ°, "āĻāĻāĻ¨āĻŋāĻā§āĻ¸" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¯āĻ¤āĻāĻž āĻ¸āĻŽā§āĻāĻŦ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ āĻšāĻ¤ā§ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ ().
āĻ¤āĻŦā§ āĻāĻ° āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻĒā§āĻ°ā§āĻā§āĻŦāĻ˛ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§ āĻā§āĻĄā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤
āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlfork āĻĻā§āĻā§āĻ¨.
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻĢāĻ°ā§āĻ"āĨ¤
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸
"āĻ˛āĻŋāĻā§āĻ¨" āĻĢāĻžāĻāĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻŦāĻŋāĻ° āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻā§āĻˇāĻŖāĻž āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻāĻŋāĻā§ =
āĻĒāĻ°ā§āĻā§āĻˇāĻž: @>>>>
$str, $%, '$'āĨ¤ int($num)
.
$str = "āĻāĻāĻā§āĻ";
$num = $ āĻāĻ°āĻ/$ āĻĒāĻ°āĻŋāĻŽāĻžāĻŖ;
$~ = 'āĻāĻŋāĻā§';
āĻ˛āĻŋāĻā§āĻ¨
āĻ āĻ¨ā§āĻ āĻŦāĻŋāĻŦāĻ°āĻŖ āĻāĻŦāĻ āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°āĻĢāĻ°ā§āĻŽ āĻĻā§āĻā§āĻ¨āĨ¤
āĻĢāĻ°ā§āĻŽāĻ˛āĻžāĻāĻ¨ āĻāĻŦāĻŋ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻāĻāĻŋ "āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ" āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻāĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĢāĻžāĻāĻļāĻ¨, āĻ¯āĻĻāĻŋāĻ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋāĻā§āĻ āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻž
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ (āĻĒāĻžāĻ°āĻ˛āĻĢāĻ°ā§āĻŽ āĻĻā§āĻā§āĻ¨) āĻāĻŦāĻŋāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž, āĻ¸ā§āĻĨāĻžāĻĒāĻ¨
āĻāĻāĻāĻĒā§āĻ āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻāĻāĻāĻĒā§āĻ āĻ¸āĻā§āĻāĻ¯āĻŧāĻ, $^A (āĻŦāĻž āĻāĻāĻ°ā§āĻāĻŋāĻ¤ā§ $ACCUMULATOR)āĨ¤
āĻ āĻŦāĻļā§āĻˇā§, āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ "āĻ˛āĻŋāĻāĻ¨" āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻāĻ¨ $^A-āĻāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻāĻžāĻ°ā§ āĻāĻžāĻ°ā§ āĻāĻžāĻā§ āĻ˛ā§āĻāĻž āĻšāĻ¯āĻŧ
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻāĻĒāĻ¨āĻŋ $^AāĻ āĻĒāĻĄāĻŧāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° $^A āĻāĻŦāĻžāĻ° "" āĻ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĢāĻ°ā§āĻŽā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋ āĻ˛āĻžāĻāĻ¨ā§ āĻāĻāĻāĻŋ "āĻĢāĻ°ā§āĻŽāĻ˛āĻžāĻāĻ¨" āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ "āĻĢāĻ°ā§āĻŽāĻ˛āĻžāĻāĻ¨" āĻĢāĻžāĻāĻļāĻ¨ āĻ¨āĻŋāĻā§āĻ
āĻāĻŦāĻŋāĻ¤ā§ āĻāĻ¤āĻā§āĻ˛āĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ˛āĻžāĻāĻ¨ āĻāĻŽāĻŦā§āĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¤āĻž āĻāĻŋāĻ¨ā§āĻ¤āĻž āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ "~"
āĻāĻŦāĻ "~~" āĻā§āĻā§āĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻŦāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ˛āĻžāĻāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¤āĻžāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻāĻŋ āĻāĻāĻ āĻ°ā§āĻāĻ°ā§āĻĄ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻāĻžāĻ§āĻŋāĻ āĻĢāĻ°ā§āĻŽāĻ˛āĻžāĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻ āĻŋāĻ āĻ¯ā§āĻŽāĻ¨ "āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ"
āĻ¸āĻāĻāĻ˛āĻ
āĻāĻĒāĻ¨āĻŋ āĻāĻŦāĻŋāĻ° āĻāĻžāĻ°āĻĒāĻžāĻļā§ āĻĄāĻŦāĻ˛ āĻā§āĻ āĻ°āĻžāĻāĻ˛ā§ āĻ¸āĻ¤āĻ°ā§āĻ āĻĨāĻžāĻā§āĻ¨, āĻāĻžāĻ°āĻŖ āĻāĻāĻāĻŋ "@" āĻ āĻā§āĻˇāĻ° āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻ¨āĻžāĻŽā§āĻ° āĻļā§āĻ°ā§ āĻŽāĻžāĻ¨ā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻŦā§āĨ¤ "āĻĢāĻ°ā§āĻŽāĻ˛āĻžāĻāĻ¨" āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻĻā§āĻāĻž
āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°āĻĢāĻ°ā§āĻŽ āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻĒā§āĻ āĻā§āĻ¯āĻžāĻĒāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ "āĻ˛āĻŋāĻā§āĻ¨" āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻā§āĻ¨, āĻāĻĒāĻ¨āĻŋ āĻā§āĻāĻā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻā§āĻ˛āĻž āĻ¸āĻšāĻ ("open $fh, ">", \$output") āĻāĻŦāĻ āĻāĻ¤ā§ āĻ˛āĻŋāĻā§āĻ¨
āĻ¯ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§
getc FILEHANDLE
getc
FILEHANDLE āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ¨āĻĒā§āĻ āĻĢāĻžāĻāĻ˛ āĻĨā§āĻā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ āĻā§āĻˇāĻ°āĻāĻŋ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ, āĻŦāĻž
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇā§ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻŦāĻž āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻāĻŋāĻ˛ (āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ $! āĻšāĻ¯āĻŧ
āĻ¸ā§āĻ)āĨ¤ āĻ¯āĻĻāĻŋ FILEHANDLE āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, STDIN āĻĨā§āĻā§ āĻĒāĻĄāĻŧā§āĨ¤ āĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§ āĻ¨āĻ¯āĻŧ
āĻĻāĻā§āĻˇ. āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻāĻŋ āĻāĻžāĻĄāĻŧāĻž āĻāĻāĻ āĻ āĻā§āĻˇāĻ° āĻāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋ āĻ¨āĻŋāĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻā§āĨ¤ āĻāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻ°āĻ āĻāĻŋāĻā§ āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻ¨:
āĻ¯āĻĻāĻŋ ($BSD_STYLE) {
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ "stty cbreak /dev/tty 2>&1";
}
āĻ āĻ¨ā§āĻ¯ {
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ "stty", '-icanon', 'eol', "\001";
}
$key = getc(STDIN);
āĻ¯āĻĻāĻŋ ($BSD_STYLE) {
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ "stty -cbreak /dev/tty 2>&1";
}
āĻ āĻ¨ā§āĻ¯ {
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ 'stty', 'icanon', 'eol', '^@'; # ASCII NUL
}
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "\n";
$BSD_STYLE āĻ¸ā§āĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻļā§āĻ˛āĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻā§āĻĄāĻŧā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§
āĻĒāĻžāĻ āĻāĨ¤
"POSIX::getattr" āĻĢāĻžāĻāĻļāĻ¨ POSIX āĻ§āĻžāĻ°āĻ¨āĻž āĻāĻ°āĻž āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻāĻŋ āĻāĻ°āĻ āĻĒā§āĻ°ā§āĻā§āĻŦāĻ˛āĻāĻžāĻŦā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¸āĻŽā§āĻŽāĻ¤āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻāĻāĻ¤āĻŽ CPAN āĻĨā§āĻā§ "Term::ReadKey" āĻŽāĻĄāĻŋāĻāĻ˛āĻāĻŋāĻ āĻĻā§āĻā§āĻ¨
<http://www.cpan.org> āĻ¸āĻžāĻāĻāĨ¤
āĻā§āĻāĻ˛āĻāĻāĻ¨
āĻāĻāĻŋ āĻāĻāĻ āĻ¨āĻžāĻŽā§āĻ° C āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§, āĻ¯āĻž āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§
āĻĨā§āĻā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ˛āĻāĻāĻ¨ /etc/utmp, āĻ¯āĻĻāĻŋ āĻā§āĻ¨. āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
"getpwuid"āĨ¤
$login = getlogin || getpwuid($<) || "āĻāĻŋāĻ˛āĻ°āĻ¯āĻŧ";
āĻĒā§āĻ°āĻŽāĻžāĻŖā§āĻāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ "getlogin" āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž: āĻāĻāĻŋ "getpwuid" āĻāĻ° āĻŽāĻ¤ā§ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻ¨āĻ¯āĻŧāĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻā§āĻāĻ˛āĻāĻāĻ¨"āĨ¤
getpeername SOCKET
SOCKET āĻ¸āĻāĻ¯ā§āĻā§āĻ° āĻ āĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤ā§āĻ° āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž sockaddr āĻ āĻŋāĻāĻžāĻ¨āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤
āĻ¸āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
$hersockaddr = getpeername(SOCK);
($port, $iaddr) = sockaddr_in($hersocaddr);
$herhostname = gethostbyaddr($iaddr, AF_INET);
$herstraddr = inet_ntoa($iaddr);
getpgrp āĻĒāĻŋāĻāĻāĻĄāĻŋ
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ PID-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻˇā§āĻ ā§ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻĒā§āĻ¤ā§ 0 āĻāĻ° āĻāĻāĻāĻŋ āĻĒāĻŋāĻāĻāĻĄāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻ°ā§āĻĒāĨ¤ āĻāĻāĻāĻŋ āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ˛ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŦā§
āĻŽā§āĻļāĻŋāĻ¨ āĻ¯āĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ āĻ¨āĻž getpgrp(2)āĨ¤ āĻ¯āĻĻāĻŋ PID āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻā§āĻ°ā§āĻĒāĨ¤ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ "getpgrp" āĻāĻ° POSIX āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¤āĻž āĻāĻ°ā§ āĻ¨āĻž
āĻāĻāĻāĻŋ PID āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "PID==0" āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "getpgrp"āĨ¤
getppid
āĻ āĻāĻŋāĻāĻžāĻŦāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻāĻĄāĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¨ā§āĻ: v5.8.1 āĻāĻŦāĻ v5.16.0 āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¨āĻ¨-POSIX āĻ¤ā§ āĻāĻžāĻ āĻāĻ°āĻŦā§
āĻĨā§āĻ°ā§āĻĄ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻžāĻ˛āĻā§ (āĻāĻŦāĻ āĻĄā§āĻŦāĻŋāĻ¯āĻŧāĻžāĻ¨ GNU/kFreeBSD āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ) āĻ¯āĻž
LinuxThreads āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻ āĻāĻŽā§āĻ˛ā§āĻļāĻ¨āĻāĻŋ āĻ¤āĻāĻ¨ āĻĨā§āĻā§ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĻā§āĻā§āĻ¨
āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ $$āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "getppid"āĨ¤
āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻĒāĻžāĻ¨ āĻ¯āĻž, WHO
āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž, āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻˇā§āĻ ā§ āĻŦāĻž āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ (āĻĻā§āĻāĻž
āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻĒāĻžāĻ¨(2).) āĻāĻāĻāĻŋ āĻŽāĻžāĻ°āĻžāĻ¤ā§āĻŽāĻ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻŦā§ āĻ¯āĻĻāĻŋ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž āĻ¯āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻĒāĻžāĻ¨(2).
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻā§āĻ°ā§āĻāĻĒā§āĻ°ā§āĻ°āĻŋāĻāĻŋ"āĨ¤
getpwnam NAME
āĻā§āĻāĻā§āĻ°āĻ¨āĻžāĻŽ NAME
gethostbyname NAME
getnetbyname NAME
protobyname NAME āĻĒāĻžāĻ¨
getpwuid UID
getgrgid GID
NAME,PROTO āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻžāĻ°ā§āĻā§āĻ° āĻ¨āĻžāĻŽ āĻ¨āĻŋāĻ¨
gethostbyaddr ADDR,ADDRTYPE
getnetbyaddr ADDR, ADDRTYPE
āĻĒā§āĻ°ā§āĻā§āĻŦāĻžāĻāĻ¨āĻŽā§āĻŦāĻ° NUMBER āĻĒāĻžāĻ¨
getservbyport āĻĒā§āĻ°ā§āĻ, PROTO
getpwent
āĻā§āĻāĻā§āĻ°ā§āĻ¨ā§āĻ
gethostent
getnetent
getprotoent
āĻ¸ā§āĻŦāĻžāĻŽā§āĻ˛āĻ
setpwent
āĻ¸ā§āĻāĻā§āĻ°ā§āĻ¨ā§āĻ
āĻ¸ā§āĻāĻšā§āĻ¸ā§āĻā§āĻ¨ā§āĻ āĻ¸ā§āĻā§āĻāĻĒā§āĻ¨
āĻ¸ā§āĻāĻ¨ā§āĻā§āĻ¨ā§āĻ āĻ¸ā§āĻā§āĻāĻĒā§āĻ¨
āĻ¸ā§āĻāĻĒā§āĻ°ā§āĻā§āĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸ā§āĻā§āĻāĻĒā§āĻ¨
āĻ¸ā§āĻ āĻ¸āĻžāĻ°ā§āĻā§āĻ¨ā§āĻ STAYOPEN
endpwent
āĻāĻ¨ā§āĻĄāĻā§āĻ°ā§āĻ¨ā§āĻ
endhostent
endnetent
endprotoent
āĻļā§āĻˇ āĻĒāĻ°āĻŋāĻāĻ°ā§āĻ¯āĻžāĻāĻžāĻ°ā§
āĻāĻ āĻ°ā§āĻāĻŋāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¸āĻŋ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ¤ā§ āĻ¤āĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ°ā§āĻĒā§āĻ° āĻŽāĻ¤ā§āĻāĨ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ
āĻĒā§āĻ°āĻ¸āĻā§āĻ, āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻ°ā§āĻāĻŋāĻ¨ āĻĨā§āĻā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ:
# 0 1 2 3 4
( $name, $passwd, $gid, $members) = getgr*
( $name, $aliases, $addrtype, $net ) = getnet*
( $name, $aliases, $port, $proto) = getserv*
( $name, $aliases, $proto ) = getproto*
( $name, $aliases, $addrtype, $length, @addrs ) = gethost*
( $name, $passwd, $uid, $gid, $āĻā§āĻāĻž,
$comment, $gcos, $dir, $shell, $expire ) = getpw*
# 5 6 7 8 9
(āĻ¯āĻĻāĻŋ āĻāĻ¨ā§āĻā§āĻ°āĻŋāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨āĻž āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻāĻāĻāĻŋ āĻāĻāĻ āĻ āĻ°ā§āĻĨāĻšā§āĻ¨ āĻ¸āĻ¤ā§āĻ¯ āĻŽāĻžāĻ¨āĨ¤)
$gcos āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻ¸āĻ āĻŋāĻ āĻ āĻ°ā§āĻĨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ° āĻāĻ¸āĻ˛ āĻ¨āĻžāĻŽ āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ (āĻ˛āĻāĻāĻ¨ āĻ¨āĻžāĻŽā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§) āĻāĻŦāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¤āĻĨā§āĻ¯āĨ¤
āĻ¸āĻ¤āĻ°ā§āĻ āĻĨāĻžāĻā§āĻ¨, āĻ¯āĻžāĻāĻšā§āĻ, āĻ āĻ¨ā§āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ°āĻž āĻāĻ āĻ¤āĻĨā§āĻ¯ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¯āĻŧ āĻāĻŦāĻ
āĻ¤āĻžāĻ āĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž āĻāĻŦāĻ āĻ¤āĻžāĻ $gcos āĻāĻ˛āĻā§āĻāĻŋāĻ¤ (āĻĻā§āĻā§āĻ¨ perlsec)āĨ¤ āĻĻā§āĻ¯
$passwd āĻāĻŦāĻ $shell, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻ¨āĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻ°āĻž āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻāĻŦāĻ āĻ˛āĻāĻāĻ¨ āĻļā§āĻ˛āĻ āĻāĻ˛āĻā§āĻāĻŋāĻ¤, āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻāĻāĻ āĻāĻžāĻ°āĻŖāĨ¤
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§, āĻāĻĒāĻ¨āĻŋ āĻ¨āĻžāĻŽāĻāĻŋ āĻĒāĻžāĻŦā§āĻ¨, āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻ¨āĻžāĻŽā§āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻāĻāĻŋ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻ¨ā§ˇ
āĻ¯ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻĒāĻ¨āĻŋ āĻ āĻ¨ā§āĻ¯ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻĒā§āĻ¤ā§, āĻāĻāĻž āĻ¯āĻžāĻ āĻšā§āĻ āĻ¨āĻž āĻā§āĻ¨. (āĻ¯āĻĻāĻŋ āĻāĻ¨ā§āĻā§āĻ°āĻŋāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦ āĻ¨āĻž āĻĨāĻžāĻā§
āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒāĻžāĻ¨āĨ¤) āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ:
$uid = getpwnam($name);
$name = getpwuid($num);
$name = getpwent();
$gid = getgrnam($name);
$name = getgrgid($num);
$name = getgrent();
#āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ
In getpw*() $āĻā§āĻāĻž, $āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻāĻŦāĻ $āĻāĻā§āĻ¸āĻĒāĻžāĻ¯āĻŧāĻžāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ āĻŦāĻŋāĻļā§āĻˇ
āĻ āĻ¨ā§āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤āĨ¤ $āĻā§āĻāĻž āĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻšāĻ˛ā§, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°āĨ¤ āĻ¯āĻĻāĻŋ
āĻāĻāĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤, āĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĄāĻŋāĻ¸ā§āĻ āĻā§āĻāĻž āĻāĻ¨āĻā§āĻĄ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ $ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻšāĻ¯āĻŧ
āĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°āĨ¤ āĻāĻāĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻšāĻ˛ā§ āĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻŋāĻā§ āĻāĻ¨āĻā§āĻĄ āĻāĻ°ā§
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻĒā§āĻ°āĻļāĻžāĻ¸āĻ¨āĻŋāĻ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯āĨ¤ āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ $āĻā§āĻāĻž āĻā§āĻˇā§āĻ¤ā§āĻ° āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
$āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻŦāĻž $age, āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¯āĻž āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻŦāĻ¯āĻŧāĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤āĨ¤ āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§
$comment āĻā§āĻˇā§āĻ¤ā§āĻ° $class āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ $expire āĻā§āĻˇā§āĻ¤ā§āĻ°, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻŽā§āĻ¯āĻŧāĻžāĻĻ āĻļā§āĻˇ āĻšāĻāĻ¯āĻŧāĻžāĻā§ āĻāĻ¨āĻā§āĻĄ āĻāĻ°ā§
āĻ ā§āĻ¯āĻžāĻāĻžāĻāĻ¨ā§āĻ āĻŦāĻž āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄā§āĻ° āĻ¸āĻŽāĻ¯āĻŧāĻāĻžāĻ˛āĨ¤ āĻĒā§āĻ°āĻžāĻĒā§āĻ¯āĻ¤āĻž āĻāĻŦāĻ āĻāĻ° āĻ¸āĻ āĻŋāĻ āĻ āĻ°ā§āĻĨā§āĻ° āĻāĻ¨ā§āĻ¯
āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°, āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻāĻ°ā§āĻ¨ getpwnam(3) āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° pwd.h āĻĢāĻžāĻāĻ˛.
āĻāĻĒāĻ¨āĻŋ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĨā§āĻā§āĻ āĻāĻžāĻ¨āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻĒāĻ¨āĻžāĻ° $āĻā§āĻāĻž āĻāĻŦāĻ $āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋāĻ° āĻ āĻ°ā§āĻĨ āĻā§ āĻāĻŦāĻ
"āĻāĻ¨āĻĢāĻŋāĻ" āĻŽāĻĄāĻŋāĻāĻ˛ āĻāĻŦāĻ āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻĒāĻ¨āĻžāĻ° $ expir āĻā§āĻˇā§āĻ¤ā§āĻ° āĻāĻā§ āĻāĻŋāĻ¨āĻž
"d_pwquota", "d_pwage", "d_pwchange", "d_pwcomment", āĻāĻŦāĻ "d_pwexpire"āĨ¤ āĻāĻžāĻ¯āĻŧāĻž
āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻā§āĻŦāĻ˛ āĻ¤āĻāĻ¨āĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻŦāĻŋāĻā§āĻ°ā§āĻ¤āĻž āĻ¸ā§āĻā§āĻ˛āĻŋāĻā§ āĻ¸ā§āĻŦāĻā§āĻāĻžāĻ¤āĻāĻžāĻŦā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§ āĻĨāĻžāĻā§
āĻĢā§āĻ¯āĻžāĻļāĻ¨ āĻ¯ā§ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻ¸āĻŋ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻ°ā§āĻāĻŋāĻ¨ āĻāĻ˛ āĻāĻ°āĻž āĻāĻžāĻ¯āĻŧāĻž āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĒāĻžāĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻšāĻ¨
āĻŦāĻŋāĻļā§āĻˇāĻžāĻ§āĻŋāĻāĻžāĻ°ā§āĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻ˛āĻŽāĻžāĻ¨ āĻŦāĻž āĻ¯āĻĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻā§ āĻāĻžāĻ¯āĻŧāĻž(3) āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻĢāĻžāĻāĻļāĻ¨
V (āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¸ā§āĻ˛āĻžāĻ°āĻŋāĻ¸ āĻāĻŦāĻ āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸)āĨ¤ āĻāĻāĻāĻŋ āĻŽāĻžāĻ˛āĻŋāĻāĻžāĻ¨āĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ¯ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ
āĻāĻžāĻ¯āĻŧāĻž āĻĒāĻžāĻ¸āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻ¸āĻŽā§āĻāĻžāĻŦāĻ¨āĻž āĻāĻŽāĨ¤
$members āĻāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻŽāĻžāĻ¨ getgr*() āĻ˛āĻāĻāĻ¨ āĻ¨āĻžāĻŽā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨-āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻā§āĻ°ā§āĻĒā§āĻ° āĻ¸āĻĻāĻ¸ā§āĻ¯āĻĻā§āĻ°
āĻāĻ¨ā§āĻ¯ gethost*() āĻĢāĻžāĻāĻļāĻ¨, āĻ¯āĻĻāĻŋ "h_errno" āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻāĻŋ C-āĻ¤ā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¤āĻž āĻšāĻŦā§
$ āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĻā§? āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧāĨ¤ @addrs āĻŽāĻžāĻ¨ a āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§
āĻ¸āĻĢāĻ˛ āĻāĻ˛ āĻšāĻ˛ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻāĻžāĻāĻāĻž āĻ āĻŋāĻāĻžāĻ¨āĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĨ¤
āĻāĻ¨ā§āĻāĻžāĻ°āĻ¨ā§āĻ āĻĄā§āĻŽā§āĻ¨ā§, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ āĻŋāĻāĻžāĻ¨āĻž āĻāĻžāĻ° āĻŦāĻžāĻāĻ āĻĻā§āĻ°ā§āĻ; āĻāĻĒāĻ¨āĻŋ āĻŦāĻ˛ā§ āĻāĻāĻž āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻŋāĻā§āĻāĻž āĻāĻāĻ°āĻāĻŽ:
($a,$b,$c,$d) = āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ('W4',$addr[0]);
āĻ¸āĻā§āĻ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻāĻāĻŋāĻā§ āĻāĻŋāĻā§āĻāĻž āĻ¸āĻšāĻ āĻāĻ°ā§ āĻ¤ā§āĻ˛ā§:
āĻ¸āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
$iaddr = inet_aton("127.1"); # āĻŦāĻž āĻ¯ā§ āĻā§āĻ¨ āĻ āĻŋāĻāĻžāĻ¨āĻž
$name = gethostbyaddr($iaddr, AF_INET);
# āĻŦāĻž āĻ āĻ¨ā§āĻ¯ āĻĒāĻĨā§ āĻ¯āĻžāĻā§āĻā§
$straddr = inet_ntoa($iaddr);
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤āĻāĻžāĻŦā§, āĻāĻāĻĒāĻŋ āĻ āĻŋāĻāĻžāĻ¨āĻžāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻšā§āĻ¸ā§āĻāĻ¨āĻžāĻŽ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
āĻ¸āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
$packed_ip = gethostbyname("www.perl.org");
āĻ¯āĻĻāĻŋ (āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ $packed_ip) {
$ip_address = inet_ntoa($packed_ip);
}
āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§āĻ¨ āĻ¯ā§ "gethhostbyname()" āĻā§ SCALAR āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻāĻāĻŋāĻ° āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨
āĻ¸āĻāĻā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
"getprotobynumber" āĻĢāĻžāĻāĻļāĻ¨, āĻ¯āĻĻāĻŋāĻ āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¨ā§āĻ¯āĻŧ, āĻāĻā§
āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ°, āĻ¤āĻžāĻ āĻ¸āĻžāĻŦāĻ§āĻžāĻ¨:
getprotobynumber $number eq 'icmp' # āĻā§āĻ˛
getprotobynumber($number eq 'icmp') # āĻāĻ¸āĻ˛ā§ āĻāĻ° āĻŽāĻžāĻ¨ā§
getprotobynumber($number) eq 'icmp' # āĻāĻāĻāĻžāĻŦā§ āĻāĻžāĻ˛ā§
āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻ˛āĻŋāĻ¸ā§āĻā§āĻ° āĻā§āĻ¨ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§ āĻā§āĻ¨ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻā§ āĻ¤āĻž āĻŽāĻ¨ā§ āĻāĻ°āĻ¤ā§ āĻāĻ°āĻ¤ā§ āĻā§āĻ˛āĻžāĻ¨ā§āĻ¤ āĻšāĻ¯āĻŧā§ āĻĒāĻĄāĻŧāĻ˛ā§
āĻŽāĻžāĻ¨, āĻ¨āĻžāĻŽā§āĻ° āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸āĻā§āĻ˛āĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ: "āĻĢāĻžāĻāĻ˛::āĻ¸ā§āĻā§āĻ¯āĻžāĻ",
"Net::hostent", "Net::netent", "Net::protoent", "Net::servent", "Time::gmtime",
"āĻ¸āĻŽāĻ¯āĻŧ::āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ", āĻāĻŦāĻ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§::āĻā§āĻ°ā§āĻ¨ā§āĻ"āĨ¤ āĻāĻ āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻŦāĻŋāĻ˛ā§āĻ āĻāĻ¨ āĻāĻāĻžāĻ°āĻ°āĻžāĻāĻĄ, āĻ¸āĻ°āĻŦāĻ°āĻžāĻš
āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¯āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻ¨āĻžāĻŽ āĻĻāĻŋāĻ¯āĻŧā§ āĻŦāĻ¸ā§āĻ¤ā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
File::stat āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
User::pwent āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
$is_his = (stat($filename)->uid == pwent($whoever)->uid);
āĻ¯āĻĻāĻŋāĻ āĻĻā§āĻā§ āĻŽāĻ¨ā§ āĻšāĻā§āĻā§ āĻ¤āĻžāĻ°āĻž āĻāĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻāĻ˛ (uid), āĻ¤āĻžāĻ°āĻž āĻ¨āĻ¯āĻŧ,
āĻāĻžāĻ°āĻŖ āĻāĻāĻāĻŋ "File::stat" āĻ āĻŦāĻā§āĻā§āĻ āĻāĻāĻāĻŋ "User::pwent" āĻ āĻŦāĻā§āĻā§āĻ āĻĨā§āĻā§ āĻāĻ˛āĻžāĻĻāĻžāĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻā§āĻāĻĒāĻāĻ¯āĻŧāĻžāĻ¨āĻžāĻŽ" āĻĨā§āĻā§ āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻāĻ¨ā§āĻĄāĻ¸āĻžāĻ°ā§āĻā§āĻ¨ā§āĻ"āĨ¤
getsockname SOCKET
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ SOCKET āĻ¸āĻāĻ¯ā§āĻā§āĻ° āĻāĻ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤ā§āĻ° āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž sockaddr āĻ āĻŋāĻāĻžāĻ¨āĻžāĻāĻŋ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¨
āĻ āĻŋāĻāĻžāĻ¨āĻžāĻāĻŋ āĻāĻžāĻ¨ā§āĻ¨ āĻ¨āĻž āĻāĻžāĻ°āĻŖ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ° āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻāĻāĻĒāĻŋ āĻ°āĻ¯āĻŧā§āĻā§
āĻāĻĒāĻ° āĻāĻ¸āĻ¤ā§ āĻĒāĻžāĻ°ā§.
āĻ¸āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
$mysockaddr = getsockname(SOCK);
($port, $myaddr) = sockaddr_in($mysoccaddr);
printf "%s [%s] āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻ āĻāĻ°ā§āĻ¨\n",
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° gethostbyaddr($myaddr, AF_INET),
inet_ntoa($myaddr);
getsockopt SOCKET,LEVEL,OPTNAME
āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¸ā§āĻ¤āĻ°ā§ SOCKET-āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ OPTNAME āĻ¨āĻžāĻŽā§āĻ° āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻŋ āĻāĻŋāĻā§āĻāĻžāĻ¸āĻž āĻāĻ°ā§ā§ˇ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¸āĻā§āĻā§āĻ° āĻĒā§āĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§ āĻāĻāĻžāĻ§āĻŋāĻ āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ āĻ¸ā§āĻ¤āĻ°ā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨, āĻ¤āĻŦā§ āĻāĻŽāĻĒāĻā§āĻˇā§
āĻāĻā§āĻāĻ¤āĻŽ āĻ¸āĻā§āĻ āĻ¸ā§āĻ¤āĻ° SOL_SOCKET ("āĻ¸āĻā§āĻ" āĻŽāĻĄāĻŋāĻāĻ˛ā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤) āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻāĻŦā§āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋ
āĻ āĻ¨ā§āĻ¯ āĻ¸ā§āĻ¤āĻ°ā§ āĻĒā§āĻ°āĻļā§āĻ¨ā§āĻ° āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ā§āĻ° āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ āĻ¨āĻŽā§āĻŦāĻ°
āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻāĻāĻŋāĻ¤. āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻāĻŋ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°āĻ¤ā§
TCP āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, LEVEL āĻāĻ° āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ āĻ¨āĻŽā§āĻŦāĻ°ā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤
TCP, āĻ¯āĻž āĻāĻĒāĻ¨āĻŋ "getprotobyname" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻĢāĻžāĻāĻļāĻ¨ āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°āĻž āĻ¸āĻā§āĻ āĻŦāĻŋāĻāĻ˛ā§āĻĒ, āĻŦāĻž āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻāĻĄ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻĒāĻ° "undef", $! āĻ¤ā§ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻžāĻ°āĻŖ āĻ¸āĻšāĨ¤ āĻļā§āĻ§ā§ āĻāĻŋ āĻāĻā§
āĻĒā§āĻ¯āĻžāĻāĻĄ āĻ¸ā§āĻā§āĻ°āĻŋāĻ LEVEL āĻāĻŦāĻ OPTNAME āĻāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§; āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ getsockopt(2) āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯āĨ¤ āĻ
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻšāĻ˛ āĻ¯ā§ āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻĢāĻ˛āĻžāĻĢāĻ˛āĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻāĻĄ
āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻ¯āĻž āĻāĻĒāĻ¨āĻŋ "i" (āĻŦāĻž "I") āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ "āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĄāĻŋāĻā§āĻĄ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻ¨āĻžāĻāĻ˛ā§āĻ° āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻāĻāĻāĻŋ āĻ¸āĻā§āĻā§ āĻ¸āĻā§āĻˇāĻŽ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ°āĻ¯āĻŧā§āĻā§:
āĻ¸āĻā§āĻ qw(:all);
āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ (āĻāĻŽāĻžāĻ° $tcp = getprotobyname("tcp"))
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "tcp āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ āĻ¨āĻŽā§āĻŦāĻ° āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ";
# āĻāĻŽāĻžāĻ° $tcp = IPPROTO_TCP; # āĻŦāĻŋāĻāĻ˛ā§āĻĒ
āĻāĻŽāĻžāĻ° $packed = getsockopt($socket, $tcp, TCP_NODELAY)
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "getsockopt TCP_NODELAY: $!";
my $nodelay = unpack("I", $packed);
āĻŽā§āĻĻā§āĻ°āĻŖ "āĻ¨āĻžāĻāĻ˛ā§āĻ° āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻĒāĻ°āĻŋāĻŖāĻ¤ āĻšāĻ¯āĻŧā§āĻā§",
$āĻ¨ā§āĻĄā§āĻ˛ā§? "āĻŦāĻ¨ā§āĻ§\n" : "āĻāĻžāĻ˛ā§\n";
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻā§āĻāĻ¸āĻāĻĒāĻ"āĨ¤
āĻā§āĻ˛ā§āĻŦ EXPR
āĻā§āĻ˛ā§āĻŦ
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§, āĻŽāĻžāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻ¸āĻŽā§āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŖā§āĻ° āĻāĻāĻāĻŋ (āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻāĻžāĻ˛āĻŋ) āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
EXPR āĻāĻ° āĻ¯ā§āĻŽāĻ¨ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻļā§āĻ˛ /bin/csh āĻāĻ°āĻ¤ā§ āĻšāĻŦā§. āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§, āĻā§āĻ˛ā§āĻŦ
āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻ¸āĻŽā§āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŖā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§, āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻļā§āĻˇ āĻšāĻ¯āĻŧā§ āĻā§āĻ˛ā§ undef āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĨ¤
āĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĢāĻžāĻāĻļāĻ¨ āĻ¯āĻž "" āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§, āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ "" āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ°āĻ āĻāĻ˛ā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
perlop-āĻ "I/O āĻ āĻĒāĻžāĻ°ā§āĻāĻ°"-āĻ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ "āĻā§āĻ˛ā§āĻŦ" āĻ¤āĻžāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋāĻā§ āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸ā§ āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°ā§ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¸ā§āĻāĻŽā§āĻ¨ā§āĻāĻā§ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§
āĻĒā§āĻĨāĻ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨āĨ¤ āĻ¯ā§āĻŽāĻ¨, "glob("*.c *.h")" āĻ¸āĻŦ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ a āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§ .c or .h
āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ "āĻā§āĻ˛ā§āĻŦ(."* *")" āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻāĻžāĻā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§
āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸ āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŽāĻ¨ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽāĻā§āĻ˛āĻŋāĻā§ āĻā§āĻ˛ā§āĻŦ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻĨāĻžāĻāĻŦā§
āĻāĻāĻŋ āĻ°āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ spacey āĻĢāĻžāĻāĻ˛āĻ¨āĻžāĻŽā§āĻ° āĻāĻžāĻ°āĻĒāĻžāĻļā§ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻāĻĻā§āĻ§ā§āĻ¤āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, glob
āĻ¯ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ "e" āĻāĻ° āĻĒāĻ°ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻĒā§āĻ¸ āĻāĻŦāĻ āĻāĻāĻāĻŋ "f" āĻāĻā§, āĻ¯ā§āĻā§āĻ¨ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨:
@spacies = ;
@spacies = glob '"*ef*"';
@spacies = āĻā§āĻ˛ā§āĻŦ q("*e f*");
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻĒā§āĻ¤ā§ āĻšāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
@spacies = āĻā§āĻ˛ā§āĻŦ "'*${var}e f*'";
@spacies = āĻā§āĻ˛ā§āĻŦ qq("*${var}e f*");
āĻ¯āĻĻāĻŋ āĻ -āĻāĻžāĻ˛āĻŋ āĻ§āĻ¨ā§āĻ°ā§āĻŦāĻ¨ā§āĻ§āĻ¨ā§ "āĻā§āĻ˛ā§āĻŦ"-āĻ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻāĻāĻŽāĻžāĻ¤ā§āĻ° āĻāĻ¯āĻŧāĻžāĻāĻ˛ā§āĻĄāĻāĻžāĻ°ā§āĻĄ āĻ āĻā§āĻˇāĻ° āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻā§āĻ¨ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻ¨ā§āĻ
āĻŽāĻŋāĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻ āĻ¨ā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻŋ āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°ā§
āĻ¨āĻ¯āĻŧāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻĄāĻŧāĻž āĻĢāĻ˛ āĻāĻŦāĻ āĻ°āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ:
@āĻ āĻ¨ā§āĻ = āĻā§āĻ˛ā§āĻŦ "{āĻāĻĒā§āĻ˛,āĻāĻŽā§āĻā§,āĻā§āĻ°āĻŋ}={āĻ¸āĻŦā§āĻ,āĻšāĻ˛ā§āĻĻ,āĻ˛āĻžāĻ˛}";
āĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻāĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ "āĻĢāĻžāĻāĻ˛::āĻā§āĻ˛ā§āĻŦ" āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻĻā§āĻāĻž
āĻĢāĻžāĻāĻ˛::āĻŦāĻŋāĻļāĻĻ āĻŦāĻŋāĻŦāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛ā§āĻŦ, "bsd_glob" āĻ¸āĻš āĻ¯āĻž āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸āĻā§ a āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§ āĻ¨āĻž
āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻŦāĻŋāĻāĻžāĻāĻāĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻā§āĻ˛ā§āĻŦ"āĨ¤
gmtime EXPR
gmtime
āĻ āĻŋāĻ "āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ" āĻāĻ° āĻŽāĻ¤ā§ āĻāĻžāĻ āĻāĻ°ā§ āĻ¤āĻŦā§ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻā§āĻ°āĻŋāĻ¨āĻāĻāĻ āĻāĻžāĻāĻŽ āĻā§āĻ¨āĨ¤
āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: āĻ¯āĻāĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, $isdst, gmtime āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻļā§āĻˇ āĻŽāĻžāĻ¨āĻāĻŋ āĻšāĻ¯āĻŧ
āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ 0. GMT-āĻ āĻā§āĻ¨ā§ āĻĄā§āĻ˛āĻžāĻāĻ āĻ¸ā§āĻāĻŋāĻ āĻāĻžāĻāĻŽ āĻ¨ā§āĻāĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "gmtime"āĨ¤
āĻ˛ā§āĻŦā§āĻ˛ā§ āĻ¯āĻžāĻ¨
āĻāĻā§āĻ¸āĻĒā§āĻ°ā§ āĻ¯āĻžāĻ¨
&NAME āĻ āĻ¯āĻžāĻ¨
"goto LABEL" āĻĢāĻ°ā§āĻŽāĻāĻŋ LABEL āĻ˛ā§āĻŦā§āĻ˛āĻ¯ā§āĻā§āĻ¤ āĻŦāĻŋāĻŦā§āĻ¤āĻŋāĻāĻŋ āĻā§āĻāĻā§ āĻĒāĻžāĻ¯āĻŧ āĻāĻŦāĻ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻļā§āĻ°ā§ āĻāĻ°ā§
āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻāĻŋ "āĻ¸āĻ°ā§āĻ" āĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻŦā§āĻ˛āĻ āĻŦāĻž āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻĨā§āĻā§ āĻŦā§āĻ°āĻŋāĻ¯āĻŧā§ āĻāĻ¸āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻžāĨ¤ āĻāĻāĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĄāĻžāĻ¯āĻŧāĻ¨āĻžāĻŽāĻŋāĻ āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ āĻ¨ā§āĻ¯ āĻā§āĻĨāĻžāĻ āĻ¯ā§āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻŦā§, āĻāĻ° āĻŦāĻžāĻāĻ°ā§āĻ
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨, āĻ¤āĻŦā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ āĻ¨ā§āĻ¯ āĻāĻŋāĻā§ āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻ¯ā§āĻŽāĻ¨ "āĻļā§āĻˇ" āĻŦāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻžāĻ˛
"āĻŽāĻ°āĻž"āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ˛ā§āĻāĻ āĻāĻāĻ¨āĻ "āĻā§āĻā§" āĻāĻ° āĻāĻ āĻ°ā§āĻĒāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧāĻ¤āĻž āĻ āĻ¨ā§āĻāĻŦ āĻāĻ°ā§āĻ¨āĻ¨āĻŋ (āĻāĻ¨
āĻĒāĻžāĻ°ā§āĻ˛, āĻ āĻ°ā§āĻĨāĻžā§; āĻ¸āĻŋ āĻ āĻ¨ā§āĻ¯ āĻŦāĻŋāĻˇāĻ¯āĻŧ)āĨ¤ (āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻšāĻ˛ āĻ¯ā§ āĻ¸āĻŋ āĻ¨āĻžāĻŽ āĻĻā§āĻ¯āĻŧ āĻ¨āĻž
āĻ˛ā§āĻĒ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻ¸āĻā§āĻā§ āĻŽāĻŋāĻ˛āĻŋāĻ¤ loops. āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻ°ā§, āĻāĻŦāĻ āĻāĻāĻŋ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻāĻžāĻ āĻžāĻŽā§āĻāĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§
āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻžāĻˇāĻžāĻ¯āĻŧ "goto" āĻāĻ°āĨ¤)
"goto EXPR" āĻĢāĻ°ā§āĻŽāĻāĻŋ āĻāĻāĻāĻŋ āĻā§āĻĄ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻŦāĻž āĻāĻāĻāĻŋ āĻ˛ā§āĻŦā§āĻ˛ āĻ¨āĻžāĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ "EXPR" āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻž āĻāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻā§āĻĄ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ā§ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋ āĻ¨ā§āĻā§ "goto &NAME" āĻāĻ° āĻŽāĻ¤ā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻšāĻŦā§ā§ˇ
āĻāĻāĻŋ "goto __SUB__" āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻā§āĻāĻ˛ āĻ°āĻŋāĻāĻžāĻ°āĻļāĻ¨ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°āĨ¤
āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻŋ āĻāĻāĻāĻŋ āĻ˛ā§āĻŦā§āĻ˛ āĻ¨āĻžāĻŽā§āĻ° āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻ˛ā§, āĻāĻ° āĻ¸ā§āĻ¯ā§āĻāĻāĻŋ āĻāĻ¤āĻŋāĻļā§āĻ˛āĻāĻžāĻŦā§ āĻ¸āĻŽāĻžāĻ§āĻžāĻ¨ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
āĻāĻāĻŋ FORTRAN āĻĒā§āĻ°āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž "goto" āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ āĻāĻ¤ā§āĻ¯āĻž āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž āĻ¯āĻĻāĻŋ
āĻāĻĒāĻ¨āĻŋ āĻŦāĻāĻžāĻ¯āĻŧ āĻ°āĻžāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻ āĻāĻ°āĻā§āĻ¨:
goto ("FOO", "BAR", "GLARCH")[$i];
āĻ¯ā§āĻŽāĻ¨ āĻāĻ āĻāĻĻāĻžāĻšāĻ°āĻŖā§ āĻĻā§āĻāĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§, "goto EXPR" "āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻŽāĻ¤ā§ āĻĻā§āĻāĻžāĻā§āĻā§" āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻĨā§āĻā§ āĻ āĻŦā§āĻ¯āĻžāĻšāĻ¤āĻŋāĻĒā§āĻ°āĻžāĻĒā§āĻ¤āĨ¤
āĻāĻāĻŋ āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°ā§ āĻāĻ āĻā§āĻĄāĻŧāĻž āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻ¤āĻžāĻ° āĻ¯ā§āĻā§āĻ¤āĻŋāĻā§ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻāĻ°ā§ āĻ¨āĻž (āĻ āĻāĻ¤ā§āĻ¯āĻž)āĨ¤
"goto("NE")."XT"" "goto NEXT" āĻāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¨āĻžāĻŽāĻ§āĻžāĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§,
āĻāĻ āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨āĻŽā§āĻ¨ā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻāĻā§.
āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖā§ āĻāĻžāĻāĻĒ āĻĻāĻŋāĻ¤ā§ "goto LABEL" āĻŦāĻž "goto EXPR"-āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻāĻžāĻ°āĻŋ āĻāĻ°ā§āĻ¨āĨ¤ āĻ¤āĻžāĻ°āĻĒāĻ°ā§āĻ, āĻāĻāĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻā§āĻ¨ā§ āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖā§ āĻ¯ā§āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž
āĻĒā§āĻ°āĻžāĻ°āĻŽā§āĻāĻŋāĻāĻ¤āĻž, āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻŦāĻž āĻāĻāĻāĻŋ "āĻĢā§āĻ°āĻ" āĻ˛ā§āĻĒāĨ¤ āĻāĻāĻŋ āĻ¯ā§āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž
āĻĻā§āĻ°ā§ āĻ āĻĒā§āĻāĻŋāĻŽāĻžāĻāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻŽāĻ§ā§āĻ¯ā§.
"goto &NAME" āĻĢāĻ°ā§āĻŽāĻāĻŋ "goto" āĻāĻ° āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ°ā§āĻĒ āĻĨā§āĻā§ āĻŦā§āĻļ āĻāĻ˛āĻžāĻĻāĻžāĨ¤ āĻāĻ¸āĻ˛ā§, āĻāĻāĻž
āĻāĻāĻŋ āĻŽā§āĻā§āĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ āĻ°ā§āĻĨā§ āĻā§āĻā§ āĻ¨āĻ¯āĻŧ āĻāĻŦāĻ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻ˛āĻā§āĻā§āĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ āĻ¨ā§āĻ
āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻā§āĻā§āĻ¸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻāĻāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§ (āĻāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸ā§āĻ āĻāĻ°āĻž āĻ¯ā§āĻā§āĻ¨ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻžāĻ°āĻžāĻ˛ā§
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ()) āĻāĻŦāĻ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻ¤āĻžāĻ° āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ āĻāĻžāĻ°ā§āĻ¨ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¨āĻžāĻŽāĻ¯ā§āĻā§āĻ¤ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻāĻ˛ āĻāĻ°ā§
āĻŽāĻžāĻ¨ @_. āĻāĻāĻŋ "AUTOLOAD" āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ āĻ¯āĻž āĻ āĻ¨ā§āĻ¯ āĻ˛ā§āĻĄ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¯āĻŧ
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻžāĻ¨ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻ āĻ¨ā§āĻ¯ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨āĻāĻŋāĻā§ āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛
āĻ¸ā§āĻĨāĻžāĻ¨ (āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§ @_ āĻ¤ā§ āĻ¯ā§āĻā§āĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻāĻžāĻ° āĻāĻ°āĻž āĻāĻžāĻĄāĻŧāĻž
āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨āĨ¤) "goto" āĻāĻ° āĻĒāĻ°ā§, āĻāĻŽāĻ¨āĻāĻŋ "āĻāĻ˛āĻžāĻ°"āĻ āĻ¤āĻž āĻŦāĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§ āĻ¨āĻž
āĻāĻ āĻ°ā§āĻāĻŋāĻ¨ āĻĒā§āĻ°āĻĨāĻŽ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ.
NAME āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻ¨āĻžāĻŽ āĻšāĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻž; āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ a
āĻā§āĻĄ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻŦāĻž āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻ¯āĻž āĻāĻāĻāĻŋ āĻā§āĻĄ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ā§āĻ° āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§āĨ¤
grep āĻŦā§āĻ˛āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž
grep EXPR, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻāĻāĻŋ āĻāĻ¤ā§āĻŽāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻ āĻ°āĻāĻŽ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻ āĻ°āĻāĻŽ āĻ¨āĻ¯āĻŧ, , grep(1) āĻāĻŦāĻ āĻāĻ° āĻāĻ¤ā§āĻŽā§āĻ¯āĻŧāĨ¤ āĻāĻŋāĻ¤āĻ°ā§
āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻāĻāĻž āĻ°ā§āĻā§āĻ˛āĻžāĻ° āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§āĻ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻ¨āĻ¯āĻŧāĨ¤
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ˛āĻ āĻŦāĻž EXPR āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ (āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋāĻ¤ā§ $_ āĻ¸ā§āĻ āĻāĻ°ā§
āĻāĻĒāĻžāĻĻāĻžāĻ¨) āĻāĻŦāĻ āĻ¸ā§āĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯
āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨. āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§, āĻŦāĻžāĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻāĻŋāĻ˛āĨ¤
@foo = grep(!/^#/, @āĻŦāĻžāĻ°); # āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻāĻāĻžāĻāĻž
āĻŦāĻž āĻ¸āĻŽāĻžāĻ¨āĻāĻžāĻŦā§,
@foo = grep {!/^#/} @bar; # āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻāĻāĻžāĻāĻž
āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ $_ āĻšāĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽāĻžāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻŽ, āĻ¤āĻžāĻ āĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻ¯āĻĻāĻŋāĻ āĻāĻāĻŋ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤, āĻāĻāĻŋ āĻāĻĻā§āĻāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ā§āĻ° āĻāĻžāĻ°āĻŖ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ
LIST āĻāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻāĻāĻāĻžāĻŦā§, grep āĻŽā§āĻ˛ āĻāĻĒāĻ¨āĻžāĻŽāĻā§āĻ˛āĻŋāĻā§ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧ
āĻ¤āĻžāĻ˛āĻŋāĻāĻž, āĻ āĻ¨ā§āĻāĻāĻž āĻ˛ā§āĻĒā§āĻ° āĻ¸ā§āĻāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻŽāĻ¤ā§āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻāĻĒāĻ¨āĻžāĻŽ āĻāĻ°ā§āĨ¤ āĻāĻāĻžāĻ,
āĻā§āĻ°ā§āĻĒ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻāĻŋ "āĻĢāĻ°āĻ", "āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ°" āĻŦāĻž
āĻ āĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ "grep") āĻāĻ¸āĻ˛ā§ āĻŽā§āĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋāĻā§ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤
āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻā§āĻĄ āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŋāĻā§ āĻāĻĄāĻŧāĻžāĻ¨ā§ āĻāĻāĻŋāĻ¤āĨ¤
āĻ¯āĻĻāĻŋ $_ āĻ¸ā§āĻ āĻ¸ā§āĻ¯ā§āĻā§ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻšāĻ¯āĻŧ āĻ¯ā§āĻāĻžāĻ¨ā§ "grep" āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧ (āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻā§āĻˇāĻŖāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻ āĻĒā§āĻ°āĻāĻ˛āĻŋāĻ¤ "my $_" āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻ) āĻ¤āĻžāĻ°āĻĒāĻ°, āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻāĻĒāĻ¨āĻžāĻŽ āĻāĻ°āĻž āĻāĻžāĻĄāĻŧāĻžāĻ
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻĒāĻžāĻĻāĻžāĻ¨, $_ āĻŦā§āĻ˛āĻā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻšāĻā§āĻā§; āĻ āĻ°ā§āĻĨāĻžā§, āĻāĻāĻž āĻĻā§āĻāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž
āĻŦāĻžāĻāĻ°ā§ āĻĨā§āĻā§, āĻā§āĻ¨ā§ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻĒāĻžāĻ°ā§āĻļā§āĻŦāĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻĄāĻŧāĻžāĻ¨ā§āĨ¤
BLOCK āĻŦāĻž EXPR-āĻāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¤ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ "āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ°" āĻĻā§āĻā§āĻ¨āĨ¤
āĻšā§āĻā§āĻ¸ āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻ¸
āĻšā§āĻā§āĻ¸ EXPR āĻā§ āĻāĻāĻāĻŋ āĻšā§āĻā§āĻ¸ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ (āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¯āĻž 0, "0x", āĻŦāĻž "0b" āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, "oct" āĻĻā§āĻā§āĻ¨āĨ¤) āĻ¯āĻĻāĻŋ EXPR āĻšāĻ¯āĻŧ
āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻšā§āĻā§āĻ¸ '0xAf'; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ '175'
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻšā§āĻā§āĻ¸ 'aF'; # āĻāĻāĻ
āĻšā§āĻā§āĻ¸ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻāĻāĻžāĻ°āĻĢā§āĻ˛ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻ
āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻā§āĻ°āĻŋāĻāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤ āĻ¨ā§āĻ¤ā§āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸ āĻāĻŋāĻ¨āĻ¤āĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž, āĻāĻŋāĻ¨ā§āĻ¨ āĻ āĻā§āĻā§āĻŦāĻ°(). āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§
āĻšā§āĻā§āĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŋāĻā§, "printf", "sprintf", āĻāĻŦāĻ "unpack" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°ā§āĻ¨
āĻā§āĻ¨ āĻŦāĻŋāĻ˛ā§āĻāĻāĻ¨ "āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻĢāĻžāĻāĻļāĻ¨ āĻ¨ā§āĻāĨ¤ āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ (āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨)
āĻ āĻ¨ā§āĻ¯ āĻŽāĻĄāĻŋāĻāĻ˛ā§ āĻ¨āĻžāĻŽ āĻ°āĻĒā§āĻ¤āĻžāĻ¨āĻŋ āĻāĻ°āĻ¤ā§ āĻāĻā§āĻā§āĻ āĻŽāĻĄāĻŋāĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ (āĻŦāĻž āĻāĻ¤ā§āĻ¤āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ°āĻ¸ā§āĻ¤ā§āĻ°ā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤)āĨ¤ āĻĻā§āĻ¯
"āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ "āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻā§ āĻāĻ˛ āĻāĻ°ā§āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĻā§āĻā§āĻ¨ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨",
perlmod, āĻāĻŦāĻ āĻ°āĻĒā§āĻ¤āĻžāĻ¨āĻŋāĻāĻžāĻ°āĻāĨ¤
āĻ¸ā§āĻāĻ STR,SUBSTR,āĻĒāĻāĻŋāĻļāĻ¨
āĻ¸ā§āĻāĻ STR,SUBSTR
āĻāĻ¨āĻĄā§āĻā§āĻ¸ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ āĻ¨ā§āĻ¯āĻāĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ¯āĻŧāĻžāĻāĻ˛ā§āĻĄāĻāĻžāĻ°ā§āĻĄ āĻāĻžāĻĄāĻŧāĻž-
āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤-āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻŽā§āĻ¯āĻžāĻā§āĻ° āĻāĻāĻ°āĻŖā§āĻ° āĻŽāĻ¤ā§āĨ¤ āĻāĻāĻŋ āĻāĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
POSITION-āĻ āĻŦāĻž āĻĒāĻ°ā§ STR-āĻ SUBSTR-āĻāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻāĻāĻ¨āĻžāĨ¤ āĻ¯āĻĻāĻŋ POSITION āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ,
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻļā§āĻ°ā§ āĻĨā§āĻā§ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻļā§āĻ°ā§ āĻāĻ°ā§āĨ¤ POSITION āĻāĻ° āĻļā§āĻ°ā§āĻ° āĻāĻā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŦāĻž āĻ¤āĻžāĻ° āĻļā§āĻˇā§āĻ° āĻĒāĻ°ā§ āĻ§āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§āĻ¨ āĻāĻāĻŋ āĻļā§āĻ°ā§ āĻŦāĻž āĻļā§āĻˇ,
āĻ¯āĻĨāĻžāĻā§āĻ°āĻŽā§ POSITION āĻāĻŦāĻ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻļā§āĻ¨ā§āĻ¯ āĻāĻŋāĻ¤ā§āĻ¤āĻŋāĻāĨ¤ āĻ¯āĻĻāĻŋ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻ¯āĻŧ
āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ, "āĻ¸ā§āĻā§" -1 āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
int EXPR
int EXPR āĻāĻ° āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻ āĻāĻļ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ
āĻ°āĻžāĻāĻ¨ā§āĻĄāĻŋāĻāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ āĻĢāĻžāĻāĻļāĻ¨: āĻāĻāĻāĻŋ āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ 0 āĻāĻ° āĻĻāĻŋāĻā§ āĻā§āĻ āĻāĻ°ā§ āĻāĻŦāĻ āĻĻā§āĻāĻŋ āĻāĻžāĻ°āĻŖ
āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŽā§āĻļāĻŋāĻ¨ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻŋāĻ°ā§āĻ§ā§ āĻĢāĻ˛āĻžāĻĢāĻ˛āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, "int(-6.725/0.025)" āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ -268 āĻā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°ā§
āĻ¸āĻ āĻŋāĻ -269; āĻāĻžāĻ°āĻŖ āĻāĻāĻž āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻ āĻ¨ā§āĻ āĻŦā§āĻļāĻŋ āĻāĻžāĻ˛ā§ āĻ˛āĻžāĻā§ -268.99999999999994315658
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§. āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤, "sprintf", "printf", āĻ āĻĨāĻŦāĻž "POSIX::floor" āĻāĻŦāĻ "POSIX::ceil"
āĻĢāĻžāĻāĻļāĻ¨ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻā§āĻāĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻāĻžāĻ˛ āĻĒāĻ°āĻŋāĻŦā§āĻļāĻ¨ āĻāĻ°āĻŦā§ int().
ioctl āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻĢāĻžāĻāĻļāĻ¨, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ ioctls(2) āĻĢāĻžāĻāĻļāĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻŦāĻ˛āĻ¤ā§ āĻšāĻŦā§
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ "sys/ioctl.ph"; # āĻ¸āĻŽā§āĻāĻŦāĻ¤
# $Config{archlib}/sys/ioctl.ph
āĻ¸āĻ āĻŋāĻ āĻĢāĻžāĻāĻļāĻ¨ āĻ¸āĻāĻā§āĻāĻž āĻĒā§āĻ¤ā§āĨ¤ āĻ¯āĻĻāĻŋ sys/ioctl.ph āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨ā§āĻ āĻŦāĻž āĻ¨ā§āĻ
āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋ āĻļāĻŋāĻ°ā§āĻ˛ā§āĻā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻā§āĻ° āĻ°ā§āĻ˛ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¸āĻ āĻŋāĻ āĻ¸āĻāĻā§āĻāĻž āĻāĻā§
āĻĢāĻžāĻāĻ˛ āĻ¯ā§āĻŽāĻ¨ . (āĻāĻāĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ h2ph āĻ¯ā§ āĻ¸āĻā§āĻā§ āĻāĻ¸ā§
āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻŋāĻ āĻ¯āĻž āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ¤ā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻ āĻ¤ā§āĻā§āĻāĨ¤) SCALAR āĻĒāĻĄāĻŧāĻž āĻšāĻŦā§ āĻāĻŦāĻ/āĻ āĻĨāĻŦāĻž
FUNCTION āĻāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§ āĻ˛āĻŋāĻāĻŋāĻ¤; SCALAR āĻāĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŽāĻžāĻ¨ā§āĻ° āĻāĻāĻāĻŋ C āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻšāĻŦā§
āĻĒā§āĻ°āĻā§āĻ¤ "ioctl" āĻāĻ˛ā§āĻ° āĻ¤ā§āĻ¤ā§āĻ¯āĻŧ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ (āĻ¯āĻĻāĻŋ SCALAR āĻāĻ° āĻā§āĻ¨ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¨āĻž āĻĨāĻžāĻā§
āĻŽāĻžāĻ¨ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻŽāĻžāĻ¨ āĻāĻā§, āĻ¸ā§āĻ āĻŽāĻžāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ°ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻŦā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŽāĻžāĻ¨ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤āĨ¤ āĻāĻāĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻāĻŋ āĻĻāĻŋāĻ¤ā§, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻāĻā§ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§ āĻāĻāĻāĻŋ 0 āĻ¯ā§āĻ āĻāĻ°ā§āĻ¨
āĻāĻāĻŋāĨ¤) āĻāĻ° āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻŽā§āĻ¯āĻžāĻ¨āĻŋāĻĒā§āĻ˛ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ "āĻĒā§āĻ¯āĻžāĻ" āĻāĻŦāĻ "āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ" āĻĢāĻžāĻāĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
"ioctl" āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻāĻžāĻ āĻžāĻŽā§āĨ¤
"ioctl" (āĻāĻŦāĻ "fcntl") āĻāĻ° āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ:
āĻ¯āĻĻāĻŋ āĻāĻāĻ¸ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§: āĻ¤āĻžāĻšāĻ˛ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§:
-1 āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨
0 āĻ¸ā§āĻā§āĻ°āĻŋāĻ "0 āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ¤ā§āĻ¯"
āĻ āĻ¨ā§āĻ¯ āĻāĻŋāĻā§ āĻ¯ā§ āĻ¸āĻāĻā§āĻ¯āĻž
āĻāĻāĻāĻžāĻŦā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯ā§āĻ° āĻāĻĒāĻ° āĻ¸āĻ¤ā§āĻ¯ āĻāĻŦāĻ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ, āĻ¤āĻŦā§āĻ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻšāĻā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻĒā§āĻ°āĻā§āĻ¤ āĻŽāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§āĻ¨:
$retval = ioctl(...) || -1;
printf "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§āĻā§ %d\n", $retval;
āĻŦāĻŋāĻļā§āĻˇ āĻ¸ā§āĻā§āĻ°āĻŋāĻ "0 āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ¤ā§āĻ¯" āĻĨā§āĻā§ āĻ āĻŦā§āĻ¯āĻžāĻšāĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§ -w āĻ āĻ¨ā§āĻĒāĻ¯ā§āĻā§āĻ¤ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ āĻāĻŋāĻ¯ā§āĻ
āĻ§āĻ°ā§āĻŽāĻžāĻ¨ā§āĻ¤āĻ°āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "ioctl"āĨ¤
EXPR,āĻ˛āĻŋāĻ¸ā§āĻā§ āĻ¯ā§āĻ āĻĻāĻŋāĻ¨
LIST-āĻāĻ° āĻĒā§āĻĨāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻā§ āĻāĻāĻāĻŋ āĻāĻāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ-āĻ āĻ¯ā§āĻ āĻāĻ°ā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻĨāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ
EXPR āĻāĻ° āĻŽāĻžāĻ¨, āĻāĻŦāĻ āĻ¸ā§āĻ āĻ¨āĻ¤ā§āĻ¨ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
$rec = join(':', $login,$passwd,$uid,$gid,$gcos,$home,$shell);
āĻ¸āĻ¤āĻ°ā§āĻ āĻĨāĻžāĻā§āĻ¨ āĻ¯ā§ "āĻŦāĻŋāĻāĻā§āĻ¤" āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, "āĻ¯ā§āĻāĻĻāĻžāĻ¨" āĻāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ āĻ¨āĻžāĨ¤
"āĻŦāĻŋāĻāĻā§āĻ¤" āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°ā§āĻ¨āĨ¤
āĻā§ āĻšā§āĻ¯āĻžāĻļ
āĻā§ ARRAY
āĻā§ EXPR
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ, āĻ¨āĻžāĻŽāĻ¯ā§āĻā§āĻ¤ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§ āĻ¸āĻŽāĻ¨ā§āĻŦāĻŋāĻ¤ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§,
āĻ āĻĨāĻŦāĻž āĻĒāĻžāĻ°ā§āĻ˛ 5.12 āĻŦāĻž āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§āĻ¤ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻ¸ā§āĻāĻāĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ 5.12 āĻāĻ° āĻāĻā§ āĻ°āĻŋāĻ˛āĻŋāĻ āĻāĻ°ā§
āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻ˛ā§ āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§āĨ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§,
āĻā§ āĻŦāĻž āĻ¸ā§āĻāĻā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻšā§āĻ¯āĻžāĻļ āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻāĻāĻāĻŋ āĻĻā§āĻļā§āĻ¯āĻ¤ āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻā§āĻ°āĻŽā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ. āĻĒā§āĻ°āĻā§āĻ¤ āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻā§āĻ°āĻŽ āĻšāĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻšā§āĻ¯āĻžāĻļ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ; āĻĻā§āĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻāĻ āĻ¸āĻŋāĻ°āĻŋāĻā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻŋāĻ¨ā§āĻ¨ āĻā§āĻ°āĻŽā§āĨ¤ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¯ā§āĻā§āĻ¨ā§ āĻ¸āĻ¨ā§āĻ¨āĻŋāĻŦā§āĻļ āĻā§āĻ°āĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§,
āĻ¯ā§ āĻā§āĻ¨ā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻŽāĻ¤ā§āĻ, āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻāĻ¤āĻŽ āĻā§āĻāĻŋ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻžāĻĄāĻŧāĻž
āĻ āĻĨāĻŦāĻž āĻ āĻ°ā§āĻĄāĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¨āĻž āĻāĻ°ā§āĻ "āĻā§" āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻšā§āĻ¯āĻžāĻļ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĻā§āĻ°ā§āĻ
āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻāĻĒāĻ¨āĻŋ āĻŦāĻžāĻ°āĻŦāĻžāĻ° āĻāĻāĻ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§ "āĻā§", "āĻŽāĻžāĻ¨" āĻāĻŦāĻ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻā§ āĻ āĻĒāĻ°ā§āĻ° āĻŽāĻ¤ āĻ āĻ°ā§āĻĄāĻžāĻ°āĨ¤ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlsec āĻ "āĻ ā§āĻ¯āĻžāĻ˛āĻā§āĻ°āĻŋāĻĻāĻŽāĻŋāĻ āĻāĻāĻŋāĻ˛āĻ¤āĻž āĻāĻā§āĻ°āĻŽāĻŖ" āĻĻā§āĻā§āĻ¨
āĻā§āĻ¨ āĻšā§āĻ¯āĻžāĻļ āĻ āĻ°ā§āĻĄāĻžāĻ° āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĻžāĻāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ. āĻāĻāĻžāĻ¨ā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻāĻŋāĻā§āĻ˛āĻŋ āĻāĻžāĻĄāĻŧāĻžāĻ āĻ¸āĻ āĻŋāĻ
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻšā§āĻ¯āĻžāĻļ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽā§āĻ° āĻŦāĻŋāĻŦāĻ°āĻŖ āĻāĻŦāĻ āĻšā§āĻ¯āĻžāĻļ āĻā§āĻ°āĻžāĻāĻžāĻ°ā§āĻ¸āĻžāĻ˛ āĻ āĻ°ā§āĻĄāĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¸āĻžāĻĒā§āĻā§āĻˇā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ¯ā§āĻā§āĻ¨ā§ āĻ°āĻŋāĻ˛āĻŋāĻāĨ¤ āĻŦāĻžāĻāĻ§āĻž āĻšā§āĻ¯āĻžāĻļ āĻ¸āĻŽā§āĻŽāĻžāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻŋāĻ¨ā§āĻ¨āĻāĻžāĻŦā§ āĻāĻāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻā§āĻŽ āĻ¸āĻ¨ā§āĻ¨āĻŋāĻŦā§āĻļ āĻāĻŦāĻ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻā§āĻ°āĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯āĨ¤
āĻĒāĻžāĻ°ā§āĻļā§āĻŦ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻāĻ˛āĻŋāĻ āĻā§() HASH āĻŦāĻž ARRAY-āĻāĻ° āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻāĻžāĻ°ā§ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¸ā§āĻ āĻāĻ°ā§
("āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻĻā§āĻā§āĻ¨)āĨ¤ āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻāĻ˛āĻŋāĻ āĻā§() āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻāĻžāĻ°ā§ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§
āĻ āĻ¨ā§āĻ¯ āĻā§āĻ¨ā§ āĻāĻāĻžāĻ°āĻšā§āĻĄ āĻ¨ā§āĻāĨ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻ°āĻŋāĻŦā§āĻļ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ°ā§āĻāĻāĻŋ āĻāĻĒāĻžāĻ¯āĻŧ āĻāĻāĻžāĻ¨ā§ āĻāĻā§:
@keys = āĻā§ %ENV;
@āĻŽāĻžāĻ¨ = āĻŽāĻžāĻ¨ %ENV;
āĻ¯āĻāĻ¨ (@āĻā§) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻĒāĻĒ(@keys), '=', pop(@values), "\n";
}
āĻŦāĻž āĻā§ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻžāĻāĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ:
foreach $key (āĻ¸āĻ°ā§āĻ(āĻā§ %ENV)) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $key, '=', $ENV{$key}, "\n";
}
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻŽā§āĻ˛ āĻā§āĻā§āĻ˛āĻŋāĻ° āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ, āĻ¤āĻžāĻ āĻ¤āĻžāĻĻā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻšāĻā§āĻā§
āĻŽā§āĻ˛ āĻšā§āĻ¯āĻžāĻļ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°āĻŦā§ āĻ¨āĻžāĨ¤ "āĻŽāĻžāĻ¨" āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°ā§āĻ¨āĨ¤
āĻŽāĻžāĻ¨ āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻāĻŋ "āĻ¸āĻ°ā§āĻ" āĻĢāĻžāĻāĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ āĻŦāĻ¤āĻ°āĻŖ
āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻāĻ° āĻŽāĻžāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ°:
foreach $key (āĻ¸āĻ°ā§āĻ { $hash{$b} $hash{$a} } āĻā§ %hash) {
printf "%4d %s\n", $hash{$key}, $key;
}
āĻāĻāĻāĻŋ lvalue āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤, "āĻā§" āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻšā§āĻ¯āĻžāĻļ āĻŦāĻžāĻā§āĻā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻŦā§āĻĻā§āĻ§āĻŋ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ
āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻāĻ¨ā§āĻ¯āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻšā§āĻ¯āĻžāĻļ āĻāĻžāĻ¨ā§āĻ¨ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻĻāĻā§āĻˇāĻ¤āĻžāĻ° āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒ āĻ āĻ°ā§āĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻĄāĻŧ āĻšāĻ¤ā§ āĻ¯āĻžāĻā§āĻā§ (āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻā§ āĻĒā§āĻ°āĻžāĻ-āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻ°ā§āĻĒ
āĻ¸āĻāĻā§āĻ¯āĻž $#array.) āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻŦāĻ˛ā§āĻ¨
āĻā§ %āĻšā§āĻ¯āĻžāĻļ = 200;
āĻ¤āĻžāĻ°āĻĒāĻ° %āĻšā§āĻ¯āĻžāĻļ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻĒāĻā§āĻˇā§ 200āĻāĻŋ āĻŦāĻžāĻ˛āĻ¤āĻŋ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻĨāĻžāĻāĻŦā§-- āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ 256āĻāĻŋ, āĻāĻ¸āĻ˛ā§,
āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻāĻŋ āĻĻā§āĻāĻāĻŋāĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻļāĻā§āĻ¤āĻŋ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻŦā§āĻ¤ā§āĻ¤āĻžāĻāĻžāĻ°āĨ¤ āĻāĻ āĻŦāĻžāĻ˛āĻ¤āĻŋ āĻĨāĻžāĻāĻ˛ā§āĻ āĻ°āĻžāĻāĻž āĻšāĻŦā§
āĻāĻĒāĻ¨āĻŋ "%hash = ()" āĻāĻ°ā§āĻ¨, %hash āĻĨāĻžāĻāĻžāĻāĻžāĻ˛ā§āĻ¨ āĻ¸ā§āĻā§āĻ°ā§āĻ āĻāĻžāĻ˛āĻŋ āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĻ˛ā§ "undef %hash" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻāĻāĻ¨āĻ āĻ¸ā§āĻ¯ā§āĻā§ āĻāĻĒāĻ¨āĻŋ āĻšā§āĻ¯āĻžāĻļ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻŦāĻžāĻ˛āĻ¤āĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¸āĻā§āĻā§āĻāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž
āĻāĻāĻāĻžāĻŦā§ "āĻā§" (āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĻā§āĻ°ā§āĻāĻāĻ¨āĻžāĻā§āĻ°āĻŽā§ āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻŋāĻ¨ā§āĻ¤āĻž āĻāĻ°āĻžāĻ° āĻĻāĻ°āĻāĻžāĻ° āĻ¨ā§āĻ, āĻ¯ā§āĻŽāĻ¨ āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻā§āĻ¨ āĻĒā§āĻ°āĻāĻžāĻŦ āĻ¨ā§āĻ). āĻāĻāĻāĻŋ lvalue āĻĒā§āĻ°āĻ¸āĻā§āĻā§ "keys @array" āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋāĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, "āĻā§" āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° EXPR āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻāĻ¨āĻŦā§āĻ˛ā§āĻ¸ā§āĻĄ āĻšā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§āĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ dereferenced āĻāĻ°āĻž āĻšāĻŦā§. āĻāĻ
"āĻā§" āĻāĻ° āĻĻāĻŋāĻāĻāĻŋāĻā§ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻ āĻŋāĻ āĻāĻāĻ°āĻŖ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĨ¤
āĻāĻ¨ā§āĻ¯ (āĻā§ $hashref) { ... }
āĻāĻ¨ā§āĻ¯ (āĻā§ $obj->get_arrayref) { ... }
āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ¯āĻžāĻ°āĻž āĻāĻ° āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻžāĻā§āĻā§
āĻ°āĻšāĻ¸ā§āĻ¯āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻš āĻĒāĻžāĻ°ā§āĻ˛, āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ°āĻžāĻā§āĻ¨
āĻ¸āĻāĻā§āĻ¤ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻā§āĻŦāĻ˛ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻāĻŋāĻ¨ā§āĻā§āĻā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻ¸-āĻ:
5.012 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻā§/āĻŽāĻžāĻ¨/āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§ āĻāĻžāĻ āĻāĻ°ā§
5.014 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻā§/āĻŽāĻžāĻ¨/ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻžāĻ (āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ)
āĻāĻāĻžāĻĄāĻŧāĻžāĻ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ", "āĻŽāĻžāĻ¨", āĻāĻŦāĻ "āĻŦāĻžāĻāĻžāĻ" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻšāĻ¤ā§āĻ¯āĻž
āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛ āĻŽā§āĻ°ā§ āĻĢā§āĻ˛ā§āĻ¨
āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¤ āĻĒāĻžāĻ āĻžāĻ¯āĻŧāĨ¤ āĻ¯ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻŋāĻ˛ āĻ¤āĻžāĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻ¸āĻāĻā§āĻ¤ āĻĻāĻŋāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ (āĻ¯āĻž āĻ āĻāĻ¤ā§āĻ¯āĻž āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻ¸āĻŽāĻžāĻ¨ āĻ¨āĻ¯āĻŧ
āĻĒā§āĻ°āĻ¸ā§āĻ¸ āĻāĻ¸āĻ˛ā§ āĻŽāĻžāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ, āĻ¯ā§āĻŽāĻ¨ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻˇā§āĻ ā§ āĻ¨āĻŋāĻšāĻ¤ āĻšāĻ¯āĻŧ)āĨ¤
$cnt = 'HUP' āĻšāĻ¤ā§āĻ¯āĻž, $child1, $child2;
'āĻāĻŋāĻ˛' āĻŽā§āĻ°ā§ āĻĢā§āĻ˛ā§āĻ¨, @āĻāĻ¨āĻžāĻ°ā§āĻ¸;
SIGNAL āĻšāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¤ āĻ¨āĻžāĻŽ (āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ) āĻŦāĻž āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¤ āĻ¨āĻŽā§āĻŦāĻ° āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¤ āĻ¨āĻžāĻŽ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻāĻŋ "SIG" āĻāĻĒāĻ¸āĻ°ā§āĻ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§āĻ¨, āĻāĻāĻāĻžāĻŦā§ "FOO" āĻāĻŦāĻ "SIGFOO" āĻāĻāĻ āĻ¸āĻāĻā§āĻ¤ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻĻā§āĻ¯
SIGNAL āĻāĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĢāĻ°ā§āĻŽ āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻžāĻ°āĻŖ āĻāĻāĻ āĻ¸āĻāĻā§āĻ¤ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ¸āĻāĻā§āĻ¯āĻžāĨ¤
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¸āĻāĻā§āĻ¤ āĻ¨āĻžāĻŽā§āĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻŦā§
$Config{sig_name}, āĻ¯āĻž "Config" āĻŽāĻĄāĻŋāĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻ°ā§ āĻāĻ¨ā§āĻ¯ āĻāĻ¨āĻĢāĻŋāĻ āĻĻā§āĻā§āĻ¨
āĻŦāĻŋāĻŦāĻ°āĻŖāĨ¤
āĻāĻāĻāĻŋ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ¸āĻāĻā§āĻ¤ āĻ¨āĻžāĻŽ āĻāĻāĻāĻŋ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ¸āĻāĻā§āĻ¤ āĻ¸āĻāĻā§āĻ¯āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻ, āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻ°ā§āĻĒ āĻšāĻ¤ā§āĻ¯āĻž
āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§āĨ¤ āĻ¯ā§āĻŽāĻ¨, "Kill '-KILL', $pgrp" āĻāĻŦāĻ "Kill -9, $pgrp" āĻāĻ°āĻŦā§
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒā§āĻ°ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻˇā§āĻ ā§āĻ¤ā§ "SIGKILL" āĻĒāĻžāĻ āĻžāĻ¨āĨ¤ āĻ¤āĻžāĻ° āĻŽāĻžāĻ¨ā§ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻžāĻ¨
āĻāĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ¨āĻ¯āĻŧ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ¸āĻāĻā§āĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻ¯āĻĻāĻŋ SIGNAL āĻšāĻ¯āĻŧ āĻ¸āĻāĻā§āĻ¯āĻž 0 āĻŦāĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻ "ZERO" (āĻŦāĻž "SIGZERO"), āĻā§āĻ¨ āĻ¸āĻāĻā§āĻ¤ āĻ¨ā§āĻ
āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ "āĻšāĻ¤ā§āĻ¯āĻž" āĻ¤āĻž āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§ āĻ¸āĻŽā§āĻāĻŦ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¤ āĻĒāĻžāĻ āĻžāĻ¤ā§
(āĻāĻ° āĻŽāĻžāĻ¨ā§, āĻ¸āĻāĻā§āĻˇā§āĻĒā§ āĻŦāĻ˛āĻ¤ā§ āĻā§āĻ˛ā§, āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻāĻāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻŽāĻžāĻ˛āĻŋāĻāĻžāĻ¨āĻžāĻ§ā§āĻ¨, āĻ āĻĨāĻŦāĻž āĻāĻŽāĻ°āĻž
āĻ¸ā§āĻĒāĻžāĻ°-āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§)āĨ¤ āĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻ¯ā§ āĻāĻāĻāĻŋ āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻāĻ¨āĻ āĻā§āĻŦāĻŋāĻ¤ (āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ
āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻāĻŽā§āĻŦāĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§) āĻāĻŦāĻ āĻ¤āĻžāĻ° UID āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨āĻŋāĨ¤ āĻ¨ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻ āĻĻā§āĻā§āĻ¨
āĻāĻ āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖā§āĻ° āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻžāĨ¤
āĻšāĻ¤ā§āĻ¯āĻžāĻ° āĻāĻāĻ°āĻŖ āĻ¯āĻāĻ¨ āĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¸āĻāĻā§āĻ¯āĻž āĻļā§āĻ¨ā§āĻ¯ āĻŦāĻž āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§
āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, POSIX-āĻ āĻ¨ā§āĻ¸āĻā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, āĻļā§āĻ¨ā§āĻ¯ āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛ āĻāĻ°āĻŦā§
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻ°ā§āĻĒ, -1 āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯ āĻā§āĻ¨ā§ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§ āĻ¸āĻāĻā§āĻ¤ āĻĻā§āĻŦā§
āĻ¸āĻāĻā§āĻ¯āĻžāĻāĻŋ āĻāĻāĻāĻŋ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ¸āĻāĻā§āĻ¤ āĻ¸āĻāĻā§āĻ¯āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻāĻŦāĻ āĻĒā§āĻ°ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻˇā§āĻ ā§āĻā§ āĻšāĻ¤ā§āĻ¯āĻž āĻāĻ°āĻŦā§
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ
āĻ¯āĻĻāĻŋ SIGNAL āĻāĻŦāĻ PROCESS āĻāĻāĻ¯āĻŧāĻ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻšāĻ¯āĻŧ, āĻĢāĻ˛āĻžāĻĢāĻ˛āĻā§āĻ˛āĻŋ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤āĨ¤ āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž
āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ āĻāĻ¤ā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlipc-āĻ "āĻ¸āĻāĻā§āĻ¤" āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻŋāĻā§ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻ¨ā§āĻĄā§āĻ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ () āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ¨āĻ¯āĻŧ, āĻĒāĻžāĻ°ā§āĻ˛
āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ () āĻĻā§āĻāĻžāĻˇā§ āĻ¸ā§āĻ¤āĻ°ā§āĨ¤ āĻāĻ āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻāĻā§
āĻāĻāĻ¨ā§āĻĄā§āĻā§ āĻāĻ˛āĻŽāĻžāĻ¨ āĻā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻšāĻ¤ā§āĻ¯āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻžāĻā§āĻ˛āĻŋ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻāĻŦāĻ āĻā§āĻĄā§ āĻĒā§āĻ°ā§āĻā§āĻŦāĻ˛ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§āĨ¤
āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlfork āĻĻā§āĻā§āĻ¨.
āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻšāĻ¯āĻŧ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸ā§āĻ¸, āĻā§āĻ¨ āĻ¸āĻāĻā§āĻ¤ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ āĻ¨āĻž, āĻāĻŦāĻ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻšāĻ˛ 0
āĻĢāĻ°ā§āĻŽ āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§, āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻāĻ˛āĻā§āĻāĻāĻ¨āĻ āĻā§āĻ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻāĻžāĻ°āĻŖ āĻšāĻ¯āĻŧāĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĻā§āĻā§āĻ¨
āĻĒāĻžāĻ°ā§āĻ˛āĻ¸ā§āĻā§ "āĻ˛āĻ¨ā§āĻĄāĻžāĻ°āĻŋāĻ āĻāĻŦāĻ āĻāĻ˛āĻā§āĻāĻŋāĻ¤ āĻĄā§āĻāĻž āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻž"āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻšāĻ¤ā§āĻ¯āĻž"āĨ¤
āĻļā§āĻˇ LABEL
āĻļā§āĻˇ EXPR
āĻāĻ¤
"āĻļā§āĻˇ" āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻ¸āĻŋ-āĻ¤ā§ "āĻŦā§āĻ°ā§āĻ" āĻŦāĻŋāĻŦā§āĻ¤āĻŋāĻ° āĻŽāĻ¤ā§ (āĻ˛ā§āĻĒāĻā§āĻ˛āĻŋāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ); āĻāĻāĻž
āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻĒā§āĻ°āĻļā§āĻ¨ āĻŽāĻ§ā§āĻ¯ā§ āĻ˛ā§āĻĒ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨. āĻ¯āĻĻāĻŋ LABEL āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§
āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻŋāĻ¤āĻ°ā§āĻ° āĻā§āĻ°āĻž āĻ˛ā§āĻĒā§āĨ¤ "āĻļā§āĻˇ EXPR" āĻĢāĻ°ā§āĻŽ, āĻĒāĻžāĻ°ā§āĻ˛ āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ āĻāĻĒāĻ˛āĻŦā§āĻ§
5.18.0, āĻ°āĻžāĻ¨ āĻāĻžāĻāĻŽā§ āĻāĻāĻāĻŋ āĻ˛ā§āĻŦā§āĻ˛ āĻ¨āĻžāĻŽ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻ
"āĻļā§āĻˇ āĻ˛ā§āĻŦā§āĻ˛"āĨ¤ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻŦā§āĻ˛āĻ, āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§, āĻ¤āĻž āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž:
āĻ˛āĻžāĻāĻ¨: āĻ¯āĻāĻ¨ ( ) {
āĻļā§āĻˇ āĻ˛āĻžāĻāĻ¨ āĻ¯āĻĻāĻŋ /^$/; āĻļāĻŋāĻ°ā§āĻ¨āĻžāĻŽ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¸āĻŽā§āĻĒāĻ¨ā§āĻ¨ āĻšāĻ˛ā§ # āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§āĻ¨
# ...
}
āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻ¤ā§ "āĻļā§āĻˇ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž āĻ¯āĻž "āĻāĻāĻžāĻ˛ {}", "āĻ¸āĻžāĻŦ" āĻāĻ° āĻŽāĻ¤ā§ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
{}", āĻŦāĻž "āĻāĻ°ā§āĻ¨ {}", āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ grep() or āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° () operation.
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻ¨āĻŋāĻā§āĻ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻāĻ¤āĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻ˛ā§āĻĒā§āĻ° āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻ¯āĻž āĻāĻāĻŦāĻžāĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧāĨ¤
āĻāĻāĻāĻžāĻŦā§ "āĻļā§āĻˇ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻŦā§āĻ˛āĻ āĻĨā§āĻā§ āĻ¤āĻžāĻĄāĻŧāĻžāĻ¤āĻžāĻĄāĻŧāĻŋ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯āĨ¤
āĻāĻŋāĻāĻžāĻŦā§ "āĻļā§āĻˇ", "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§", āĻāĻŦāĻ "āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨" āĻāĻžāĻ āĻāĻ°ā§ āĻ¤āĻžāĻ° āĻāĻāĻāĻŋ āĻāĻŋāĻ¤ā§āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¨āĻžāĻŽāĻ§āĻžāĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, āĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨āĻŽā§āĻ¨ā§āĻā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻšāĻž āĻ
āĻā§āĻšāĻžāĻ°āĻž-āĻŽāĻ¤-āĻāĻāĻāĻŋ-āĻĢāĻžāĻāĻļāĻ¨ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻĨā§āĻā§ āĻŽā§āĻā§āĻ¤, āĻ¤āĻžāĻ "āĻļā§āĻˇ ("foo")āĨ¤"bar"" āĻāĻ° āĻĢāĻ˛ā§ "āĻŦāĻžāĻ°" āĻšāĻŦā§
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻ āĻāĻļ āĻšāĻ¤ā§ "āĻļā§āĻˇ"āĨ¤
āĻāĻ˛āĻ¸āĻŋ āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°
lc EXPR āĻāĻ° āĻāĻāĻāĻŋ āĻā§āĻ āĻšāĻžāĻ¤ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĢāĻžāĻāĻļāĻ¨ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨
āĻĄāĻŦāĻ˛-āĻāĻĻā§āĻ§ā§āĻ¤ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ¤ā§ "\L" āĻāĻ¸ā§āĻā§āĻĒāĨ¤
āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻ¯āĻž āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§ āĻ¤āĻž āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻāĻžāĻ°āĻŖā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§:
āĻ¯āĻĻāĻŋ "āĻŦāĻžāĻāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧ:
āĻĢāĻ˛āĻžāĻĢāĻ˛ ASCII āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°ā§. āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "A-Z" āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋ "a-z" āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧ
āĻ¯āĻĨāĻžāĻā§āĻ°āĻŽā§.
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻ¯āĻĻāĻŋ "LC_CTYPE" āĻāĻ° āĻāĻ¨ā§āĻ¯ "āĻ˛ā§āĻā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧ:
āĻā§āĻĄ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ < 256 āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ "LC_CTYPE" āĻ˛ā§āĻā§āĻ˛āĻā§ āĻ¸āĻŽā§āĻŽāĻžāĻ¨ āĻāĻ°ā§; āĻāĻŦāĻ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻ āĻŦāĻļāĻŋāĻˇā§āĻ āĻā§āĻĄ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ (āĻāĻ āĻļā§āĻˇāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻāĻ¨āĻ āĻāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ UTF8 āĻĒāĻ¤āĻžāĻāĻžāĻāĻŋāĻ āĻĨāĻžāĻā§
āĻ¸ā§āĻ)āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻāĻžāĻ˛ āĻĻā§āĻā§āĻ¨āĨ¤
v5.20 āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, āĻ˛ā§āĻā§āĻ˛āĻāĻŋ UTF-8 āĻšāĻ˛ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻāĻ āĻ¸ā§āĻāĻŋāĻŽāĻāĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻāĻžāĻāĻ¤āĻŋ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻ¸ā§āĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§
255/256 āĻ¸ā§āĻŽāĻžāĻ¨āĻž āĻ āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°āĻž āĻāĻžāĻ˛āĻāĻžāĻŦā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻā§āĻ āĻšāĻžāĻ¤ā§āĻ° āĻ āĻā§āĻˇāĻ°
āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¨āĻŋāĻ¯āĻŧāĻŽā§ āĻ˛ā§āĻ¯āĻžāĻāĻŋāĻ¨ āĻā§āĻ¯āĻžāĻĒāĻŋāĻāĻžāĻ˛ āĻ˛ā§āĻāĻžāĻ° āĻļāĻžāĻ°ā§āĻĒ S (U+1E9E) āĻšāĻ˛ U+00DF (ASCII-āĻ
āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ)āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ˛ā§āĻā§āĻ˛" āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ (v5.20 āĻāĻ° āĻāĻā§ āĻŦāĻž UTF-8 āĻ˛ā§āĻā§āĻ˛ āĻ¨āĻ¯āĻŧ),
U+1E9E āĻāĻ° āĻ˛ā§āĻ¯āĻŧāĻžāĻ° āĻā§āĻ¸ āĻ¨āĻŋāĻā§āĻ, āĻāĻžāĻ°āĻŖ 0xDF āĻ˛ā§āĻ¯āĻžāĻāĻŋāĻ¨ āĻā§āĻ āĻ āĻā§āĻˇāĻ° āĻļāĻžāĻ°ā§āĻĒ āĻāĻ¸ āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ˛ā§āĻā§āĻ˛ā§, āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻžāĻā§ āĻ¸ā§āĻ āĻāĻ°āĻŋāĻ¤ā§āĻ°āĻāĻŋāĻ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻāĻžāĻ¨āĻžāĻ° āĻā§āĻ¨ āĻāĻĒāĻžāĻ¯āĻŧ āĻ¨ā§āĻ
āĻ˛ā§āĻā§āĻ˛ā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨, āĻā§āĻĄ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻ āĻ¨ā§āĻ āĻāĻŽāĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻāĻāĻŋ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¯ā§ āĻĢā§āĻ°āĻ¤
255 āĻāĻ° āĻāĻĒāĻ°ā§ (āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻ¨āĻĒā§āĻ āĻ āĻā§āĻˇāĻ° āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ (āĻāĻŦāĻ
āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ¨ā§āĻ) āĻ¯ā§āĻāĻžāĻ¨ā§ 255/256 āĻ¸ā§āĻŽāĻžāĻ¨āĻž āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻ āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°āĻž āĻšāĻŦā§; āĻāĻŦāĻ
v5.22 āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ˛ā§āĻā§āĻ˛ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻ¯āĻĻāĻŋ EXPR-āĻāĻ° UTF8 āĻĒāĻ¤āĻžāĻāĻž āĻ¸ā§āĻ āĻĨāĻžāĻā§:
āĻā§āĻ¸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻ¯āĻĻāĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ 'āĻāĻāĻ¨āĻŋāĻā§āĻĄ_āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¸'" āĻŦāĻž "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ˛ā§āĻā§āĻ˛ ':not_characters'" āĻĨāĻžāĻā§
āĻĒā§āĻ°āĻāĻžāĻŦ:
āĻā§āĻ¸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ:
āĻā§āĻ¸ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ ASCII āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻŦāĻžāĻāĻ°ā§āĻ° āĻ¯ā§āĻā§āĻ¨ā§ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻā§āĻ āĻšāĻžāĻ¤ā§āĻ° āĻ āĻā§āĻˇāĻ°
ASCII āĻĒāĻ°āĻŋāĻ¸āĻ° āĻ¨āĻŋāĻā§āĻ āĻāĻ°āĻŋāĻ¤ā§āĻ°āĨ¤
lcfirst EXPR
lc āĻĒā§āĻ°āĻĨāĻŽ
āĻĒā§āĻ°āĻĨāĻŽ āĻ āĻā§āĻˇāĻ° āĻā§āĻ āĻāĻ°ā§ EXPR-āĻāĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ
āĻĄāĻŦāĻ˛-āĻāĻĻā§āĻ§ā§āĻ¤ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ¤ā§ "\l" āĻāĻ¸ā§āĻā§āĻĒ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻĢāĻžāĻāĻļāĻ¨āĨ¤
āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ pragmata āĻ āĻ§ā§āĻ¨ā§ āĻāĻāĻ āĻāĻžāĻŦā§ āĻāĻāĻ°āĻŖ āĻāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ˛ā§āĻā§āĻ˛ā§, āĻ¯ā§āĻŽāĻ¨
"lc" āĻāĻ°ā§āĨ¤
āĻĻā§āĻ°ā§āĻā§āĻ¯ EXPR
āĻ˛āĻŽā§āĻŦāĻž
āĻŽāĻ§ā§āĻ¯ā§ āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ āĻā§āĻˇāĻ° EXPR āĻāĻ° āĻŽāĻžāĻ¨āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§
$_ āĻāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ "undef" āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻŦāĻž āĻšā§āĻ¯āĻžāĻļā§ āĻāĻ¤āĻā§āĻ˛āĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻā§āĻāĻā§ āĻŦā§āĻ° āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž
āĻāĻ āĻāĻā§. āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻ¯āĻĨāĻžāĻā§āĻ°āĻŽā§ "āĻ¸ā§āĻā§āĻ¯āĻžāĻ˛āĻžāĻ° @āĻ ā§āĻ¯āĻžāĻ°ā§" āĻāĻŦāĻ "āĻ¸ā§āĻāĻ˛āĻžāĻ° āĻā§ %āĻšā§āĻ¯āĻžāĻļ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻžāĻ°ā§āĻ˛ āĻ āĻā§āĻˇāĻ° āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻŽāĻ¤, āĻĻā§āĻ°ā§āĻā§āĻ¯() āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¯ā§āĻā§āĻ¤āĻŋāĻ āĻ āĻā§āĻˇāĻ° āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°ā§, āĻ¨āĻž
āĻļāĻžāĻ°ā§āĻ°āĻŋāĻ āĻŦāĻžāĻāĻ UTF-8 āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻ¨āĻā§āĻĄ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ¤ āĻŦāĻžāĻāĻ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻŦā§, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
"āĻĻā§āĻ°ā§āĻā§āĻ¯(Encode::encode_utf8(EXPR))" (āĻāĻĒāĻ¨āĻžāĻā§ āĻĒā§āĻ°āĻĨāĻŽā§ "āĻāĻ¨āĻā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻāĻ°āĻ¤ā§ āĻšāĻŦā§)āĨ¤ āĻāĻ¨āĻā§āĻĄ āĻĻā§āĻā§āĻ¨
āĻāĻŦāĻ āĻĒāĻžāĻ°āĻ˛ā§āĻ¨āĻŋāĻā§āĻĄāĨ¤
__LINE__
āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻā§āĻā§āĻ¨ āĻ¯āĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ˛āĻžāĻāĻ¨ āĻ¨āĻŽā§āĻŦāĻ°ā§ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°ā§āĨ¤
āĻ˛āĻŋāĻā§āĻ OLDFILE,NEWFILE
āĻĒā§āĻ°āĻžāĻ¨ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ˛āĻŋāĻā§āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĨ¤ āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤, āĻŽāĻŋāĻĨā§āĻ¯āĻž
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧāĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ˛āĻŋāĻā§āĻ"āĨ¤
SOCKET, QUEUESIZE āĻļā§āĻ¨ā§āĻ¨
āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻāĻ°ā§ āĻ¯ā§ āĻļā§āĻ¨āĻž(2) āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻšāĻ¯āĻŧ
āĻ¸āĻĢāĻ˛, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĨ¤ "āĻ¸āĻā§āĻāĻ¸: āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ/āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻŽāĻŋāĻāĻ¨āĻŋāĻā§āĻļāĻ¨"-āĻ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻĻā§āĻā§āĻ¨
perlipc āĻ
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ EXPR
āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "āĻāĻŽāĻžāĻ°" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨, āĻāĻžāĻ°āĻŖ "āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ" āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻ¨āĻ¯āĻŧ
āĻ˛ā§āĻā§āĻ°āĻž "āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ" āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°ā§āĨ¤ āĻĻā§āĻā§āĻ¨ "āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻŽāĻžāĻ°()" āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻžāĻŦā§āĨ¤
āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻāĻ¨āĻā§āĻ˛ā§āĻāĻŋāĻ āĻŦā§āĻ˛āĻ, āĻĢāĻžāĻāĻ˛ āĻŦāĻž āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻšāĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§
eval āĻ¯āĻĻāĻŋ āĻāĻāĻžāĻ§āĻŋāĻ āĻŽāĻžāĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻ āĻŦāĻļā§āĻ¯āĻ āĻŦāĻ¨ā§āĻ§āĻ¨ā§āĻ¤ā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻĻā§āĻāĻž
"āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§ āĻŽāĻžāĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ()" āĻāĻžāĻ āĻ¸āĻš āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¸āĻš āĻŦāĻŋāĻļāĻĻ āĻŦāĻŋāĻŦāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻžāĻŦā§ā§ˇ
āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻŦāĻ āĻšā§āĻ¯āĻžāĻļāĨ¤
"āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ EXPR āĻŽā§āĻā§āĻ¨" āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖāĻāĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻ°āĻŖ āĻāĻ°āĻ¤ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŦā§āĻ˛āĻā§ āĻ ā§āĻ¯āĻžāĻ°ā§/āĻšā§āĻ¯āĻžāĻļ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĨ¤ āĻĻā§āĻā§āĻ¨ "āĻāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻ°āĻŖ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž
āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻžāĻŦā§ āĻ¯ā§āĻāĻŋāĻ āĻĒā§āĻ°āĻāĻžāĻ°"āĨ¤
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ EXPR
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ
āĻāĻžāĻāĻŽ āĻĢāĻžāĻāĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ¸āĻŽāĻ¯āĻŧāĻā§ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ 9-āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°ā§
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ āĻ āĻā§āĻāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻļā§āĻ˛ā§āĻˇāĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ:
# 0 1 2 3 4 5 6 7 8
($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ (āĻ¸āĻŽāĻ¯āĻŧ);
āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻāĻŦāĻ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ C `struct tm' āĻĨā§āĻā§ āĻŦā§āĻ°āĻŋāĻ¯āĻŧā§ āĻāĻ¸ā§āĨ¤ $āĻ¸ā§āĻā§āĻ¨ā§āĻĄ, $āĻŽāĻŋāĻ¨āĻŋāĻ,
āĻāĻŦāĻ $hour āĻšāĻ˛ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻ¸ā§āĻā§āĻ¨ā§āĻĄ, āĻŽāĻŋāĻ¨āĻŋāĻ āĻāĻŦāĻ āĻāĻ¨ā§āĻāĻžāĨ¤
$mday āĻšāĻ˛ āĻŽāĻžāĻ¸ā§āĻ° āĻĻāĻŋāĻ¨ āĻāĻŦāĻ $mon āĻŽāĻžāĻ¸ āĻšāĻ˛ 0..11 āĻ°ā§āĻā§āĻā§, 0 āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§
āĻāĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ°āĻŋ āĻāĻŦāĻ 11 āĻĄāĻŋāĻ¸ā§āĻŽā§āĻŦāĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§āĨ¤ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻŽāĻžāĻ¸ā§āĻ° āĻ¨āĻžāĻŽ āĻĒā§āĻ¤ā§ āĻ¸āĻšāĻ āĻāĻ°ā§ āĻ¤ā§āĻ˛ā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻž:
āĻāĻŽāĻžāĻ° @abbr = qw (āĻāĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ°āĻŋ āĻĢā§āĻŦā§āĻ°ā§āĻ¯āĻŧāĻžāĻ°āĻŋ āĻŽāĻžāĻ° āĻāĻĒā§āĻ°āĻŋāĻ˛ āĻŽā§ āĻā§āĻ¨ āĻā§āĻ˛āĻžāĻ āĻāĻāĻ¸ā§āĻ āĻ¸ā§āĻĒā§āĻā§āĻŽā§āĻŦāĻ° āĻ āĻā§āĻā§āĻŦāĻ° āĻ¨āĻā§āĻŽā§āĻŦāĻ° āĻĄāĻŋāĻ¸ā§āĻŽā§āĻŦāĻ°);
"$abbr[$mon] $mday" āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨;
# $mon=9, $mday=18 āĻĻā§āĻ¯āĻŧ "āĻ āĻā§āĻā§āĻŦāĻ° 18"
$year-āĻ 1900 āĻ¸āĻžāĻ˛ āĻĨā§āĻā§ āĻŦāĻāĻ°ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻ°āĻ¯āĻŧā§āĻā§ā§ˇ āĻāĻāĻāĻŋ 4-āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŦāĻāĻ° āĻĒā§āĻ¤ā§ āĻ˛āĻŋāĻā§āĻ¨:
$āĻŦāĻāĻ° += 1900;
āĻŦāĻāĻ°ā§āĻ° āĻļā§āĻˇ āĻĻā§āĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ¤ā§ (āĻ¯ā§āĻŽāĻ¨, 01 āĻ¸āĻžāĻ˛ā§ "2001") āĻāĻ°ā§āĻ¨:
$year = sprintf("%02d", $year % 100);
$wday āĻšāĻ˛ āĻ¸āĻĒā§āĻ¤āĻžāĻšā§āĻ° āĻĻāĻŋāĻ¨, 0 āĻĻā§āĻŦāĻžāĻ°āĻž āĻ°āĻŦāĻŋāĻŦāĻžāĻ° āĻāĻŦāĻ 3āĻāĻŋ āĻŦā§āĻ§āĻŦāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ā§ˇ
$yday āĻšāĻ˛ āĻŦāĻāĻ°ā§āĻ° āĻĻāĻŋāĻ¨, 0..364 āĻĒāĻ°āĻŋāĻ¸āĻ°ā§ (āĻŦāĻž āĻ˛āĻŋāĻĒ āĻŦāĻāĻ°ā§ 0..365āĨ¤)
$isdst āĻ¸āĻ¤ā§āĻ¯ āĻšāĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻŽāĻ¯āĻŧ āĻĄā§āĻ˛āĻžāĻāĻ āĻ¸ā§āĻāĻŋāĻ āĻāĻžāĻāĻŽā§ āĻāĻā§, āĻŽāĻŋāĻĨā§āĻ¯āĻž
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧāĨ¤
āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, "localtime()" āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ (āĻ¯ā§āĻŽāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ(3))āĨ¤
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§, "localtime()" āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§ āĻ¸āĻŋāĻāĻžāĻāĻŽ(3) āĻŽāĻžāĻ¨:
$now_string = āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ; # āĻ¯ā§āĻŽāĻ¨, "Thu October 13 04:54:34 1994"
āĻāĻ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻŽāĻžāĻ¨ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻšāĻ¯āĻŧ āĻ¨āĻž āĻ˛ā§āĻā§āĻ˛-āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ˛ā§ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤āĨ¤ GMT āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "gmtime" āĻŦāĻŋāĻ˛ā§āĻāĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤ "āĻ¸āĻŽāĻ¯āĻŧ::āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ" āĻŽāĻĄāĻŋāĻāĻ˛āĻāĻŋāĻ āĻĻā§āĻā§āĻ¨
(āĻ¸ā§āĻā§āĻ¨ā§āĻĄ, āĻŽāĻŋāĻ¨āĻŋāĻ, āĻāĻ¨ā§āĻāĻž, āĻāĻŦāĻ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨āĻā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĻā§
by āĻ¸āĻŽāĻ¯āĻŧ()), āĻāĻŦāĻ POSIX āĻŽāĻĄāĻŋāĻāĻ˛ā§āĻ° strftime(3) āĻāĻŦāĻ mktime(3) āĻĢāĻžāĻāĻļāĻ¨āĨ¤
āĻāĻŋāĻā§āĻāĻž āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ˛ā§āĻā§āĻ˛-āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻ¤āĻžāĻ°āĻŋāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒā§āĻ¤ā§, āĻāĻĒāĻ¨āĻžāĻ° āĻ˛ā§āĻā§āĻ˛ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°ā§āĻ¨
āĻāĻ¨āĻāĻžāĻ¯āĻŧāĻ°āĻ¨āĻŽā§āĻ¨ā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¯āĻĨāĻžāĻ¯āĻĨāĻāĻžāĻŦā§ (āĻ āĻ¨ā§āĻā§āĻ°āĻš āĻāĻ°ā§ perllocale āĻĻā§āĻā§āĻ¨) āĻāĻŦāĻ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻ¨:
POSIX qw(strftime) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
$now_string = strftime "%a %b %e %H:%M:%S %Y", āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ;
# āĻ āĻĨāĻŦāĻž āĻāĻĒāĻ¨āĻžāĻ° āĻ˛ā§āĻā§āĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻĨāĻžāĻ¯āĻĨāĻāĻžāĻŦā§ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸āĻā§āĻ¤ GMT āĻāĻ° āĻāĻ¨ā§āĻ¯:
$now_string = strftime "%a %b %e %H:%M:%S %Y", gmtime;
āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°ā§āĻ¨ āĻ¯ā§ %a āĻāĻŦāĻ %b, āĻ¸āĻĒā§āĻ¤āĻžāĻšā§āĻ° āĻĻāĻŋāĻ¨ā§āĻ° āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻ°ā§āĻĒ āĻāĻŦāĻ āĻŽāĻžāĻ¸ā§āĻ° āĻŽāĻžāĻ¸ā§āĻ°
āĻŦāĻāĻ°, āĻ āĻāĻ¤ā§āĻ¯āĻž āĻ¤āĻŋāĻ¨ āĻ āĻā§āĻˇāĻ° āĻāĻāĻĄāĻŧāĻž āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻ¸āĻŽāĻ¯āĻŧ::āĻāĻŋāĻāĻŽāĻāĻžāĻāĻŽ āĻāĻŦāĻ āĻ¸āĻŽāĻ¯āĻŧ::āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻ, āĻ¨āĻžāĻŽ āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¯āĻžāĻ¨ā§āĻ¤ā§āĻ°āĻŋāĻāĻ¤āĻž gmtime() āĻāĻŦāĻ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ() āĻĢāĻžāĻāĻļāĻ¨, āĻ¯āĻĨāĻžāĻā§āĻ°āĻŽā§āĨ¤
āĻāĻāĻāĻŋ āĻŦāĻŋāĻ¸ā§āĻ¤ā§āĻ¤ āĻ¤āĻžāĻ°āĻŋāĻ āĻāĻŦāĻ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦā§āĻ° āĻāĻ¨ā§āĻ¯ CPAN-āĻāĻ° āĻ¤āĻžāĻ°āĻŋāĻā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŽāĻĄāĻŋāĻāĻ˛āĻāĻŋ āĻĻā§āĻā§āĻ¨āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ"āĨ¤
āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ˛āĻ
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻļā§āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻŦāĻž āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸āĻ¯ā§āĻā§āĻ¤ āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻāĻĒāĻ° āĻāĻāĻāĻŋ āĻāĻĒāĻĻā§āĻˇā§āĻāĻž āĻ˛āĻ āĻ°āĻžāĻā§
āĻŽāĻ§ā§āĻ¯ā§ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ¯āĻ¤āĻā§āĻˇāĻŖ āĻ¨āĻž āĻ˛āĻāĻāĻŋ āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻāĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻŽāĻžāĻ¨āĻāĻŋ āĻ¨āĻŋāĻā§āĻ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻ¯āĻĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻŦāĻž āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻšāĻ¯āĻŧ,
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¯āĻĻāĻŋ āĻšā§āĻ¯āĻžāĻļ, āĻ ā§āĻ¯āĻžāĻ°ā§ āĻŦāĻž āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻšāĻ¯āĻŧāĨ¤
āĻ¤āĻžāĻ˛āĻž() āĻāĻāĻāĻŋ "āĻĻā§āĻ°ā§āĻŦāĻ˛ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ" : āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻ āĻ¨āĻžāĻŽā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§āĻ¨
(āĻā§āĻ¨āĻ āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻāĻā§), āĻ¸ā§āĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻ˛ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ āĻ§ā§āĻ¨ā§ āĻ¨āĻž āĻšāĻ˛ā§
"āĻĨā§āĻ°ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨:: āĻļā§āĻ¯āĻŧāĻžāĻ° āĻāĻ°āĻž" āĻāĻāĻŋ āĻāĻŋāĻā§āĻ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻĨā§āĻ°ā§āĻĄ āĻĻā§āĻā§āĻ¨::shared.
āĻ˛āĻ EXPR
log āĻĒā§āĻ°āĻžāĻā§āĻ¤āĻŋāĻ āĻ˛āĻāĻžāĻ°āĻŋāĻĻāĻŽ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ (āĻŦā§āĻ¸ eEXPR āĻāĻ°āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ˛āĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
$_ āĻāĻ°āĨ¤ āĻ āĻ¨ā§āĻ¯ āĻŦā§āĻ¸ā§āĻ° āĻ˛āĻ āĻĒā§āĻ¤ā§, āĻŽā§āĻ˛āĻŋāĻ āĻŦā§āĻāĻāĻŖāĻŋāĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨: āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŦā§āĻ¸-āĻāĻ¨ āĻ˛āĻ
N. āĻĢāĻ°-āĻāĻ° āĻĒā§āĻ°āĻžāĻā§āĻ¤āĻŋāĻ āĻ˛āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻžāĻ āĻāĻ°āĻž āĻ¸ā§āĻ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻ˛āĻā§āĻ° āĻ¸āĻŽāĻžāĻ¨
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ:
āĻāĻĒ āĻ˛āĻ 10 {
āĻāĻŽāĻžāĻ° $n = āĻļāĻŋāĻĢāĻ;
āĻĢāĻŋāĻ°āĻ¤āĻŋ āĻ˛āĻ($n)/āĻ˛āĻ āĻāĻ¨ āĻāĻ°ā§āĻ¨(ā§¨ā§Ļā§§ā§§);
}
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ "exp" āĻĻā§āĻā§āĻ¨āĨ¤
lstat FILEHANDLE
lstat EXPR
lstat DIRHANDLE
lstat
"āĻ¸ā§āĻā§āĻ¯āĻžāĻ" āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻāĻžāĻ āĻāĻ°ā§ (āĻŦāĻŋāĻļā§āĻˇ "_" āĻ¸ā§āĻ āĻāĻ°āĻž āĻ¸āĻš
filehandle) āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻ˛āĻŋāĻā§āĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻ˛āĻŋāĻā§āĻ āĻĒāĻ°āĻŋāĻ¸āĻāĻā§āĻ¯āĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻ˛āĻŋāĻā§āĻāĻā§āĻ˛āĻŋ āĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ "āĻ¸ā§āĻā§āĻ¯āĻžāĻ" āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ āĻ¨ā§āĻ āĻāĻ¨ā§āĻ¯
āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻ¤āĻĨā§āĻ¯, "stat" āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻĒāĻ°āĻŋāĻ¸āĻāĻā§āĻ¯āĻžāĻ¨ $_āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "lstat"āĨ¤
m// āĻŽā§āĻ¯āĻžāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻĒā§ "Regexp āĻā§āĻ-āĻ˛āĻžāĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°" āĻĻā§āĻā§āĻ¨āĨ¤
āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° āĻŦā§āĻ˛āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° EXPR, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ˛āĻ āĻŦāĻž EXPR āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ (āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋāĻ¤ā§ $_ āĻ¸ā§āĻ āĻāĻ°ā§
āĻāĻĒāĻžāĻĻāĻžāĻ¨) āĻāĻŦāĻ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ā§āĻ° āĻ¸āĻŽāĻ¨ā§āĻŦāĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§, āĻ¤āĻžāĻ āĻāĻ¤ā§āĻĒāĻ¨ā§āĻ¨ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻŽā§āĻ āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻŦā§āĻ˛āĻāĻā§ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§
āĻ āĻĨāĻŦāĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ EXPR, āĻ¤āĻžāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻļā§āĻ¨ā§āĻ¯, āĻāĻ āĻŦāĻž āĻāĻāĻžāĻ§āĻŋāĻ āĻā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻŽāĻžāĻ¨ā§āĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĨ¤
@āĻ āĻā§āĻˇāĻ° = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ°(chr, @āĻ¸āĻāĻā§āĻ¯āĻž);
āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻ āĻā§āĻˇāĻ°ā§ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ āĻ¨ā§āĻŦāĻžāĻĻ āĻāĻ°ā§āĨ¤
āĻāĻŽāĻžāĻ° @squares = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { $_ * $_ } @ āĻ¸āĻāĻā§āĻ¯āĻž;
āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§ āĻ¤āĻžāĻĻā§āĻ° āĻŦāĻ°ā§āĻ āĻŽāĻžāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ āĻ¨ā§āĻŦāĻžāĻĻ āĻāĻ°ā§āĨ¤
āĻāĻŽāĻžāĻ° @squares = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { $_ > 5? ($_ * $_) : () } @āĻ¸āĻāĻā§āĻ¯āĻž;
āĻĻā§āĻāĻžāĻ¯āĻŧ āĻ¯ā§ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻ¨āĻĒā§āĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĨā§āĻā§ āĻĒā§āĻĨāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻŦāĻžāĻĻ āĻĻāĻŋāĻ¤ā§, āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž () āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¨āĨ¤ āĻāĻāĻŋ āĻ˛ā§āĻāĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§āĻ āĻ āĻ°ā§āĻāĻ¨ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻŽāĻžāĻ° @squares = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { $_ * $_ } grep { $_ > 5 } @ āĻ¸āĻāĻā§āĻ¯āĻž;
āĻ¯āĻž āĻāĻĻā§āĻĻā§āĻļā§āĻ¯āĻā§ āĻāĻ°āĻ āĻ¸ā§āĻĒāĻˇā§āĻ āĻāĻ°ā§ āĻ¤ā§āĻ˛ā§āĨ¤
āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻ¯āĻž āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļāĻā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§āĻŽāĻ¨ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ
āĻā§/āĻŽāĻžāĻ¨ āĻā§āĻĄāĻŧāĻž āĻšāĻ¯āĻŧā§ āĻāĻ ā§āĻ¨āĨ¤ āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perldata āĻĻā§āĻā§āĻ¨.
%āĻšā§āĻ¯āĻžāĻļ = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { get_a_key_for($_) => $_ } @array;
āĻ˛ā§āĻāĻžāĻ° āĻāĻāĻāĻŋ āĻŽāĻāĻžāĻ° āĻāĻĒāĻžāĻ¯āĻŧ
% āĻšā§āĻ¯āĻžāĻļ = ();
foreach (@array) {
$hash{get_a_key_for($_)} = $_;
}
āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ $_ āĻšāĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽāĻžāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻŽ, āĻ¤āĻžāĻ āĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻ¯āĻĻāĻŋāĻ āĻāĻāĻŋ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤, āĻāĻāĻŋ āĻāĻĻā§āĻāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ā§āĻ° āĻāĻžāĻ°āĻŖ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ
LIST āĻāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ "foreach" āĻ˛ā§āĻĒ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻšāĻŦā§āĨ¤ āĻ¸ā§āĻ āĻāĻāĻā§āĻŽāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻŽāĻ¨ā§āĻŦāĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¤ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ "grep" āĻĻā§āĻā§āĻ¨
āĻŽā§āĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ BLOCK āĻŦāĻž EXPR āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ āĻ¸āĻ¤ā§āĻ¯āĨ¤
āĻ¯āĻĻāĻŋ $_ āĻ¸ā§āĻ āĻ¸ā§āĻ¯ā§āĻā§ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻšāĻ¯āĻŧ āĻ¯ā§āĻāĻžāĻ¨ā§ "āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ°" āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧ (āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻā§āĻˇāĻŖāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻ āĻĒā§āĻ°āĻāĻ˛āĻŋāĻ¤ "my $_" āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻā§āĻ° āĻ¸āĻžāĻĨā§), āĻ¤āĻžāĻ°āĻĒāĻ°, āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻāĻžāĻŦā§ āĻāĻĒāĻ¨āĻžāĻŽ āĻāĻ°āĻž āĻāĻžāĻĄāĻŧāĻžāĻ
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻĒāĻžāĻĻāĻžāĻ¨, $_ āĻŦā§āĻ˛āĻā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻšāĻā§āĻā§; āĻ āĻ°ā§āĻĨāĻžā§ āĻāĻāĻž āĻĻā§āĻāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž
āĻŦāĻžāĻāĻ°ā§ āĻĨā§āĻā§, āĻā§āĻ¨ā§ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻĒāĻžāĻ°ā§āĻļā§āĻŦāĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻĄāĻŧāĻžāĻ¨ā§āĨ¤
"{" āĻšā§āĻ¯āĻžāĻļ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻāĻŦāĻ āĻŦā§āĻ˛āĻ āĻāĻāĻ¯āĻŧāĻ āĻļā§āĻ°ā§ āĻāĻ°ā§, āĻ¤āĻžāĻ "āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { ..." āĻšāĻ¯āĻŧ āĻļā§āĻ°ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ°ā§āĻ° āĻŦā§āĻ˛āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŦāĻž āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° EXPR, āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĨ¤ āĻāĻžāĻ°āĻŖ āĻĒāĻžāĻ°ā§āĻ˛ āĻŦāĻ¨ā§āĻ§ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻā§ āĻ¨āĻž
"}" āĻāĻāĻŋāĻā§ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¯ā§ āĻāĻāĻŋ āĻ āĻŋāĻ āĻ¯āĻž āĻā§āĻāĻā§ āĻĒā§āĻ¯āĻŧā§āĻā§ āĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻāĻāĻŋ āĻā§āĻ¨ āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°āĻā§ā§ˇ
āĻĒāĻ°ā§ "{". āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻāĻŋ āĻ¸āĻ āĻŋāĻ āĻšāĻ¯āĻŧ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻ¨āĻž āĻšāĻ¯āĻŧ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻŋāĻā§ āĻŦā§āĻāĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§ āĻ¨āĻž
āĻāĻāĻŋ "}" āĻ āĻ¨āĻž āĻ¯āĻžāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻŦāĻ āĻ āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ (āĻŦāĻž āĻ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤) āĻāĻŽāĻžāĻāĻŋāĻ° āĻŽā§āĻā§āĻŽā§āĻāĻŋ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻā§āĻ˛āĨ¤
āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ "}" āĻāĻ° āĻāĻžāĻāĻžāĻāĻžāĻāĻŋ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻāĻ°āĻž āĻšāĻŦā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
"{" āĻāĻ° āĻāĻžāĻāĻžāĻāĻžāĻāĻŋ āĻāĻŋāĻā§ āĻ¯ā§āĻŽāĻ¨ āĻĒāĻžāĻ°ā§āĻ˛āĻā§ āĻāĻŋāĻā§ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ unary "+" āĻŦāĻž āĻ¸ā§āĻŽāĻŋāĻā§āĻ˛āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§:
%hash = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { "\L$_" => 1 } @array # āĻĒāĻžāĻ°ā§āĻ˛ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°āĨ¤ āĻā§āĻ˛
%hash = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { +"\L$_" => 1 } @array # āĻĒāĻžāĻ°ā§āĻ˛ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻŦā§āĻ˛āĻ āĻāĻ°ā§āĨ¤ āĻ āĻ§āĻŋāĻāĻžāĻ°
% āĻšā§āĻ¯āĻžāĻļ = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° {; "\L$_" => 1 } @array # āĻāĻāĻŋāĻ āĻāĻžāĻ āĻāĻ°ā§
%āĻšā§āĻ¯āĻžāĻļ = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { ("\L$_" => 1) } @array # āĻāĻāĻŋ āĻāĻ°ā§
%āĻšā§āĻ¯āĻžāĻļ = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { lc($_) => 1 } @array # āĻāĻŦāĻ āĻāĻāĻŋāĨ¤
%āĻšā§āĻ¯āĻžāĻļ = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° +( lc($_) => 1 ), @array # āĻāĻāĻŋ EXPR āĻāĻŦāĻ āĻāĻžāĻ āĻāĻ°ā§!
%āĻšā§āĻ¯āĻžāĻļ = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° ( lc($_), 1 ), @array # āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ (1, @array)
āĻ āĻĨāĻŦāĻž āĻ ā§āĻ¯āĻžāĻ¨āĻ¨ āĻšā§āĻ¯āĻžāĻļ āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ°āĻā§ āĻā§āĻ° āĻāĻ°āĻ¤ā§ "+{" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨:
@hashes = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° +{ lc($_) => 1 }, @array # EXPR, āĻ¤āĻžāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨
# āĻļā§āĻˇā§ āĻāĻŽāĻž
āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻ¸āĻš āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ¨āĻžāĻŽā§ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ¤ā§āĨ¤
mkdir FILENAME,MASK
mkdir FILENAME
mkdir,
MASK āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¸āĻš FILENAME āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§
"āĻāĻŽāĻžāĻ¸ā§āĻ" āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻāĻļā§āĻ§āĻŋāĻ¤)āĨ¤ āĻāĻāĻŋ āĻ¸āĻĢāĻ˛ āĻšāĻ˛ā§ āĻāĻāĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§; āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻāĻŦāĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ¸ā§āĻ $! (āĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ)āĨ¤ MASK āĻĄāĻŋāĻĢāĻ˛ā§āĻ 0777 āĻŦāĻžāĻĻ āĻĻāĻŋāĻ˛ā§ āĻāĻŦāĻ FILENAME āĻĄāĻŋāĻĢāĻ˛ā§āĻ $_ āĻšāĻ˛ā§
āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋāĻŽā§āĻ˛āĻ MASK āĻĻāĻŋāĻ¯āĻŧā§ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻāĻŦāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻžāĻ˛
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻ¤āĻžāĻĻā§āĻ° "āĻāĻŽāĻžāĻ¸ā§āĻ" āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ MASK āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻāĻŦāĻ āĻĻāĻŋāĻ¤ā§ āĻšāĻŦā§
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋāĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻĒāĻžāĻ¯āĻŧ āĻ¨ā§āĻāĨ¤ āĻāĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽā§āĻ° āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻšāĻ˛ āĻ¯āĻāĻ¨ āĻĢāĻžāĻāĻ˛ āĻŦāĻž
āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻ¤ āĻ°āĻžāĻāĻž āĻāĻāĻŋāĻ¤ (āĻŽā§āĻ˛ āĻĢāĻžāĻāĻ˛, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ)āĨ¤ āĻĻā§āĻ¯ perlfunc(1) āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻāĻžāĻ˛ā§
"āĻāĻŽāĻžāĻ¸ā§āĻ" āĻŽāĻžāĻ¸ā§āĻā§āĻ° āĻĒāĻāĻ¨ā§āĻĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻ˛ā§āĻāĻ¨āĻž āĻāĻ°ā§āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ POSIX 1003.1-1996 āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ FILENAME-āĻāĻ° āĻ¯ā§āĻā§āĻ¨ā§ āĻ¸āĻāĻā§āĻ¯āĻž āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻā§āĻ°ā§āĻ˛āĻŋāĻ āĻ¸ā§āĻ˛ā§āĻ¯āĻžāĻļ āĻāĻŋāĻā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻāĻŦāĻ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ āĻ āĻ§āĻŋāĻāĻžāĻ° āĻĒāĻžāĻ¯āĻŧ āĻ¨āĻž, āĻ¤āĻžāĻ āĻĒāĻžāĻ°ā§āĻ˛
āĻ¸āĻŦāĻžāĻāĻā§ āĻā§āĻļāĻŋ āĻ°āĻžāĻāĻ¤ā§ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻ°ā§āĻ˛āĻŋāĻ āĻ¸ā§āĻ˛ā§āĻ¯āĻžāĻļāĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧāĨ¤
āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻāĻžāĻ āĻžāĻŽā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§, āĻāĻ° "make_path" āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻĻā§āĻā§āĻ¨
āĻĢāĻžāĻāĻ˛::āĻĒāĻžāĻĨ āĻŽāĻĄāĻŋāĻāĻ˛āĨ¤
msgctl ID, CMD, ARG
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ V IPC āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ āĻāĻ°ā§ msgctl(2)āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻŦāĻ˛āĻ¤ā§ āĻšāĻŦā§
IPC::SysV āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¸āĻ āĻŋāĻ āĻ§ā§āĻ°ā§āĻŦāĻ āĻ¸āĻāĻā§āĻāĻž āĻĒā§āĻ¤ā§ āĻĒā§āĻ°āĻĨāĻŽā§āĨ¤ āĻ¯āĻĻāĻŋ CMD "IPC_STAT" āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ ARG āĻšāĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¯āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ "msqid_ds" āĻāĻžāĻ āĻžāĻŽā§āĻā§ āĻ§āĻ°ā§ āĻ°āĻžāĻāĻŦā§āĨ¤ "ioctl" āĻāĻ° āĻŽāĻ¤ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨:
āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨, āĻļā§āĻ¨ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ "0 āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ¤ā§āĻ¯" āĻŦāĻž āĻĒā§āĻ°āĻā§āĻ¤ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻžāĻĄāĻŧāĻžāĻ perlipc-āĻ "SysV IPC" āĻāĻŦāĻ "IPC::SysV" āĻāĻŦāĻ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĻā§āĻā§āĻ¨
"āĻāĻāĻĒāĻŋāĻ¸āĻŋ::āĻ¸ā§āĻŽāĻžāĻĢā§āĻ°"āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "msgctl"āĨ¤
msgget āĻā§, āĻĒāĻ¤āĻžāĻāĻž
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ V IPC āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ āĻāĻ°ā§ msgget(2)āĨ¤ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¸āĻžāĻ°āĻŋ āĻāĻāĻĄāĻŋ, āĻŦāĻž "undef" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻĒāĻ° āĻāĻāĻžāĻĄāĻŧāĻžāĻ perlipc-āĻ "SysV IPC" āĻāĻŦāĻ "IPC::SysV" āĻāĻŦāĻ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĻā§āĻā§āĻ¨
"IPC::Msg"āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "msgget"āĨ¤
msgrcv ID,VAR,SIZE,TYPE,flags
āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¸āĻžāĻ°āĻŋ āĻāĻāĻĄāĻŋ āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒā§āĻ¤ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ V IPC āĻĢāĻžāĻāĻļāĻ¨ msgrcv āĻāĻ˛ āĻāĻ°ā§
SIZE āĻāĻ° āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻāĻāĻžāĻ° āĻ¸āĻš āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ VARāĨ¤ āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¯āĻāĻ¨
āĻĒā§āĻ°āĻžāĻĒā§āĻ¤, āĻāĻāĻāĻŋ āĻ¨ā§āĻāĻŋāĻ āĻĻā§āĻ°ā§āĻ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻāĻžāĻāĻĒ VAR-āĻ¤ā§ āĻĒā§āĻ°āĻĨāĻŽ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻšāĻŦā§,
āĻĒā§āĻ°āĻā§āĻ¤ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ. āĻāĻ āĻĒā§āĻ¯āĻžāĻāĻŋāĻāĻāĻŋ "āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("l! a*")" āĻĻāĻŋāĻ¯āĻŧā§ āĻā§āĻ˛āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛āĻā§ āĻāĻ˛āĻā§āĻāĻŋāĻ¤ āĻāĻ°ā§āĨ¤ āĻ¸āĻĢāĻ˛ āĻšāĻ˛ā§ āĻ¸āĻ¤ā§āĻ¯, āĻā§āĻ˛ āĻšāĻ˛ā§ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĻā§āĻā§āĻ¨ "SysV IPC"
perlipc-āĻ āĻāĻŦāĻ "IPC::SysV" āĻāĻŦāĻ "IPC::SysV::Msg"-āĻāĻ° āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "msgrcv"āĨ¤
msgsnd ID,MSG, āĻĢā§āĻ˛ā§āĻ¯āĻžāĻāĻ¸
āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¸āĻžāĻ°āĻŋāĻ¤ā§ āĻŦāĻžāĻ°ā§āĻ¤āĻž MSG āĻĒāĻžāĻ āĻžāĻ¤ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ V IPC āĻĢāĻžāĻāĻļāĻ¨ msgsnd āĻāĻ˛ āĻāĻ°ā§
āĻāĻāĻĄāĻŋ MSG āĻ¨ā§āĻāĻŋāĻ āĻĻā§āĻ°ā§āĻ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻāĻžāĻāĻĒ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻāĻ° āĻĒāĻ°ā§ āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻĒā§āĻ°āĻā§āĻ¤ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻ āĻŦāĻļā§āĻˇā§ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻ¨āĻŋāĻā§āĻāĨ¤ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ°
āĻĒā§āĻ¯āĻžāĻāĻŋāĻ "āĻĒā§āĻ¯āĻžāĻ("l! a*", $type, $message)" āĻĻāĻŋāĻ¯āĻŧā§ āĻ āĻ°ā§āĻāĻ¨ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ¸āĻĢāĻ˛, āĻā§āĻ˛ā§āĻ° āĻāĻĒāĻ° āĻŽāĻŋāĻĨā§āĻ¯āĻžāĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ "IPC::SysV" āĻāĻŦāĻ "IPC::SysV::Msg" āĻĻā§āĻā§āĻ¨
āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "msgsnd"āĨ¤
āĻāĻŽāĻžāĻ° VARLIST
āĻāĻŽāĻžāĻ° TYPE VARLIST
āĻāĻŽāĻžāĻ° VARLIST: ATTRS
āĻāĻŽāĻžāĻ° āĻāĻžāĻāĻĒ āĻāĻžāĻ°ā§āĻ˛āĻŋāĻ¸ā§āĻ: ATTRS
āĻāĻāĻāĻŋ "āĻāĻŽāĻžāĻ°" āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻā§āĻ°āĻž āĻŦā§āĻ˛āĻā§ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ (āĻ˛ā§āĻā§āĻ¸āĻžāĻ˛āĻŋ) āĻŦāĻ˛ā§ āĻā§āĻˇāĻŖāĻž āĻāĻ°ā§,
āĻĢāĻžāĻāĻ˛, āĻŦāĻž "āĻāĻāĻžāĻ˛"āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻžāĻ§āĻŋāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻ āĻŦāĻļā§āĻ¯āĻ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻŦāĻ¨ā§āĻ§āĻ¨ā§
TYPE āĻāĻŦāĻ ATTRS-āĻāĻ° āĻ¸āĻ āĻŋāĻ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻāĻŦāĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻāĻāĻ¨āĻ āĻŦāĻŋāĻāĻļāĻŋāĻ¤ āĻšāĻā§āĻā§āĨ¤ TYPE āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ a
āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ, "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ§ā§āĻ°ā§āĻŦāĻ" āĻŦāĻž "__PACKAGE__" āĻ¸āĻš āĻā§āĻˇāĻŋāĻ¤ āĻāĻāĻāĻŋ āĻ§ā§āĻ°ā§āĻŦāĻāĨ¤ āĻāĻāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§
"āĻā§āĻˇā§āĻ¤ā§āĻ°" pragma āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§ āĻāĻŦāĻĻā§āĻ§, āĻāĻŦāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
"āĻ ā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻāĻ¸" pragma, āĻ āĻĨāĻŦāĻž āĻĒāĻžāĻ°ā§āĻ˛ 5.8.0 āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ "Attribute::Handlers" āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§āĻ
āĻŽāĻĄāĻŋāĻāĻ˛ āĻĻā§āĻā§āĻ¨ "āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻŽāĻžāĻ°()" āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻŦāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻžāĻŦā§,
āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯, āĻāĻŦāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯::āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¸āĻš, "undef" āĻāĻāĻāĻŋ āĻĄāĻžāĻŽāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨āĻ§āĻžāĻ°āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻŽāĻžāĻ¨ā§āĻ° āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨āĻŽā§āĻ¨ā§āĻ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻžāĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻāĻŽāĻžāĻ° ( undef, $min, $hour) = āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ;
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ LABEL
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ EXPR
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§
"āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§" āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ C-āĻ¤ā§ "continue" āĻŦāĻŋāĻŦā§āĻ¤āĻŋāĻ° āĻŽāĻ¤ā§; āĻāĻāĻŋ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻļā§āĻ°ā§ āĻāĻ°ā§
āĻ˛ā§āĻĒā§āĻ°:
āĻ˛āĻžāĻāĻ¨: āĻ¯āĻāĻ¨ ( ) {
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ˛āĻžāĻāĻ¨ āĻ¯āĻĻāĻŋ /^#/; #āĻāĻŋ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°ā§āĻ¨
# ...
}
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻĒāĻ°ā§ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻŦā§āĻ˛āĻ āĻĨāĻžāĻā§ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻŽāĻ¨āĻāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻŦā§
āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻ˛āĻžāĻāĻ¨āĨ¤ āĻ¯āĻĻāĻŋ LABEL āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻŋāĻ¤āĻ°ā§āĻ° āĻā§āĻ°āĻžāĻā§ āĻŦā§āĻāĻžāĻ¯āĻŧ
āĻ˛ā§āĻĒ. "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ EXPR" āĻĢāĻ°ā§āĻŽ, āĻĒāĻžāĻ°ā§āĻ˛ 5.18.0 āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻĒāĻ˛āĻŦā§āĻ§, āĻāĻāĻāĻŋ āĻ˛ā§āĻŦā§āĻ˛ āĻ¨āĻžāĻŽ āĻšāĻ¤ā§ āĻĻā§āĻ¯āĻŧ
āĻ°āĻžāĻ¨ āĻāĻžāĻāĻŽā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ LABEL" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ āĻāĻŋāĻ¨ā§āĻ¨āĨ¤
"āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§" āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž āĻ¯āĻž āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯ā§āĻŽāĻ¨ "eval {}", "sub
{}", āĻŦāĻž "āĻāĻ°ā§āĻ¨ {}", āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ grep() or āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° () operation.
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻ¨āĻŋāĻā§āĻ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻāĻ¤āĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻ˛ā§āĻĒā§āĻ° āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻ¯āĻž āĻāĻāĻŦāĻžāĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧāĨ¤
āĻāĻāĻāĻžāĻŦā§ "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§" āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻ¤āĻžāĻĄāĻŧāĻžāĻ¤āĻžāĻĄāĻŧāĻŋ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻŦā§āĨ¤
āĻāĻŋāĻāĻžāĻŦā§ "āĻļā§āĻˇ", "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§", āĻāĻŦāĻ "āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨" āĻāĻžāĻ āĻāĻ°ā§ āĻ¤āĻžāĻ° āĻāĻāĻāĻŋ āĻāĻŋāĻ¤ā§āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¨āĻžāĻŽāĻ§āĻžāĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, āĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨āĻŽā§āĻ¨ā§āĻā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻšāĻž āĻ
āĻā§āĻšāĻžāĻ°āĻž-āĻŽāĻ¤-āĻāĻāĻāĻŋ-āĻĢāĻžāĻāĻļāĻ¨ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻĨā§āĻā§ āĻŽā§āĻā§āĻ¤, āĻ¤āĻžāĻ "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ ("foo")āĨ¤"bar"" āĻāĻ° āĻĢāĻ˛ā§ "āĻŦāĻžāĻ°" āĻšāĻŦā§
"āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§" āĻ¤āĻ°ā§āĻā§āĻ° āĻ āĻāĻļ āĻšāĻ¤ā§āĨ¤
āĻā§āĻ¨ āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻā§āĻ¨ā§ āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¨ā§āĻ
āĻā§āĻ¨ā§ āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¨ā§āĻ
āĻā§āĻ¨ āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¨ā§āĻ
āĻā§āĻ¨ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¨ā§āĻ
"āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻĢāĻžāĻāĻļāĻ¨ āĻĻā§āĻā§āĻ¨, āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ "āĻ¨āĻž" āĻŦāĻŋāĻĒāĻ°ā§āĻ¤āĨ¤
oct EXPR
oct EXPR āĻā§ āĻ āĻā§āĻāĻžāĻ˛ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ (āĻ¯āĻĻāĻŋ EXPR
"0x" āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧ, āĻāĻāĻŋāĻā§ āĻšā§āĻā§āĻ¸ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻ¨ā§āĻ§ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧ
"0b" āĻ¸āĻš, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¨ā§āĻ¤ā§āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸ āĻ¸āĻŦ āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¤āĻŋāĻ¨āĻāĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĨ¤) āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤āĻāĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄā§ āĻĻāĻļāĻŽāĻŋāĻ, āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ, āĻ āĻā§āĻāĻžāĻ˛ āĻāĻŦāĻ āĻšā§āĻā§āĻ¸ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻŦā§
āĻĒāĻžāĻ°ā§āĻ˛ āĻ¨ā§āĻā§āĻļāĻ¨:
$val = oct($val) āĻ¯āĻĻāĻŋ $val =~ /^0/;
āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻ āĻ¨ā§āĻ¯ āĻĒāĻĨā§ āĻ¯ā§āĻ¤ā§ (āĻ āĻā§āĻāĻžāĻ˛ā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨), āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
sprintf() or printf():
$dec_perms = (stat("āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ"))[2] & 07777;
$oct_perm_str = sprintf "%o", $perms;
āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻŋāĻ° āĻ āĻā§āĻā§āĻŦāĻ°() āĻĢāĻžāĻāĻļāĻ¨ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¯ā§āĻŽāĻ¨ 644 āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻŽā§āĻĄā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒāĨ¤ āĻ¯āĻĻāĻŋāĻ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°ā§
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻ¸āĻāĻā§āĻ¯āĻž, āĻāĻ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻŦā§āĻ¸ 10 āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻ āĻā§āĻ°āĻŖā§ āĻ¸āĻžāĻĻāĻž āĻ¸ā§āĻĨāĻžāĻ¨āĻā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯ā§āĻŽāĻ¨ āĻā§āĻ¨ā§ āĻ āĻ¨ā§āĻāĻžāĻŽā§ āĻ¨āĻ¨-āĻĄāĻŋāĻāĻŋāĻ,
āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻāĻŋ āĻĻāĻļāĻŽāĻŋāĻ āĻŦāĻŋāĻ¨ā§āĻĻā§ ("oct" āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ -āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°ā§, āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻ¨āĻ¯āĻŧ
āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻŦāĻž āĻāĻžāĻ¸āĻŽāĻžāĻ¨ āĻŦāĻŋāĻ¨ā§āĻĻā§)āĨ¤
FILEHANDLE āĻā§āĻ˛ā§āĻ¨, EXPR
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻŽā§āĻĄ, āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻ¸ āĻā§āĻ˛ā§āĻ¨
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛, āĻŽā§āĻĄ, āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻ¸, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻā§āĻ˛ā§āĻ¨
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻŽā§āĻĄ, āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻā§āĻ˛ā§āĻ¨
FILEHANDLE āĻā§āĻ˛ā§āĻ¨
āĻ¯ā§ āĻĢāĻžāĻāĻ˛āĻāĻŋāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ EXPR āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¸ā§āĻ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻā§āĻ˛ā§ āĻāĻŦāĻ āĻāĻāĻŋāĻā§ FILEHANDLE āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĨ¤
āĻĒāĻĄāĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻ¤ā§ āĻ¸āĻšāĻ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻā§āĻ˛ā§āĻ¨ (āĻāĻŽāĻžāĻ° $fh, "<", "input.txt")
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻā§āĻ˛āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž < input.txt: $!";
āĻāĻŦāĻ āĻ˛ā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯:
āĻā§āĻ˛ā§āĻ¨ (āĻāĻŽāĻžāĻ° $fh, ">", "output.txt")
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻā§āĻ˛āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž > output.txt: $!";
(āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻžāĻĒāĻ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻā§āĻ˛āĻž (): āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻā§ āĻāĻĻā§āĻ°āĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻāĻ¯āĻŧ āĻāĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯
āĻĒāĻžāĻ°āĻ˛ā§āĻĒā§āĻ¨ā§āĻā§āĻ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤)
āĻ¯āĻĻāĻŋ FILEHANDLE āĻāĻāĻāĻŋ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ (āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§ āĻŦāĻž āĻšā§āĻ¯āĻžāĻļ āĻāĻĒāĻžāĻĻāĻžāĻ¨), āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻ āĻā§āĻāĻžāĻāĻāĻžāĻāĻĢāĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ā§ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¨āĻ¤ā§āĻ¨ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻŦā§āĻ¨āĻžāĻŽā§ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛. āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻ¯āĻĻāĻŋ FILEHANDLE āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ°
āĻŽāĻžāĻ¨ āĻšāĻ˛ āĻāĻ¸āĻ˛ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĨ¤ (āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻāĻ ā§āĻ° "refs"" āĻāĻāĻŋāĻ¤ āĻ¨āĻž āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻŦā§āĨ¤)
āĻ¯āĻĻāĻŋ āĻ¤āĻŋāĻ¨āĻāĻŋ (āĻŦāĻž āĻ¤āĻžāĻ° āĻŦā§āĻļāĻŋ) āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻĨāĻžāĻā§, āĻāĻĒā§āĻ¨ āĻŽā§āĻĄ (āĻāĻā§āĻāĻŋāĻ āĻ¸āĻš
āĻāĻ¨āĻā§āĻĄāĻŋāĻ) āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§ āĻ¤ā§āĻ¤ā§āĻ¯āĻŧ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻĨā§āĻā§ āĻāĻ˛āĻžāĻĻāĻžāĨ¤ āĻ¯āĻĻāĻŋ MODE
"", āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻā§āĻ˛āĻž āĻšāĻ¯āĻŧā§ˇ
āĻāĻāĻāĻĒā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯, āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻĨāĻŽā§ āĻā§āĻāĻā§ ("āĻā§āĻ˛ā§āĻŦāĻžāĻ°āĻĄ") āĻāĻŦāĻ āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦāĻšā§āĻ¨
āĻ¨āĻ¤ā§āĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻĢāĻžāĻāĻ˛āĨ¤ āĻ¯āĻĻāĻŋ MODE āĻšāĻ¯āĻŧ ">>", āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻŦāĻžāĻ° āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻž āĻšāĻ¯āĻŧ
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻĒāĻ¨āĻŋ ">" āĻŦāĻž "<" āĻāĻ° āĻ¸āĻžāĻŽāĻ¨ā§ āĻāĻāĻāĻŋ "+" āĻ°āĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻĒāĻĄāĻŧāĻ¤ā§ āĻāĻžāĻ¨ āĻāĻŦāĻ āĻāĻāĻ¯āĻŧāĻ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ā§ˇ
āĻĢāĻžāĻāĻ˛ā§ āĻĒā§āĻ°āĻŦā§āĻļāĻžāĻ§āĻŋāĻāĻžāĻ° āĻ˛āĻŋāĻā§āĻ¨; āĻāĻāĻāĻžāĻŦā§ "+<" āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻĄāĻŧāĻž/āĻ˛ā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
updates--"+>" āĻŽā§āĻĄ āĻĒā§āĻ°āĻĨāĻŽā§ āĻĢāĻžāĻāĻ˛āĻāĻŋāĻā§ āĻā§āĻ˛ā§āĻŦāĻžāĻ° āĻāĻ°āĻŦā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž
āĻĒāĻžāĻ ā§āĻ¯ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻāĻĒāĻĄā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ°āĻŋāĻĄ-āĻ°āĻžāĻāĻ āĻŽā§āĻĄ, āĻ¯ā§āĻšā§āĻ¤ā§ āĻ¤āĻžāĻĻā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻ°ā§āĻāĻ°ā§āĻĄ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻĻā§āĻāĻž
āĻĻā§āĻ¯ -i āĻāĻāĻāĻŋ āĻāĻžāĻ˛ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻāĻ¨ā§āĻ¯ perlrun āĻ āĻ¸ā§āĻāĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻĢāĻžāĻāĻ˛ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¸āĻā§āĻā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻ° 0666 āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋāĻ° "āĻāĻŽāĻžāĻ¸ā§āĻ" āĻŽāĻžāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻāĻĒāĻ¸āĻ°ā§āĻ āĻ āĻ¨ā§āĻ°ā§āĻĒ fopen(3) "r", "r+", "w", "w+", "a" āĻāĻ° āĻŽā§āĻĄ
āĻāĻŦāĻ "a+"āĨ¤
āĻāĻ˛ā§āĻ° āĻāĻ- āĻāĻŦāĻ āĻĻā§āĻ-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĢāĻ°ā§āĻŽā§, āĻŽā§āĻĄ āĻāĻŦāĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤
āĻāĻāĻ¤ā§āĻ°āĻŋāĻ¤ (āĻ¸ā§āĻ āĻā§āĻ°āĻŽāĻžāĻ¨ā§āĻ¸āĻžāĻ°ā§), āĻŦāĻŋāĻļā§āĻˇāĻ¤ āĻ¸āĻžāĻĻāĻž āĻ¸ā§āĻĨāĻžāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻĨāĻ āĻāĻ°āĻžāĨ¤ āĻ¤ā§āĻŽāĻŋ āĻĒāĻžāĻ°āĻŦā§--āĻāĻŋāĻ¨ā§āĻ¤ā§
āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ--āĻāĻ āĻĢāĻ°ā§āĻŽāĻā§āĻ˛āĻŋāĻ° āĻŽā§āĻĄāĻāĻŋ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤ āĻ¯āĻāĻ¨ āĻ¸ā§āĻ āĻŽā§āĻĄāĻāĻŋ "<" āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻž āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ āĻāĻā§āĻˇāĻ°āĻŋāĻ āĻšāĻ˛ā§ "āĻāĻĒā§āĻ¨" āĻāĻ° āĻĻā§āĻ-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĢāĻ°ā§āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻ¤āĻŋāĻ¨ āĻŦāĻž āĻ¤āĻ¤ā§āĻ§āĻŋāĻ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻĻāĻŋ MODE "|-" āĻšāĻ¯āĻŧ, āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻā§āĻ¨ āĻāĻāĻāĻĒā§āĻāĻāĻŋ āĻĒāĻžāĻāĻĒ āĻāĻ°āĻž āĻšāĻŦā§ āĻāĻŦāĻ āĻ¯āĻĻāĻŋ MODE āĻšāĻ¯āĻŧ "-|", āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽāĻāĻŋ āĻāĻāĻāĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻā§ āĻĒāĻžāĻāĻĒ āĻāĻāĻāĻĒā§āĻ āĻ¯ā§ āĻāĻŽāĻžāĻ¨ā§āĻĄ. āĻĻā§āĻ-āĻ¯ā§āĻā§āĻ¤āĻŋ (āĻāĻŦāĻ āĻāĻ-āĻ¯ā§āĻā§āĻ¤āĻŋ) āĻāĻāĻžāĻ°ā§, āĻāĻ
āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻ¸āĻžāĻĨā§ āĻĄā§āĻ¯āĻžāĻļ ("-") āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤ āĻĻā§āĻā§āĻ¨ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻā§āĻ˛āĻž () āĻāĻāĻĒāĻŋāĻ¸āĻŋāĻ° āĻāĻ¨ā§āĻ¯" perlipc-āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻāĻ° āĻāĻ°ā§ āĻāĻĻāĻžāĻšāĻ°āĻŖāĨ¤ (āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄā§ "āĻā§āĻ˛āĻž" āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¨ā§āĻ āĻ¯āĻž āĻāĻāĻ¯āĻŧāĻ āĻĒāĻžāĻāĻĒ āĻāĻ°ā§
āĻāĻŦāĻ āĻāĻāĻ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĻā§āĻā§āĻ¨ IPC::Open2, IPC::Open3, āĻāĻŦāĻ "Bidirectional Communication with others
āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ perlipc āĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž"āĨ¤)
āĻĒāĻžāĻāĻĒ āĻāĻāĻžāĻ°ā§ āĻ¤āĻŋāĻ¨āĻāĻŋ āĻŦāĻž āĻ¤āĻ¤ā§āĻ§āĻŋāĻ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¨āĻŋāĻ¯āĻŧā§ āĻā§āĻ˛ā§, āĻ¯āĻĻāĻŋ LIST āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻĨāĻžāĻā§ (āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤
āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ¨āĻžāĻŽā§āĻ° āĻĒāĻ°ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ) āĻ¤āĻžāĻ°āĻĒāĻ° LIST āĻāĻŽāĻ¨ā§āĻ¤ā§āĻ°āĻŋāĻ¤ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§ āĻĒāĻ°āĻŋāĻŖāĻ¤ āĻšāĻ¯āĻŧ
āĻ¯āĻĻāĻŋ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻāĻāĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¤āĻŋāĻ¨āĻāĻŋāĻ° āĻŦā§āĻļāĻŋ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻš "āĻā§āĻ˛āĻž" āĻāĻ° āĻ āĻ°ā§āĻĨ
āĻ¨āĻ¨-āĻĒāĻžāĻāĻĒ āĻŽā§āĻĄāĻā§āĻ˛āĻŋ āĻāĻāĻ¨āĻ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ, āĻ¤āĻŦā§ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ "āĻ¸ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋ" āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĻāĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§ā§ˇ
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ āĻ°ā§āĻĨāĨ¤
āĻĻā§āĻ-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ (āĻāĻŦāĻ āĻāĻ-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ) āĻĢāĻ°ā§āĻŽā§, "<-" āĻŦāĻž "-" āĻā§āĻ˛āĻ˛ā§ STDIN āĻ
opening ">-" STDOUT āĻā§āĻ˛ā§āĨ¤
I/O āĻ¸ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻā§āĻ˛āĻžāĻ° āĻ¤āĻŋāĻ¨-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĢāĻ°ā§āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ (āĻāĻŦāĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤)
(āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ "āĻļā§āĻā§āĻāĻ˛āĻž" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ) āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻž āĻā§āĻāĻžāĻŦā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°ā§
āĻāĻ¨āĻĒā§āĻ āĻāĻŦāĻ āĻāĻāĻāĻĒā§āĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ (āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻž āĻāĻŦāĻ PerlIO āĻĻā§āĻā§āĻ¨)āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
āĻā§āĻ˛ā§āĻ¨ (āĻāĻŽāĻžāĻ° $fh, "<:āĻāĻ¨āĻā§āĻĄāĻŋāĻ(UTF-8)", "āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ")
|| die "UTF-8 āĻāĻ¨āĻā§āĻĄ āĻāĻ°āĻž āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ āĻā§āĻˇāĻ° āĻ¸āĻŽā§āĻŦāĻ˛āĻŋāĻ¤ UTF8-āĻāĻ¨āĻā§āĻĄā§āĻĄ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛ā§; perluniintro āĻĻā§āĻā§āĻ¨āĨ¤ āĻŦāĻŋāĻāĻĻā§āĻ°āĻ
āĻ¯ā§ āĻ¸ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋ āĻ¯āĻĻāĻŋ āĻ¤āĻŋāĻ¨-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĢāĻ°ā§āĻŽā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻ¸ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
${^OPEN} (āĻĻā§āĻā§āĻ¨ āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°; āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻā§āĻ˛āĻž pragma āĻŦāĻž āĻ¸ā§āĻāĻ -āĻ¸āĻŋāĻāĻĄāĻŋ) āĻšāĻ¯āĻŧ
āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻā§āĻ¨ āĻ¨āĻžāĻŽ āĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§āĻ¨ āĻ¤āĻŦā§ āĻ¸ā§āĻ āĻ¸ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋāĻ āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻŦā§
āĻāĻāĻž āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻ¸ā§āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻ¸ā§āĻ¤āĻ° (:Unix-āĻ raw,
āĻāĻāĻ¨ā§āĻĄā§āĻā§ :crlf) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻāĻĒā§āĻ¨ āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯ā§āĻ° āĻāĻĒāĻ° āĻ āĻļā§āĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨āĨ¤ āĻ¯āĻĻāĻŋ "āĻā§āĻ˛āĻž"
āĻāĻāĻāĻŋ āĻĒāĻžāĻāĻĒ āĻāĻĄāĻŧāĻŋāĻ¤, āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻ¸āĻžāĻŦāĻĒā§āĻ°āĻ¸ā§āĻ¸ā§āĻ° āĻĒāĻŋāĻĄ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻžāĻ˛āĻžāĻā§āĻā§āĻ¨ āĻ¯āĻž āĻĒāĻžāĻ ā§āĻ¯ āĻĢāĻžāĻāĻ˛ āĻāĻŦāĻ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻāĻ°ā§
āĻĢāĻžāĻāĻ˛, āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻĄāĻŋāĻ˛ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŋāĻĒāĻ¸ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻžāĻ° "āĻŦāĻŋāĻ¨āĻŽā§āĻĄ" āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤ āĻāĻžāĻŦāĻŋ
"āĻŦāĻŋāĻ¨āĻŽā§āĻĄ" āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻāĻŽāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻāĻŦāĻ āĻ¯ā§āĻā§āĻ˛āĻŋ āĻ¨ā§āĻ āĻ¤āĻžāĻĻā§āĻ° āĻĒāĻžāĻ ā§āĻ¯
āĻĢāĻžāĻāĻ˛ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻāĨ¤ āĻāĻāĻ¨āĻŋāĻā§āĻ¸, āĻŽā§āĻ¯āĻžāĻ āĻāĻāĻ¸, āĻāĻŦāĻ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻ¨ 9 āĻāĻ° āĻŽāĻ¤ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋ, āĻ¯ā§āĻā§āĻ˛āĻŋ āĻāĻāĻāĻŋ āĻāĻāĻ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻˇ āĻšāĻ¯āĻŧā§ˇ
āĻ āĻā§āĻˇāĻ° āĻāĻŦāĻ "\n" āĻšāĻŋāĻ¸āĻžāĻŦā§ C-āĻ¤ā§ āĻ¸ā§āĻ āĻ āĻā§āĻˇāĻ°āĻāĻŋāĻā§ āĻāĻ¨āĻā§āĻĄ āĻāĻ°ā§āĻ¨ "āĻŦāĻŋāĻ¨āĻŽā§āĻĄ" āĻāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¨ā§āĻāĨ¤ āĻŦāĻžāĻāĻŋāĻĻā§āĻ° āĻĻāĻ°āĻāĻžāĻ°
āĻāĻāĻž.
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ āĻ¨ā§āĻ°ā§āĻ§āĻāĻŋ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ˛ā§ āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻž āĻā§āĻŦ āĻāĻŽāĻ āĻāĻāĻāĻŋ āĻāĻžāĻ˛ āĻ§āĻžāĻ°āĻŖāĻž, āĻ¤āĻžāĻ
"āĻāĻĒā§āĻ¨" āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ "āĻĄāĻžāĻ" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ "āĻŽāĻ°āĻž" āĻāĻĒāĻ¨āĻŋ āĻ¯āĻž āĻāĻžāĻ¨ āĻ¤āĻž āĻāĻ°āĻŦā§ āĻ¨āĻž (āĻŦāĻ˛ā§āĻ¨, āĻ
CGI āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ (āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŽāĻĄāĻŋāĻāĻ˛ āĻāĻā§
āĻ¯ā§ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻāĻŋ āĻ¸āĻžāĻšāĻžāĻ¯ā§āĻ¯ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§)) āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻž āĻĨā§āĻā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨āĨ¤
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻŦā§ āĻ¯āĻāĻ¨ āĻāĻ° āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ¸āĻāĻā§āĻ¯āĻž āĻļā§āĻ¨ā§āĻ¯ā§ āĻĒā§āĻāĻā§ āĻ¯āĻžāĻŦā§āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻāĻāĻŋ
āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻāĻāĻžāĻŦā§ āĻ¸ā§āĻā§āĻĒāĻĄ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§ "my" āĻĻāĻŋāĻ¯āĻŧā§ āĻā§āĻˇāĻŖāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻļā§āĻˇ āĻšāĻ¯āĻŧ
āĻĒāĻ°āĻŋāĻŦā§āĻˇā§āĻāĻŋāĻ¤ āĻ¸ā§āĻ¯ā§āĻāĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧ āĻŦāĻ¨ā§āĻ§ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻāĻŋ
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻž āĻāĻžāĻ˛, āĻŦāĻŋāĻļā§āĻˇāĻ¤ āĻ¯āĻž āĻ˛ā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ:
āĻŦāĻ¨ā§āĻ§ ($āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛)
|| āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ "āĻŦāĻ¨ā§āĻ§ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§āĻā§: $!";
āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻžāĻ¨ā§ āĻļā§āĻ˛ā§ āĻšāĻ˛ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž
āĻā§āĻ˛ā§āĻ¨ (FH, "<", "input.txt")
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻā§āĻ˛āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž < input.txt: $!";
āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻĒāĻ¨āĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§ "FH" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, "āĻŦāĻ¨ā§āĻ§ FH" āĻāĻŦāĻ "" āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋāĻ¤ā§āĨ¤ āĻŦāĻŋāĻāĻĻā§āĻ°āĻ
āĻ¯ā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻŦāĻŦā§āĻ¯āĻžāĻĒā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛, āĻ¤āĻžāĻ āĻāĻ āĻĢāĻ°ā§āĻŽāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻĄā§ āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤
āĻāĻāĻāĻŋ āĻļāĻ°ā§āĻāĻāĻžāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ āĻāĻ-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻ˛ āĻā§āĻ˛ā§āĻŦāĻžāĻ˛ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻĨā§āĻā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻ¨ā§āĻ¯āĻŧ
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻ¨āĻžāĻŽā§āĻ°:
$ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ = 100;
āĻā§āĻ˛ā§āĻ¨(āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§) āĻŦāĻž āĻĄāĻžāĻ "āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ āĻā§āĻāĻā§ āĻĒāĻžāĻā§āĻāĻŋ āĻ¨āĻž $ARTICLE: $!\n";
āĻāĻāĻžāĻ¨ā§ $ARTICLE āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻāĻŋ āĻā§āĻ˛ā§āĻŦāĻžāĻ˛ (āĻĒā§āĻ¯āĻžāĻā§āĻ) āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻšāĻ¤ā§ āĻšāĻŦā§ - "āĻāĻŽāĻžāĻ°" āĻĻāĻŋāĻ¯āĻŧā§ āĻā§āĻˇāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ
āĻŦāĻž "āĻ°āĻžāĻˇā§āĻā§āĻ°"āĨ¤
āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻāĻāĻŋ āĻ°āĻŋāĻĄ/āĻ°āĻžāĻāĻ āĻŽā§āĻĄ āĻ¸āĻš āĻ¤āĻŋāĻ¨-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĢāĻ°ā§āĻŽ āĻāĻŦāĻ āĻ¤ā§āĻ¤ā§āĻ¯āĻŧāĻāĻŋ
āĻ¯ā§āĻā§āĻ¤āĻŋ "undef" āĻšāĻā§āĻā§:
āĻā§āĻ˛ā§āĻ¨ (āĻāĻŽāĻžāĻ° $tmp, "+>", undef) āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ...
āĻāĻāĻāĻŋ āĻŦā§āĻ¨āĻžāĻŽā§ āĻ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§ āĻĢāĻžāĻāĻ˛ā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻā§āĻ˛ā§āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ "+<" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻžāĻ āĻāĻ°ā§
āĻĒā§āĻ°āĻ¤āĻŋāĻ¸āĻžāĻŽā§āĻ¯, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§ āĻĢāĻžāĻāĻ˛ā§ āĻāĻŋāĻā§ āĻ˛ā§āĻāĻžāĻ° āĻāĻĨāĻž āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻāĻāĻŋāĻ¤
āĻĒā§āĻ°āĻĨāĻŽ āĻ¤ā§āĻŽāĻžāĻ° āĻĻāĻ°āĻāĻžāĻ° āĻšāĻŦā§ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ () āĻĒāĻĄāĻŧāĻž āĻāĻ°āĻ¤ā§.
āĻĒāĻžāĻ°ā§āĻ˛ āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ PerlIO āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻšāĻ¯āĻŧ; āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨ (āĻ¯ā§āĻŽāĻ¨ āĻŦāĻŋāĻ˛ā§āĻĄāĻŋāĻ
"āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° -Uuseperlio" āĻĻāĻŋāĻ¯āĻŧā§ āĻĒāĻžāĻ°ā§āĻ˛), āĻāĻĒāĻ¨āĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§ āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§:
open($fh, ">", \$variable) || ..
āĻāĻāĻāĻŋ āĻāĻ¨-āĻŽā§āĻŽāĻ°āĻŋ āĻĢāĻžāĻāĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§ "STDOUT" āĻŦāĻž "STDERR" āĻā§āĻ˛āĻ¤ā§ (āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ) āĻāĻāĻŋāĻā§ āĻĒā§āĻ°āĻĨāĻŽā§ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§āĻ¨:
āĻŦāĻ¨ā§āĻ§ STDOUT;
āĻā§āĻ˛āĻž(STDOUT, ">", \$variable)
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "STDOUT āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻā§āĻ˛ā§āĻ¨(LOG, ">>/usr/spool/news/twitlog"); # (āĻ˛āĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤)
# āĻ¯āĻĻāĻŋ āĻāĻĒā§āĻ¨ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧ, āĻāĻāĻāĻĒā§āĻ āĻŦāĻžāĻ¤āĻŋāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
open(my $dbase, "+<", "dbase.mine") # āĻāĻĒāĻĄā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛ā§āĻ¨
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻāĻĒāĻĄā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ 'dbase.mine' āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž: $!";
āĻā§āĻ˛ā§āĻ¨ (āĻāĻŽāĻžāĻ° $dbase, "+<dbase.mine") # āĻāĻāĻāĻāĻžāĻŦā§
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻāĻĒāĻĄā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ 'dbase.mine' āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž: $!";
āĻā§āĻ˛ā§āĻ¨(āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§, "-|", "āĻ¸āĻŋāĻāĻžāĻ° <$āĻāĻ°ā§āĻāĻŋāĻā§āĻ˛") # āĻĄāĻŋāĻā§āĻ°āĻŋāĻĒā§āĻ āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§
āĻ āĻĨāĻŦāĻž āĻŽāĻ°ā§ "āĻ¸āĻŋāĻāĻžāĻ° āĻļā§āĻ°ā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
āĻā§āĻ˛ā§āĻ¨(āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§, "āĻ¸āĻŋāĻāĻžāĻ° <$āĻāĻ°ā§āĻāĻŋāĻā§āĻ˛ |") # āĻāĻāĻāĻāĻžāĻŦā§
āĻ āĻĨāĻŦāĻž āĻŽāĻ°ā§ "āĻ¸āĻŋāĻāĻžāĻ° āĻļā§āĻ°ā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
open(EXTRACT, "|sort>Tmp$$") # $$ āĻšāĻ˛ āĻāĻŽāĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¸ā§āĻ¸ āĻāĻāĻĄāĻŋ
or die "āĻŦāĻžāĻāĻžāĻ āĻļā§āĻ°ā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
# āĻāĻ¨-āĻŽā§āĻŽāĻ°āĻŋ āĻĢāĻžāĻāĻ˛
āĻā§āĻ˛āĻž(āĻŽā§āĻŽāĻ°āĻŋ, ">", \$var)
or die "āĻŽā§āĻŽāĻ°āĻŋ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻŽā§āĻŽāĻ°āĻŋ "foo!\n"; # āĻāĻāĻāĻĒā§āĻ $var āĻ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻŦā§
# āĻĒā§āĻ°āĻ¸ā§āĻ¸ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¸āĻš āĻ¯ā§āĻā§āĻ¨ā§ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤
foreach $file (@ARGV) {
āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž ($ āĻĢāĻžāĻāĻ˛, "fh00");
}
āĻāĻĒ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž {
my($filename, $input) = @_;
$input++; # āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ¨āĻā§āĻ°āĻŋāĻŽā§āĻ¨ā§āĻ
āĻ¯āĻĻāĻŋ āĻ¨āĻž (open($input, "<", $filename)) {
STDERR āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ "$filename āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!\n";
āĻāĻ¸āĻ¤ā§;
}
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ $_;
āĻ¯āĻāĻ¨ () { # āĻ¨ā§āĻ āĻāĻ¨āĻĄāĻžāĻāĻ°ā§āĻāĻļāĻžāĻ¨ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°
āĻ¯āĻĻāĻŋ (/^#include "(.*)"/) {
āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž ($1, $āĻāĻ¨āĻĒā§āĻ);
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§;
}
#... # āĻ¯āĻžāĻ āĻšā§āĻ
}
}
PerlIO āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ perliol āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻĒāĻ¨āĻŋ, āĻŦā§āĻ°ā§āĻ¨ āĻļā§āĻ˛ āĻāĻ¤āĻŋāĻšā§āĻ¯ā§, ">&", āĻāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻāĻŋ EXPR āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¯ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻŦāĻžāĻāĻŋ āĻ āĻāĻļāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ (āĻŦāĻž āĻĢāĻžāĻāĻ˛) āĻāĻ° āĻ¨āĻžāĻŽ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§, āĻ¯āĻĻāĻŋ āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ) āĻĒā§āĻ°āĻ¤āĻžāĻ°āĻŖāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ (āĻ¯ā§āĻŽāĻ¨ DUP(2)) āĻāĻŦāĻ āĻā§āĻ˛āĻžāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻĒāĻ°ā§ "&" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
">", ">>", "", "+>>", āĻāĻŦāĻ "+<"āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻŽā§āĻĄ āĻāĻ° āĻŽā§āĻĄā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§
āĻŽā§āĻ˛ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĨ¤ (āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĄā§āĻĒāĻŋāĻ āĻā§āĻ¨ā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻžāĻ¯āĻŧ āĻ¨ā§āĻ¯āĻŧ āĻ¨āĻž
IO āĻŦāĻžāĻĢāĻžāĻ°ā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§āĨ¤) āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĨā§āĻ°āĻŋ-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĢāĻ°ā§āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯ā§āĻā§āĻ¨ā§ āĻāĻāĻāĻŋ āĻĒāĻžāĻ¸ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž, āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¨āĻžāĻŽ, āĻŦāĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ "āĻāĻāĻāĻŋ āĻā§āĻ˛ā§āĻŦā§āĻ° āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸"āĨ¤
āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž "STDOUT" āĻāĻŦāĻ "STDERR" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ, āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻŦāĻ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°ā§
āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ:
#!/usr/bin/perl
āĻā§āĻ˛ā§āĻ¨(my $oldout, ">&STDOUT") āĻ āĻĨāĻŦāĻž āĻŽāĻžāĻ°āĻž āĻ¯āĻžāĻ¨ "STDOUT: $!";
āĻā§āĻ˛ā§āĻ¨(OLDERR, ">&", \"STDERR) āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "STDERR: $!";
āĻā§āĻ˛ā§āĻ¨ (STDOUT, '>', "foo.out") āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "STDOUT āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž: $!";
āĻā§āĻ˛ā§āĻ¨(STDERR, ">&STDOUT") āĻ āĻĨāĻŦāĻž āĻŽāĻžāĻ°āĻž āĻ¯āĻžāĻ¨ "STDOUT: $!";
STDERR āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨; $| = 1; # āĻāĻ¨āĻŦāĻžāĻĢāĻžāĻ° āĻāĻ°āĻž
STDOUT āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨; $| = 1; # āĻāĻ¨āĻŦāĻžāĻĢāĻžāĻ° āĻāĻ°āĻž
STDOUT "stdout 1\n" āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨; # āĻāĻ āĻāĻ¨ā§āĻ¯ āĻāĻžāĻ āĻāĻ°ā§
STDERR "stderr 1\n" āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨; #āĻāĻŋāĻ āĻ¸āĻžāĻŦāĻĒā§āĻ°āĻ¸ā§āĻ¸
āĻā§āĻ˛ā§āĻ¨(STDOUT, ">&", $oldout) āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻĄā§āĻĒ āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž \$oldout: $!";
āĻā§āĻ˛ā§āĻ¨(STDERR, ">&OLDERR") āĻ āĻĨāĻŦāĻž āĻŽāĻ°ā§āĻ¨ "āĻŦāĻĄāĻŧā§āĻĻā§āĻ° āĻĄā§āĻĒ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž: $!";
STDOUT "stdout 2\n" āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨;
STDERR "stderr 2\n" āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨;
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ '<&=X' āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§āĻ¨, āĻ¯ā§āĻāĻžāĻ¨ā§ "X" āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§ āĻ¨āĻŽā§āĻŦāĻ° āĻŦāĻž āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ¤āĻžāĻšāĻ˛ā§
āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸ā§āĻ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§āĻ° C āĻāĻ° "fdopen" āĻāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ āĻāĻžāĻ āĻāĻ°āĻŦā§ (āĻāĻŦāĻ āĻāĻ˛ āĻ¨āĻ¯āĻŧ
DUP(2)); āĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻ°āĻ āĻ¤ā§āĻā§āĻāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
# āĻāĻ¨āĻĒā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻž, $fd āĻāĻ° āĻĢāĻžāĻāĻ˛āĻ¨ā§ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻā§āĻ˛ā§āĻ¨ (āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, "<&=$fd")
or
āĻā§āĻ˛ā§āĻ¨ (āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, "<&=", $fd)
or
# OLDFH āĻāĻ° āĻĢāĻžāĻāĻ˛āĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ¨ā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛ā§āĻ¨
āĻā§āĻ˛āĻž (FH, ">>&=", OLDFH)
or
āĻā§āĻ˛āĻž (FH, ">>&=OLDFH")
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ parsimonious āĻšāĻāĻ¯āĻŧāĻžāĻāĻžāĻ āĻāĻĒāĻāĻžāĻ°ā§ (parsimonious āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ) āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¯āĻāĻ¨ āĻāĻŋāĻā§ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻļā§āĻ˛, āĻ¯ā§āĻŽāĻ¨ āĻ˛āĻāĻŋāĻ
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° flock(). āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻļā§āĻ§ā§ "open(A, ">>&B") āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ A-āĻ¤ā§ āĻĨāĻžāĻāĻŦā§ āĻ¨āĻž
B āĻāĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§, āĻāĻŦāĻ āĻ¸ā§āĻāĻāĻ¨ā§āĻ¯ flock(A) flock(B) āĻšāĻŦā§ āĻ¨āĻž āĻŦāĻž āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§āĨ¤
āĻāĻŋāĻ¨ā§āĻ¤ā§ "open(A, ">>&=B") āĻāĻ° āĻ¸āĻžāĻĨā§, āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻāĻāĻ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻžāĻ āĻāĻ°āĻŦā§
āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ 5.8.0 āĻāĻ° āĻĨā§āĻā§ āĻĒā§āĻ°āĻžāĻ¨ā§ āĻĒāĻžāĻ°ā§āĻ˛āĻ¸ā§āĻ° āĻ āĻ§ā§āĻ¨ā§, āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ¸āĻŋ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ fdopen()
"=" āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻ¤ā§āĨ¤ āĻ āĻ¨ā§āĻ āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, fdopen() āĻĢāĻžāĻāĻ˛ āĻ¯āĻāĻ¨ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧ
āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻŽāĻžāĻ¨ āĻ āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°ā§, āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ 255āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛āĻ¸ 5.8.0 āĻāĻŦāĻ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯, PerlIO
(āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ) āĻĄāĻŋāĻĢāĻ˛ā§āĻāĨ¤
āĻāĻĒāĻ¨āĻŋ "perl -V" āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻāĻŦāĻ āĻĻā§āĻā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻžāĻ°ā§āĻ˛ PerlIO āĻĻāĻŋāĻ¯āĻŧā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
"useperlio=" āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯āĨ¤ āĻ¯āĻĻāĻŋ "useperlio" āĻšāĻ¯āĻŧ "define", āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻžāĻ° PerlIO āĻāĻā§; āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻĒāĻ¨āĻŋ
āĻ¨āĻž
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ "-" āĻāĻŽāĻžāĻ¨ā§āĻĄā§ āĻāĻāĻāĻŋ āĻĒāĻžāĻāĻĒ āĻā§āĻ˛ā§āĻ¨ (āĻ āĻ°ā§āĻĨāĻžā§, āĻāĻ° āĻ¸āĻžāĻĨā§ "|-" āĻŦāĻž "-|" āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§āĻ¨
"āĻāĻĒā§āĻ¨" āĻāĻ° āĻāĻ- āĻŦāĻž āĻĻā§āĻ-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĢāĻ°ā§āĻŽ), āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ "āĻĢāĻ°ā§āĻ" āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ "āĻā§āĻ˛āĻž" āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§
āĻĻā§āĻāĻŦāĻžāĻ°: āĻĒāĻŋāĻ¤āĻžāĻŽāĻžāĻ¤āĻžāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻĒāĻŋāĻĄ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ āĻ¸āĻ¨ā§āĻ¤āĻžāĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§
āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻāĻŋ (āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤) 0 āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤($pid)" āĻŦāĻž "//" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻā§āĻ˛āĻž āĻ¸āĻĢāĻ˛ āĻāĻŋāĻ˛.
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
$child_pid = open(FROM_KID, "-|") // die "āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻž: $!";
or
$child_pid = open(TO_KID, "|-") // die "āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻž: $!";
āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ
āĻ¯āĻĻāĻŋ ($child_pid) {
# āĻāĻŽāĻŋ āĻĒāĻŋāĻ¤āĻžāĻŽāĻžāĻ¤āĻž:
# āĻšāĻ¯āĻŧ TO_KID āĻ˛āĻŋāĻā§āĻ¨ āĻ¨āĻž āĻšāĻ¯āĻŧ FROM_KID āĻĒāĻĄāĻŧā§āĻ¨
...
āĻāĻ¯āĻŧā§āĻāĻĒāĻŋāĻĄ $child_pid, 0;
} āĻ āĻ¨ā§āĻ¯ {
# āĻāĻŽāĻŋ āĻļāĻŋāĻļā§; āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ STDIN/STDOUT āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
...
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨;
}
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ āĻāĻŋāĻāĻžāĻŦāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻ°āĻŖ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸ā§āĻ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° I/O āĻĒāĻžāĻāĻĒ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° STDOUT/STDIN āĻĨā§āĻā§/āĻĨā§āĻā§āĨ¤ āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ, āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛
āĻā§āĻ˛āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž-- I/O āĻ¨āĻ¤ā§āĻ¨ STDOUT/STDIN āĻĨā§āĻā§/āĻ¤ā§ āĻāĻā§āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ āĻŽāĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻĒāĻžāĻāĻĒ āĻā§āĻ˛āĻž āĻ¯āĻāĻ¨ āĻāĻĒāĻ¨āĻŋ āĻāĻ°ā§ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻŦā§āĻ¯āĻžāĻ¯āĻŧāĻžāĻŽ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ āĻŋāĻ āĻāĻŋāĻāĻžāĻŦā§ āĻĒāĻžāĻāĻĒ
āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧ, āĻ¯ā§āĻŽāĻ¨ setuid āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¨āĻž
āĻŽā§āĻāĻžāĻā§āĻ¯āĻžāĻ°ā§āĻā§āĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻļā§āĻ˛ āĻāĻŽāĻžāĻ¨ā§āĻĄāĨ¤
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻŦā§āĻ˛āĻāĻā§āĻ˛āĻŋ āĻāĻŽāĻŦā§āĻļāĻŋ āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯:
open(FOO, "|tr '[az]' '[AZ]'");
open(FOO, "|-", "tr '[az]' '[AZ]'");
open(FOO, "|-") || exec 'tr', '[az]', '[AZ]';
open(FOO, "|-", "tr", '[az]', '[AZ]');
open(FOO, "cat -n '$file'|");
open(FOO, "-|", "cat -n '$file'");
open(FOO, "-|") || exec "cat", "-n", $file;
open(FOO, "-|", "cat", "-n", $file);
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ˛āĻā§āĻ° āĻļā§āĻˇ āĻĻā§āĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻĒāĻžāĻāĻĒāĻāĻŋāĻā§ "āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĢāĻ°ā§āĻŽ" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĻā§āĻāĻžāĻ¯āĻŧ, āĻ¯āĻž āĻāĻāĻ¨āĻ āĻ¨ā§āĻ
āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤āĨ¤ āĻĨāĻžāĻŽā§āĻŦ āĻāĻāĻāĻŋ āĻāĻžāĻ˛ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻšāĻ˛ āĻ¯ā§ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻāĻā§
"āĻĢāĻ°ā§āĻ()" (āĻ āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻšāĻ¯āĻŧ, āĻ˛āĻŋāĻ¨āĻžāĻā§āĻ¸ āĻāĻŦāĻ āĻŽā§āĻ¯āĻžāĻāĻāĻāĻ¸ āĻāĻā§āĻ¸ āĻ¸āĻš), āĻāĻĒāĻ¨āĻŋ
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĢāĻ°ā§āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨. āĻāĻĒāĻ¨āĻŋ āĻĒāĻžāĻāĻĒā§āĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĢāĻ°ā§āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¯āĻžāĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻĒāĻžāĻ°ā§āĻ¨
āĻā§āĻ¨ā§ āĻļā§āĻ˛ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻžāĻ° āĻā§āĻāĻāĻŋ āĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄā§ āĻāĻā§āĻˇāĻ°āĻŋāĻ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĒāĻžāĻ āĻžāĻ¨
āĻ¤āĻžāĻĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ°ā§āĻĒāĻ āĻ āĻā§āĻˇāĻ°āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻŽāĻžāĻ¨ā§āĻĄā§ āĻĒāĻžāĻāĻĒ āĻā§āĻ˛āĻ¤ā§ āĻŦāĻžāĻ§āĻž āĻĻā§āĻ¯āĻŧ
āĻ¯ā§āĻāĻŋāĻ¤ā§ āĻāĻā§āĻāĻžāĻā§āĻ¤āĻāĻžāĻŦā§ āĻļā§āĻ˛ āĻŽā§āĻāĻžāĻā§āĻ¯āĻžāĻ°ā§āĻā§āĻāĻžāĻ° āĻĨāĻžāĻā§, āĻ¯ā§āĻŽāĻ¨:
āĻā§āĻ˛āĻž (FOO, "| cat -n | expand -4 | lpr")
// āĻĄāĻžāĻ "āĻāĻ˛āĻĒāĻŋāĻāĻ°ā§ āĻĒāĻžāĻāĻĒāĻ˛āĻžāĻāĻ¨ āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻŋ āĻ¨āĻž: $!";
āĻāĻ° āĻāĻ°āĻ āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ perlipc-āĻ "āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻĒāĻžāĻāĻĒ āĻāĻĒā§āĻ¨" āĻĻā§āĻā§āĻ¨āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ āĻ¯ā§ āĻā§āĻ¨ā§ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻā§ āĻāĻāĻāĻĒā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻĢā§āĻ˛āĻžāĻļ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŦā§
āĻāĻāĻāĻŋ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ āĻāĻ°ā§āĻ¨, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻŋāĻā§ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻ āĻĻā§āĻā§āĻ¨)āĨ¤ āĻšāĻ¤ā§
āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ, āĻāĻĒāĻ¨āĻžāĻā§ $| āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻāĻāĻ°ā§āĻāĻŋāĻ¤ā§ $AUTOFLUSH) āĻ āĻĨāĻŦāĻž "autoflush()" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻāĻ˛ āĻāĻ°ā§āĻ¨
āĻ¯ā§ āĻā§āĻ¨ā§ āĻā§āĻ˛āĻž āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ "IO::Handle" āĻāĻ°āĨ¤
āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻā§āĻ˛ā§āĻ-āĻ āĻ¨-āĻāĻā§āĻ¸ā§āĻ āĻĒāĻ¤āĻžāĻāĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨āĻāĻžāĻ°ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻ¤ā§, āĻĒāĻ¤āĻžāĻāĻžāĻāĻŋ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻŦā§
$^F āĻāĻ° āĻŽāĻžāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻ˛āĻž āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§ "$^F" āĻĻā§āĻā§āĻ¨āĨ¤
āĻā§āĻ¨ā§ āĻĒāĻžāĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻžāĻ° āĻĢāĻ˛ā§ āĻĒāĻŋāĻ¤āĻžāĻŽāĻžāĻ¤āĻžāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¸āĻ¨ā§āĻ¤āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§
āĻĢāĻŋāĻ¨āĻŋāĻļ, āĻ¤āĻžāĻ°āĻĒāĻ° $ āĻ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸ āĻā§āĻ¯āĻžāĻ˛ā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§? āĻāĻŦāĻ "${^CHILD_ERROR_NATIVE}"āĨ¤
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽāĻāĻŋ āĻāĻ- āĻāĻŦāĻ āĻĻā§āĻ-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĢāĻ°ā§āĻŽā§ āĻāĻ˛ā§ āĻā§āĻā§ āĻā§āĻ˛āĻž () āĻ¨ā§āĻ¤ā§āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻāĻŦāĻ āĻĨāĻžāĻāĻŦā§
āĻā§āĻ°ā§āĻ˛āĻŋāĻ āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻĒā§āĻ¨āĻāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻ āĻā§āĻˇāĻ° āĻ¸āĻŽā§āĻŽāĻžāĻ¨āĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻ āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋ,
"āĻāĻžāĻĻā§ āĻā§āĻ˛āĻž" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤, āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ āĻāĻžāĻ˛ āĻĒā§āĻ°āĻāĻžāĻŦ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ "āĻāĻ°āĻāĻ¸āĻāĻāĻ āĻŦāĻŋāĻĄāĻŧāĻžāĻ˛ āĻĢāĻžāĻāĻ˛ |", āĻ āĻĨāĻŦāĻž āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
$filename =~ s/(.*\.gz)\s*$/gzip -dc < $1|/;
open(FH, $filename) āĻ āĻĨāĻŦāĻž die "$filename āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻāĻžāĻ°ā§ āĻ āĻĻā§āĻā§āĻ¤ āĻ āĻā§āĻˇāĻ° āĻ¸āĻš āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻ¤ā§ āĻ¤āĻŋāĻ¨-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĢāĻ°ā§āĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨,
āĻā§āĻ˛ā§āĻ¨ (FOO, "<", $file)
|| die "āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž < $file: $!";
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻ āĻā§āĻ°āĻŖā§ āĻāĻŦāĻ āĻĒāĻŋāĻāĻ¨ā§āĻ° āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸ āĻ°āĻā§āĻˇāĻž āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨:
$file =~s#^(\s)#./$1#;
āĻā§āĻ˛ā§āĻ¨ (FOO, "< $file\0")
|| die "āĻā§āĻ˛āĻž āĻŦā§āĻ¯āĻ°ā§āĻĨ: $!";
(āĻāĻāĻŋ āĻāĻŋāĻā§ āĻāĻĻā§āĻāĻ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻžāĻ āĻ¨āĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§)āĨ¤ āĻāĻāĻāĻ¨āĻā§ āĻŦāĻŋāĻŦā§āĻ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤
āĻŽāĻ§ā§āĻ¯ā§ āĻāĻžāĻĻā§ āĻāĻŦāĻ āĻ¤āĻŋāĻ¨-āĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻ° āĻĢāĻ°ā§āĻŽ āĻā§āĻ˛āĻž ():
āĻā§āĻ˛āĻž (IN, $ARGV[0]) || die "$ARGV[0] āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻāĻŋ āĻ¨āĻž: $!";
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻā§ "rsh cat āĻĢāĻžāĻāĻ˛ |" āĻĢāĻ°ā§āĻŽā§āĻ° āĻāĻāĻāĻŋ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻŦā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ°āĻŦā§ āĻ¨āĻžā§ˇ
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽā§āĻ° āĻāĻĒāĻ° āĻāĻžāĻ āĻāĻ°ā§āĻ¨ āĻ¯āĻž āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻ˛āĻŋāĻ āĻ¸ā§āĻĒā§āĻ¸ āĻāĻā§, āĻ¯āĻāĻ¨
āĻā§āĻ˛āĻž (IN, "<", $ARGV[0])
|| āĻĄāĻžāĻ "āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž < $ARGV[0]: $!";
āĻ āĻŋāĻ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§āĻ¤āĻž āĻĨāĻžāĻāĻŦā§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ "āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ" āĻ¸āĻŋ "āĻā§āĻ˛āĻž" āĻāĻžāĻ¨ (āĻĻā§āĻā§āĻ¨ āĻā§āĻ˛āĻž(2) āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§), āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤
"sysopen" āĻĢāĻžāĻāĻļāĻ¨, āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻŽāĻ¨ āĻā§āĻ¨ āĻāĻžāĻĻā§ āĻāĻĄāĻŧāĻŋāĻ¤ āĻ¨ā§āĻ (āĻ¤āĻŦā§ āĻ¸ā§āĻā§āĻˇā§āĻŽāĻāĻžāĻŦā§ āĻāĻŋāĻ¨ā§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻĢāĻžāĻāĻ˛āĻŽā§āĻĄ āĻā§āĻ˛āĻž (), āĻ¯āĻž C-āĻ¤ā§ āĻŽā§āĻ¯āĻžāĻĒ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ fopen()) āĻāĻ āĻ āĻ¨ā§āĻ¯ āĻāĻĒāĻžāĻ¯āĻŧ
āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽāĻā§āĻ˛āĻŋāĻā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻĨā§āĻā§ āĻ°āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
IO::Handle āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
sysopen(HANDLE, $path, O_RDWR|O_CREAT|O_EXCL)
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "sysopen $path: $!";
$oldfh = āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ (āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛); $| = 1; āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨($oldfh);
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ "āĻ¸āĻžāĻŽāĻā§āĻ°ā§ $$\n";
āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ (āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, 0, 0);
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻĢāĻžāĻāĻ˛ā§ āĻ°āĻ¯āĻŧā§āĻā§: ", ;
āĻĒāĻĄāĻŧāĻž āĻāĻŦāĻ āĻ˛ā§āĻāĻžāĻ° āĻŽāĻŋāĻļā§āĻ°āĻŖ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻŋāĻā§ āĻŦāĻŋāĻļāĻĻ āĻŦāĻŋāĻŦāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ "āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨" āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻā§āĻ˛āĻž"āĨ¤
opendir DIRHANDLE,EXPR
"readdir", "telldir", "seekdir", āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ EXPR āĻ¨āĻžāĻŽā§ āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻā§āĻ˛ā§āĨ¤
"rewinddir", āĻāĻŦāĻ "closedir"āĨ¤ āĻ¸āĻĢāĻ˛ āĻšāĻ˛ā§ āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ DIRHANDLE āĻāĻāĻāĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇ āĻĄāĻŋāĻ°āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ
dirhandle āĻ¨āĻžāĻŽ āĻ¯āĻĻāĻŋ DIRHANDLE āĻāĻāĻāĻŋ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻšāĻ¯āĻŧ (āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§ āĻŦāĻž āĻšā§āĻ¯āĻžāĻļ
āĻāĻĒāĻžāĻĻāĻžāĻ¨), āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻŦā§āĻ¨āĻžāĻŽā§ āĻĄāĻŋāĻ°āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§; āĻāĻāĻžāĻ,
āĻāĻāĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻā§āĻŦāĻŋāĻ¤āĨ¤ DIRHANDLEs-āĻāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ āĻ¨āĻžāĻŽāĻ¸ā§āĻĨāĻžāĻ¨ FILEHANDLEs āĻĨā§āĻā§ āĻāĻ˛āĻžāĻĻāĻžāĨ¤
"readdir" āĻ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻĻā§āĻļ āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°
ord EXPR-āĻāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻ¯āĻŧ,
0 āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ (āĻŦāĻŋāĻāĻĻā§āĻ°āĻ āĻāĻ°āĻŋāĻ¤ā§āĻ°, āĻŦāĻžāĻāĻ āĻ¨āĻ¯āĻŧāĨ¤)
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§āĻ° āĻāĻ¨ā§āĻ¯, "chr" āĻĻā§āĻā§āĻ¨āĨ¤ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻāĻžāĻ¨āĻ¤ā§ āĻĒāĻžāĻ°āĻ˛ā§āĻ¨āĻŋāĻā§āĻĄ āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻŽāĻžāĻĻā§āĻ° VARLIST
āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻāĻĒ āĻāĻžāĻ°ā§āĻ˛āĻŋāĻ¸ā§āĻ
āĻāĻŽāĻžāĻĻā§āĻ° VARLIST: ATTRS
āĻāĻŽāĻžāĻĻā§āĻ° āĻāĻžāĻāĻĒ āĻāĻžāĻ°ā§āĻ˛āĻŋāĻ¸ā§āĻ: ATTRS
"āĻāĻŽāĻžāĻĻā§āĻ°" āĻāĻāĻ āĻ¨āĻžāĻŽā§āĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻ (āĻ āĻ°ā§āĻĨāĻžā§ āĻŦāĻŋāĻļā§āĻŦāĻŦā§āĻ¯āĻžāĻĒā§) āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻāĻāĻāĻŋ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻāĻĒāĻ¨āĻžāĻŽ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ¯āĻžāĻā§āĻāĨ¤
"āĻāĻŽāĻžāĻĻā§āĻ°" āĻāĻ° "āĻāĻŽāĻžāĻ°" āĻŦāĻž "āĻ°āĻžāĻˇā§āĻā§āĻ°" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻ āĻ¸ā§āĻā§āĻĒāĻŋāĻ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¯āĻžāĻ° āĻ āĻ°ā§āĻĨ āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŦā§āĻ§
āĻāĻāĻāĻŋ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§āĨ¤ "āĻāĻŽāĻžāĻ°" āĻāĻŦāĻ "āĻ°āĻžāĻˇā§āĻā§āĻ°" āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, āĻ¯āĻž āĻāĻāĻ¯āĻŧāĻ āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻˇāĻŖāĻž āĻāĻ°ā§ (āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ)
āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛, "āĻāĻŽāĻžāĻĻā§āĻ°" āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻāĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻŽ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§: āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛
āĻāĻāĻ āĻ¨āĻžāĻŽ
āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯āĻāĻ¨ "āĻāĻ ā§āĻ° 'āĻāĻžāĻ°āĻ¸' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧ, "āĻāĻŽāĻžāĻĻā§āĻ°" āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻ¨āĻžāĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ āĻ°ā§āĻāĻ¨ āĻ¨āĻž āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻŽāĻ§ā§āĻ¯ā§
"āĻāĻŽāĻžāĻĻā§āĻ°" āĻā§āĻˇāĻŖāĻžāĻ° āĻ¸ā§āĻ¯ā§āĻāĨ¤ āĻāĻāĻŋ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¯ - āĻāĻŽāĻ¨āĻāĻŋ āĻāĻāĻ āĻŽāĻ§ā§āĻ¯ā§
āĻŦāĻŋāĻŦā§āĻ¤āĻŋāĨ¤
āĻĒā§āĻ¯āĻžāĻā§āĻ Foo;
āĻāĻ ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
$Foo::foo = 23;
{
āĻāĻŽāĻžāĻĻā§āĻ° $foo; $Foo::foo āĻĨā§āĻā§ # āĻāĻĒāĻ¨āĻžāĻŽ
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $foo; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 23
}
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $Foo::foo; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 23
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $foo; # āĻ¤ā§āĻ°ā§āĻāĻŋ: āĻ¸ā§āĻĒāĻˇā§āĻ āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻ¨āĻžāĻŽ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ˇ
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻāĻā§ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻāĻ°āĻ˛ā§āĻ āĻāĻāĻŋ āĻāĻžāĻ āĻāĻ°ā§
āĻŦāĻ¸āĻ¨ā§āĻ¤ āĻ āĻ¸ā§āĻ¤āĻŋāĻ¤ā§āĻŦ āĻ¯āĻāĻ¨ āĻĒā§āĻ°āĻĨāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ.
āĻĒā§āĻ¯āĻžāĻā§āĻ Foo;
āĻāĻ ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻāĻŽāĻžāĻĻā§āĻ° $foo = 23; # āĻ āĻŋāĻ āĻ¯ā§āĻŽāĻ¨ $Foo::foo = 23
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $Foo::foo; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 23
āĻāĻžāĻ°āĻŖ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ "āĻāĻ ā§āĻ° 'āĻāĻžāĻ°āĻ¸' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻāĻ¨āĻŋ āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ, āĻ¯āĻ¤āĻā§āĻˇāĻŖ āĻ¨āĻž
āĻ¸ā§āĻ āĻ¨āĻžāĻŽā§āĻ° āĻ¸āĻžāĻĨā§ āĻā§āĻ¨ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¨ā§āĻ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻ¸ā§āĻ¯ā§āĻ āĻ°āĻ¯āĻŧā§āĻā§, āĻāĻĒāĻ¨āĻŋ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻŦāĻžāĻ° āĻāĻāĻ āĻ¸ā§āĻā§āĻāĻŽā§āĻ¨ā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§āĨ¤
āĻĒā§āĻ¯āĻžāĻā§āĻ Foo;
āĻāĻ ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻāĻŽāĻžāĻ° $foo = $foo; # āĻ¤ā§āĻ°ā§āĻāĻŋ, āĻĄāĻžāĻ¨āĻĻāĻŋāĻā§ $foo āĻ āĻā§āĻˇāĻŋāĻ¤
āĻāĻŽāĻžāĻĻā§āĻ° $foo = $foo; # āĻā§āĻ¨ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¨ā§āĻ
āĻ¯āĻĻāĻŋ āĻāĻāĻžāĻ§āĻŋāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻŦāĻ¨ā§āĻ§āĻ¨ā§āĻ¤ā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻāĻŦāĻļā§āĻ¯āĻāĨ¤
āĻāĻŽāĻžāĻĻā§āĻ°($bar, $baz);
āĻāĻāĻāĻŋ "āĻāĻŽāĻžāĻĻā§āĻ°" āĻā§āĻˇāĻŖāĻž āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻŽ āĻā§āĻˇāĻŖāĻž āĻāĻ°ā§ āĻ¯āĻž āĻĻā§āĻļā§āĻ¯āĻŽāĻžāĻ¨ āĻšāĻŦā§
āĻāĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻ¯ā§āĻ āĻā§āĻĄāĻŧā§, āĻāĻŽāĻ¨āĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻ¸ā§āĻŽāĻžāĻ¨āĻž āĻā§āĻĄāĻŧā§āĨ¤ āĻ¯ā§ āĻĒā§āĻ¯āĻžāĻā§āĻā§
āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻāĻŋ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ āĻā§āĻˇāĻŖāĻžāĻ° āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ¤ā§ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ āĻ¨āĻ¯āĻŧ
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻāĻ°āĻŖ āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§:
āĻĒā§āĻ¯āĻžāĻā§āĻ Foo;
āĻāĻŽāĻžāĻĻā§āĻ° $āĻŦāĻžāĻ°; # $Foo::āĻŦāĻžāĻ° āĻŦāĻžāĻāĻŋ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻˇāĻŖāĻž āĻāĻ°ā§
$āĻŦāĻžāĻ° = 20;
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻŦāĻžāĻ°;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $āĻŦāĻžāĻ°; # 20 āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§, āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ $Foo::barāĻā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§
āĻāĻāĻ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻ¯ā§āĻā§ āĻāĻāĻ āĻ¨āĻžāĻŽā§āĻ° āĻāĻāĻžāĻ§āĻŋāĻ "āĻāĻŽāĻžāĻĻā§āĻ°" āĻā§āĻˇāĻŖāĻž āĻ āĻ¨ā§āĻŽā§āĻĻāĻŋāĻ¤
āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ°āĻž āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻĨāĻžāĻā§āĨ¤ āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ°āĻž āĻāĻāĻ āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻĨāĻžāĻā§, āĻĒāĻžāĻ°ā§āĻ˛
āĻāĻāĻžāĻ§āĻŋāĻ "āĻāĻŽāĻžāĻ°" āĻā§āĻˇāĻŖāĻžāĻ° āĻŽāĻ¤ā§ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŋāĻā§āĻāĻžāĻ¸āĻž āĻāĻ°ā§āĻ¨ āĻ¤āĻŦā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻāĻ¤ āĻāĻ°āĻŦā§āĨ¤
āĻāĻāĻāĻŋ āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ "āĻāĻŽāĻžāĻ°" āĻā§āĻˇāĻŖāĻžāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, āĻ¯āĻž āĻ¨āĻžāĻŽāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻŦāĻĻā§āĻ§ āĻāĻ°āĻŦā§, a
āĻāĻāĻ āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ "āĻāĻŽāĻžāĻĻā§āĻ°" āĻā§āĻˇāĻŖāĻž, āĻāĻāĻ āĻ¸ā§āĻ¯ā§āĻā§, āĻ¨āĻŋāĻāĻ āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧāĨ¤
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻĒā§āĻ¯āĻžāĻā§āĻ Foo;
āĻāĻŽāĻžāĻĻā§āĻ° $āĻŦāĻžāĻ°; # $Foo::āĻŦāĻžāĻ° āĻŦāĻžāĻāĻŋ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻˇāĻŖāĻž āĻāĻ°ā§
$āĻŦāĻžāĻ° = 20;
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻŦāĻžāĻ°;
āĻāĻŽāĻžāĻĻā§āĻ° $āĻŦāĻžāĻ° = 30; # āĻŦāĻžāĻāĻŋ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ $Bar::bar āĻā§āĻˇāĻŖāĻž āĻāĻ°ā§
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $āĻŦāĻžāĻ°; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 30
āĻāĻŽāĻžāĻĻā§āĻ° $āĻŦāĻžāĻ°; # āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻāĻ¤ āĻāĻ°ā§ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ āĻ¨ā§āĻ¯ āĻā§āĻ¨ āĻĒā§āĻ°āĻāĻžāĻŦ āĻ¨ā§āĻ
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $āĻŦāĻžāĻ°; # āĻāĻāĻ¨āĻ 30 āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§
āĻāĻāĻāĻŋ "āĻāĻŽāĻžāĻĻā§āĻ°" āĻā§āĻˇāĻŖāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
TYPE āĻāĻŦāĻ ATTRS-āĻāĻ° āĻ¸āĻ āĻŋāĻ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻāĻŦāĻ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻāĻāĻ¨āĻ āĻŦāĻŋāĻāĻļāĻŋāĻ¤ āĻšāĻā§āĻā§āĨ¤ TYPE āĻšāĻ˛
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ "āĻā§āĻˇā§āĻ¤ā§āĻ°" āĻĒā§āĻ°āĻžāĻāĻŽāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§ āĻāĻŦāĻĻā§āĻ§, āĻāĻŦāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
"āĻā§āĻŖāĻžāĻŦāĻ˛ā§" āĻĒā§āĻ°āĻžāĻāĻŽāĻž, āĻŦāĻž, āĻĒāĻžāĻ°ā§āĻ˛ 5.8.0 āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§āĻ
"āĻ ā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻ::āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°" āĻŽāĻĄāĻŋāĻāĻ˛āĨ¤ āĻĻā§āĻā§āĻ¨ "āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻŽāĻžāĻ°()"āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻžāĻŦā§
āĻŦāĻŋāĻŦāĻ°āĻŖ, āĻāĻŦāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°, āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯, āĻāĻŦāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯::āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¸āĻš, "undef" āĻāĻāĻāĻŋ āĻĄāĻžāĻŽāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨āĻ§āĻžāĻ°āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻŽāĻžāĻ¨ā§āĻ° āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨āĻŽā§āĻ¨ā§āĻ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻžāĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻāĻŽāĻžāĻĻā§āĻ° ( undef, $min, $hour) = āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ;
"āĻāĻŽāĻžāĻĻā§āĻ°" "āĻāĻžāĻ°āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻĨā§āĻā§ āĻĒā§āĻĨāĻ, āĻ¯āĻž āĻāĻāĻāĻŋ āĻ āĻ¯ā§āĻā§āĻ¯ āĻ¨āĻžāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ āĻā§āĻŦāĻ˛ āĻŽāĻ§ā§āĻ¯ā§
āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻĒā§āĻ¯āĻžāĻā§āĻ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸ā§āĻā§āĻĒ āĻā§āĻĄāĻŧā§āĨ¤
āĻĒā§āĻ¯āĻžāĻ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¨ā§āĻ¯āĻŧ āĻāĻŦāĻ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°ā§ā§ˇ
āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ. āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻ˛ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻāĻŽāĻŋāĻļā§āĻ°āĻŖāĨ¤
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻ¤āĻžāĻ° āĻŽā§āĻļāĻŋāĻ¨-āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦā§āĻ° āĻŽāĻ¤ā§ āĻĻā§āĻāĻžāĻ¯āĻŧāĨ¤ āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, 32-āĻŦāĻŋāĻ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž 4 āĻŦāĻžāĻāĻā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻ°āĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§,
āĻ¯āĻž āĻĒāĻžāĻ°ā§āĻ˛ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻšāĻŦā§ āĻ¯āĻž 4 āĻ āĻā§āĻˇāĻ° āĻĻā§āĻ°ā§āĻāĨ¤
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻā§āĻŽāĻŋāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ perlpacktut āĻĻā§āĻā§āĻ¨āĨ¤
āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻšāĻ˛ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻ°āĻŽ āĻ¯āĻž āĻā§āĻ°āĻŽ āĻāĻŦāĻ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻ§āĻ°āĻ¨ āĻĻā§āĻ¯āĻŧ, āĻ¯ā§āĻŽāĻ¨
āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ:
āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻāĻžāĻ°ā§ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻĄā§āĻāĻž āĻ¸āĻš āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ, āĻ¨āĻžāĻ˛ āĻĒā§āĻ¯āĻžāĻĄ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
āĻāĻāĻāĻŋ A āĻĒāĻžāĻ ā§āĻ¯ (ASCII) āĻ¸ā§āĻā§āĻ°āĻŋāĻ, āĻ¸ā§āĻĒā§āĻ¸ āĻĒā§āĻ¯āĻžāĻĄā§āĻĄ āĻšāĻŦā§āĨ¤
Z A āĻ¨āĻžāĻ˛-āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨ā§āĻā§āĻĄ (ASCIZ) āĻ¸ā§āĻā§āĻ°āĻŋāĻ, āĻ¨āĻžāĻ˛ āĻĒā§āĻ¯āĻžāĻĄ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
b āĻāĻāĻāĻŋ āĻŦāĻŋāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ (āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦāĻžāĻāĻā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻāĻ°ā§āĻšā§ āĻŦāĻŋāĻ āĻā§āĻ°āĻŽ,
āĻ¯ā§āĻŽāĻ¨ vec())āĨ¤
B āĻāĻāĻāĻŋ āĻŦāĻŋāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ (āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦāĻžāĻāĻā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻŦāĻŋāĻ āĻā§āĻ°āĻŽ āĻ āĻŦāĻ¤āĻ°āĻŖ)āĨ¤
h āĻāĻāĻāĻŋ āĻšā§āĻā§āĻ¸ āĻ¸ā§āĻā§āĻ°āĻŋāĻ (āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻŽ nybble)āĨ¤
H A āĻšā§āĻā§āĻ¸ āĻ¸ā§āĻā§āĻ°āĻŋāĻ (āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻā§āĻ nybble)āĨ¤
c āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻāĻ° (8-āĻŦāĻŋāĻ) āĻŽāĻžāĻ¨āĨ¤
C āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻāĻ° (āĻ āĻā§āĻā§āĻ) āĻŽāĻžāĻ¨āĨ¤
W āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻāĻ° āĻŽāĻžāĻ¨ (255 āĻāĻ° āĻŦā§āĻļāĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§)āĨ¤
s āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ (16-āĻŦāĻŋāĻ) āĻŽāĻžāĻ¨āĨ¤
S āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻā§āĻ āĻŽāĻžāĻ¨āĨ¤
l āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĻā§āĻ°ā§āĻ (32-āĻŦāĻŋāĻ) āĻŽāĻžāĻ¨āĨ¤
L āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĻā§āĻ°ā§āĻ āĻŽāĻžāĻ¨āĨ¤
q āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻā§āĻ¯āĻŧāĻžāĻĄ (64-āĻŦāĻŋāĻ) āĻŽāĻžāĻ¨āĨ¤
Q āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻā§āĻ¯āĻŧāĻžāĻĄ āĻŽāĻžāĻ¨āĨ¤
(āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ 64-āĻŦāĻŋāĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°āĻ˛ā§āĻ Quads āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ
āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ _āĻāĻŦāĻ_ āĻ¯āĻĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¸ā§āĻā§āĻ˛ā§. āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤)
i āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨āĨ¤
āĻāĻŽāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻŽāĻžāĻ¨āĨ¤
(āĻāĻ 'āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž' _at_least_ 32 āĻŦāĻŋāĻ āĻĒā§āĻ°āĻļāĻ¸ā§āĻ¤āĨ¤ āĻāĻāĻŋ āĻ¸āĻ āĻŋāĻ
āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŋ āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ° āĻ¯āĻžāĻā§ 'int' āĻŦāĻ˛ā§ āĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻāĻāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§āĨ¤)
n "āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ" (āĻŦāĻĄāĻŧ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨) āĻā§āĻ°āĻŽā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ (16-āĻŦāĻŋāĻ)āĨ¤
N "āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ" (āĻŦāĻĄāĻŧ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨) āĻā§āĻ°āĻŽā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĻā§āĻ°ā§āĻ (32-āĻŦāĻŋāĻ)āĨ¤
v "VAX" (āĻ˛āĻŋāĻāĻ˛-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨) āĻā§āĻ°āĻŽā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ (16-āĻŦāĻŋāĻ)āĨ¤
âĸ "VAX" (āĻ˛āĻŋāĻāĻ˛-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨) āĻā§āĻ°āĻŽā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĻā§āĻ°ā§āĻ (32-āĻŦāĻŋāĻ)āĨ¤
j āĻāĻāĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻŽāĻžāĻ¨ (IV)āĨ¤
J A āĻĒāĻžāĻ°ā§āĻ˛ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻŽāĻžāĻ¨ (UV)āĨ¤
f āĻ¨ā§āĻāĻŋāĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻāĻāĻāĻŋ āĻāĻāĻ-āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻĢā§āĻ˛ā§āĻāĨ¤
d āĻ¨ā§āĻāĻŋāĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻāĻāĻāĻŋ āĻĄāĻŦāĻ˛-āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻĢā§āĻ˛ā§āĻāĨ¤
F A āĻĒāĻžāĻ°ā§āĻ˛ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻŽāĻžāĻ¨ (NV) āĻ¨ā§āĻāĻŋāĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§
D āĻ¨ā§āĻāĻŋāĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻĻā§āĻ°ā§āĻ-āĻĻā§āĻŦā§āĻ¤ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻžāĻ° āĻāĻāĻāĻŋ āĻĢā§āĻ˛ā§āĻāĨ¤
(āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¤āĻŦā§āĻ āĻĻā§āĻ°ā§āĻ āĻĄāĻžāĻŦāĻ˛ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ
āĻĻā§āĻ°ā§āĻ āĻĄāĻŦāĻ˛ āĻŽāĻžāĻ¨ _āĻāĻŦāĻ_ āĻ¯āĻĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§āĻ¨āĨ¤ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨.
āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻ˛āĻŽā§āĻŦāĻž āĻĄāĻŦāĻ˛ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻāĻā§āĨ¤)
p āĻāĻāĻāĻŋ āĻ¨āĻžāĻ˛-āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨ā§āĻā§āĻĄ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻāĻāĻāĻŋ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ°āĨ¤
P āĻāĻāĻāĻŋ āĻāĻžāĻ āĻžāĻŽā§āĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻ (āĻ¸ā§āĻĨāĻŋāĻ°-āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻ)āĨ¤
u āĻāĻāĻāĻŋ uuencoded āĻ¸ā§āĻā§āĻ°āĻŋāĻāĨ¤
U āĻāĻāĻāĻŋ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ āĻā§āĻˇāĻ° āĻ¸āĻāĻā§āĻ¯āĻžāĨ¤ āĻ āĻā§āĻˇāĻ°ā§ āĻāĻāĻāĻŋ āĻ āĻā§āĻˇāĻ°ā§ āĻāĻ¨āĻā§āĻĄ āĻāĻ°ā§-
āĻ āĻāĻŋāĻ¨ā§āĻ¤āĻž āĻŽā§āĻĄ āĻāĻŦāĻ UTF-8 (āĻŦāĻž EBCDIC āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ UTF-EBCDIC)
āĻŦāĻžāĻāĻ āĻŽā§āĻĄāĨ¤
w āĻāĻāĻāĻŋ BER āĻ¸āĻāĻā§āĻāĻŋāĻ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž (āĻāĻāĻāĻŋ ASN.1 BER āĻ¨āĻ¯āĻŧ, perlpacktut āĻĻā§āĻā§āĻ¨
āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯). āĻāĻ° āĻŦāĻžāĻāĻ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻāĻ°ā§
āĻŦā§āĻ¸ 128, āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ¤āĻžā§āĻĒāĻ°ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ āĻĄāĻŋāĻāĻŋāĻ āĻĒā§āĻ°āĻĨāĻŽ, āĻ āĻ˛ā§āĻĒ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¸āĻš
āĻ¯āĻ¤āĻā§āĻā§ āĻ¸āĻŽā§āĻāĻŦ. āĻŦāĻŋāĻ āĻāĻ (āĻāĻā§āĻ āĻŦāĻŋāĻ) āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦāĻžāĻāĻā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻļā§āĻˇ āĻāĻžāĻĄāĻŧāĻžāĨ¤
x āĻāĻāĻāĻŋ āĻ¨āĻžāĻ˛ āĻŦāĻžāĻāĻ (a.k.a ASCII NUL, "\000", chr,(0))
āĻāĻā§āĻ¸ āĻāĻāĻāĻŋ āĻŦāĻžāĻāĻ āĻŦā§āĻ¯āĻžāĻ āĻāĻĒ.
@ āĻ¨āĻžāĻ˛-āĻĢāĻŋāĻ˛ āĻŦāĻž āĻĒāĻ°āĻŽ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻāĻžāĻāĻāĻžāĻ, āĻĨā§āĻā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻŋāĻ¤āĻ°ā§āĻ° ()-āĻā§āĻˇā§āĻ ā§āĻ° āĻļā§āĻ°ā§āĨ¤
. āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻĒāĻ°āĻŽ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻ¨āĻžāĻ˛-āĻĢāĻŋāĻ˛ āĻŦāĻž āĻāĻžāĻāĻāĻžāĻ
āĻŽā§āĻ˛ā§āĻ¯.
( āĻāĻāĻāĻŋ ()-āĻā§āĻˇā§āĻ ā§āĻ° āĻļā§āĻ°ā§āĨ¤
āĻ¨ā§āĻā§āĻ° āĻāĻ āĻŦāĻž āĻāĻāĻžāĻ§āĻŋāĻ āĻ¸āĻāĻļā§āĻ§āĻ āĻāĻā§āĻāĻŋāĻāĻāĻžāĻŦā§ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻā§āĻ° āĻāĻŋāĻā§ āĻ āĻā§āĻˇāĻ° āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ (
āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻāĻ˛āĻžāĻŽ āĻ āĻā§āĻˇāĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻ°ā§ āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻāĻļā§āĻ§āĻ¨āĻāĻžāĻ°ā§ āĻŦā§āĻ§):
! sSlLiI āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¨ā§āĻāĻŋāĻ (āĻā§āĻ, āĻĻā§āĻ°ā§āĻ, int) āĻŽāĻžāĻĒ āĻā§āĻ° āĻāĻ°ā§
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ (16-/32-āĻŦāĻŋāĻ) āĻŽāĻžāĻĒā§āĻ°āĨ¤
! xX x āĻāĻŦāĻ X āĻ¸āĻžāĻ°āĻŋāĻŦāĻĻā§āĻ§ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§āĻ¨āĨ¤
! nNvV āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻā§ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§āĻ¨āĨ¤
! @ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§āĻ¨
āĻŦāĻ¸ā§āĻ¤āĻžāĻŦāĻ¨ā§āĻĻā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ. āĻĻāĻā§āĻˇ
āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻŋāĻĒāĻā§āĻāĻ¨āĻāĨ¤
> āĻĒā§āĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° sSiIlLqQ āĻĢā§āĻ°ā§āĻ¸ āĻŦāĻŋāĻ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻžāĻāĻ-āĻ āĻ°ā§āĻĄāĻžāĻ°āĨ¤
jJfFdDpP ("āĻŦāĻĄāĻŧ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤" āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖāĻā§ āĻ¸ā§āĻĒāĻ°ā§āĻļ āĻāĻ°ā§āĨ¤)
< sSiIlLqQ āĻāĻžāĻāĻĒā§āĻ° āĻāĻĒāĻ° āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻžāĻāĻ-āĻ āĻ°ā§āĻĄāĻžāĻ° āĻā§āĻ° āĻāĻ°ā§āĨ¤
jJfFdDpP ("āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻļā§āĻˇ" āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖāĻā§ āĻ¸ā§āĻĒāĻ°ā§āĻļ āĻāĻ°ā§āĨ¤)
">" āĻāĻŦāĻ "<" āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ°āĻā§āĻ˛āĻŋ "()" āĻā§āĻˇā§āĻ ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻŦāĻžāĻāĻ āĻā§āĻ° āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§-
āĻ¸ā§āĻ āĻā§āĻˇā§āĻ ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻĒāĻā§āĻˇā§āĻ ā§ āĻ¸āĻš āĻ¤āĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻ āĻ°ā§āĻĄāĻžāĻ°āĨ¤
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¯:
¡ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ āĻā§āĻˇāĻ° āĻāĻā§āĻāĻŋāĻāĻāĻžāĻŦā§ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ
āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻāĻā§āĻāĻŋāĻāĻāĻžāĻŦā§ āĻŦāĻ¨ā§āĻ§āĻ¨ā§āĻ¤ā§ āĻāĻŦāĻĻā§āĻ§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ "āĻĒā§āĻ¯āĻžāĻ("C[80]",
@arr).
"a", "A", "Z", "b", "B", "h", "H", "@", ".", "x", "X" āĻāĻžāĻĄāĻŧāĻž āĻ āĻ¨ā§āĻ¯ āĻ¸āĻŦ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§āĻ° āĻ§āĻ°āĻ¨
āĻāĻŦāĻ "P", āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻ° āĻ āĻ°ā§āĻĨ āĻ āĻ¨ā§āĻ¯ āĻāĻŋāĻā§, āĻ¨ā§āĻā§ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤āĨ¤ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ "*" āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻā§āĻā§
āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻŽāĻžāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻĻāĻŋāĻ āĻ āĻ¨ā§āĻ āĻāĻāĻā§āĻŽ āĻŦāĻžāĻāĻŋ āĻāĻā§, āĻŦā§āĻ¯āĻ¤ā§āĻ¤
āĻāĻ¨ā§āĻ¯:
¡ "@", "x", āĻāĻŦāĻ "X", āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻāĻŋ 0 āĻāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯āĨ¤
¡ , āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻ° āĻ āĻ°ā§āĻĨ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻļā§āĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤āĨ¤
¡ "u", āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻāĻŋ 1 āĻāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ (āĻŦāĻž 45, āĻ¯āĻž āĻāĻāĻžāĻ¨ā§ āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯)āĨ¤
āĻā§āĻ āĻŦāĻ¨ā§āĻ§āĻ¨ā§āĻ¤ā§ āĻāĻŦāĻĻā§āĻ§ āĻāĻāĻāĻŋ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻ āĻā§āĻˇāĻ° āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻā§āĻ° āĻĒā§āĻ¯āĻžāĻāĻĄ āĻŦāĻžāĻāĻ āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§āĨ¤
āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ "x[L]" āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻāĻĄ āĻ˛āĻ āĻāĻ° āĻŽāĻ¤ā§ āĻ āĻ¨ā§āĻ āĻŦāĻžāĻāĻ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ āĻāĻŦāĻ
āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ "$t X[$t] $t" āĻ¯āĻž $t (āĻ¯āĻāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛-āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤) āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§ āĻ¤āĻžāĻ° āĻĻā§āĻŦāĻŋāĻā§āĻŖ āĻĒā§āĻ¯āĻžāĻ āĻā§āĻ˛ā§ āĻĻā§āĻ¯āĻŧāĨ¤
āĻ¯āĻĻāĻŋ āĻŦāĻ¨ā§āĻ§āĻ¨ā§āĻ° āĻā§āĻŽāĻĒā§āĻ˛ā§āĻā§ āĻ¸āĻžāĻ°āĻŋāĻŦāĻĻā§āĻ§āĻāĻ°āĻŖ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĨāĻžāĻā§ (āĻ¯ā§āĻŽāĻ¨ "x![d]"), āĻ¤āĻžāĻšāĻ˛ā§ āĻ¤āĻžāĻ°
āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻāĻŽāĻ¨āĻāĻžāĻŦā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§āĻ¨ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻā§āĻ° āĻļā§āĻ°ā§āĻ¤ā§ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ āĻāĻŋāĻ˛
āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻāĻ°āĻŖāĨ¤
"Z" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ˛ā§, āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ "*" āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻ˛āĻŋāĻ āĻ¨āĻžāĻ˛ āĻ¯ā§āĻ āĻāĻ°āĻžāĻ° āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻāĻŋāĻ¯ā§āĻā§āĻ¤
āĻŦāĻžāĻāĻ, āĻ¤āĻžāĻ āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻŦāĻžāĻāĻ āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻāĻ āĻŦāĻžāĻāĻ āĻĻā§āĻ°ā§āĻ āĻšāĻ¯āĻŧ
āĻāĻāĻā§āĻŽ āĻ¨āĻŋāĻā§āĻāĨ¤
āĻ¯āĻāĻ¨ "@" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻāĻ¨ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻļā§āĻ°ā§ āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻ āĻĢāĻ¸ā§āĻ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§
āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻŋāĻ¤āĻ°ā§āĻ° "()" āĻā§āĻ°ā§āĻĒāĨ¤
"." āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ˛ā§, āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻāĻŖāĻ¨āĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻļā§āĻ°ā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§
āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ āĻ āĻĢāĻ¸ā§āĻ āĻŽāĻžāĻ¨:
¡ āĻ¯āĻĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž 0 āĻšāĻ¯āĻŧ, āĻāĻāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒā§āĻā§āĻˇāĻŋāĻāĨ¤
¡ āĻ¯āĻĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž "*" āĻšāĻ¯āĻŧ, āĻ āĻĢāĻ¸ā§āĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻļā§āĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĨ¤
āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻšāĻ¯āĻŧ n, āĻ āĻĢāĻ¸ā§āĻ āĻļā§āĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒā§āĻā§āĻˇāĻŋāĻ nth
innermost "( )" āĻā§āĻ°ā§āĻĒ, āĻ āĻĨāĻŦāĻž āĻ¯āĻĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻļā§āĻ°ā§āĻ¤ā§ n āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻŦāĻĄāĻŧ
āĻā§āĻ°ā§āĻĒ āĻ¸ā§āĻ¤āĻ°āĨ¤
"u" āĻāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻžāĻā§ āĻāĻ¨āĻā§āĻĄ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ āĻŦāĻžāĻāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻĒā§āĻ°āĻ¤āĻŋ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻāĻāĻāĻĒā§āĻ, 0, 1 āĻāĻŦāĻ 2 45 āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤āĨ¤ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ
65 āĻāĻ° āĻŦā§āĻļāĻŋ āĻšāĻ¤ā§ āĻšāĻŦā§āĨ¤
¡ "a", "A", āĻāĻŦāĻ "Z" āĻĒā§āĻ°āĻāĻžāĻ°āĻā§āĻ˛āĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨āĻā§ āĻāĻŦā§āĻ˛ āĻāĻ°ā§, āĻ¤āĻŦā§ āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§
āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻāĻŖāĻ¨āĻž, āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻ¨āĻžāĻ˛ āĻŦāĻž āĻ¸ā§āĻĒā§āĻ¸ āĻ¸āĻš āĻĒā§āĻ¯āĻžāĻĄāĻŋāĻāĨ¤ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, "A" āĻ°ā§āĻāĻžāĻāĻŋāĻ¤ā§āĻ°āĻŽāĻžāĻ˛āĻž
āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸ āĻāĻŦāĻ āĻ¨āĻžāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻĒāĻŋāĻāĻ¨ā§, "Z" āĻĒā§āĻ°āĻĨāĻŽ āĻ¨āĻžāĻ˛ āĻāĻŦāĻ "a" āĻāĻ° āĻĒāĻ°ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻŋāĻā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒ āĻāĻ°ā§
āĻā§āĻ¨ā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒāĻŋāĻ āĻāĻžāĻĄāĻŧāĻžāĻ āĻĄā§āĻāĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤
āĻ¯āĻĻāĻŋ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻŽāĻžāĻ¨āĻāĻŋ āĻā§āĻŦ āĻĻā§āĻ°ā§āĻ āĻšāĻ¯āĻŧ, āĻĢāĻ˛āĻžāĻĢāĻ˛āĻāĻŋ āĻāĻžāĻāĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻā§āĻŦ āĻĻā§āĻ°ā§āĻ āĻšāĻ¯āĻŧ āĻāĻŦāĻ
āĻāĻāĻāĻŋ āĻ¸ā§āĻ¸ā§āĻĒāĻˇā§āĻ āĻāĻŖāĻ¨āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, "Z" āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "$count-1" āĻŦāĻžāĻāĻ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§, āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻāĻāĻŋ āĻ¨āĻžāĻ˛
āĻŦāĻžāĻāĻ āĻāĻāĻāĻžāĻŦā§ "Z" āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻāĻāĻŋ āĻā§āĻ°āĻžāĻāĻ˛āĻŋāĻ āĻ¨āĻžāĻ˛ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§, āĻ¯āĻāĻ¨ āĻāĻŖāĻ¨āĻž 0 āĻšāĻ¯āĻŧāĨ¤
āĻāĻāĻāĻāĻžāĻŦā§, "b" āĻāĻŦāĻ "B" āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§ āĻ¯āĻž āĻ āĻ¨ā§āĻ āĻŦāĻŋāĻ āĻ˛āĻŽā§āĻŦāĻžāĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ
āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻĢāĻ˛āĻžāĻĢāĻ˛ā§āĻ° 1 āĻŦāĻŋāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĨ¤ āĻāĻā§āĻ˛āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻāĻāĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻ¯ā§āĻŽāĻ¨ "B8" āĻŦāĻž "B64"āĨ¤
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻŦāĻŋāĻ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻāĻ¨āĻĒā§āĻā§āĻ° āĻ¨ā§āĻ¯ā§āĻ¨āĻ¤āĻŽ-āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŦāĻŋāĻā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§
āĻ āĻā§āĻˇāĻ°, āĻ¯ā§āĻŽāĻ¨, "ord($char)%2"-āĻāĨ¤ āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻ āĻā§āĻˇāĻ° "0" āĻāĻŦāĻ "1"
"\0" āĻāĻŦāĻ "\1" āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻŽāĻ¤ā§ āĻŦāĻŋāĻ 000 āĻāĻŦāĻ 001 āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻļā§āĻ°ā§ āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ 8-āĻā§āĻĒāĻ˛ āĻ āĻā§āĻˇāĻ°
āĻāĻāĻāĻĒā§āĻā§āĻ° 1 āĻ āĻā§āĻˇāĻ°ā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤āĨ¤ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ "b" āĻ¸āĻš, āĻāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ āĻā§āĻˇāĻ°
8-āĻā§āĻĒāĻ˛ āĻāĻāĻāĻŋ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨-āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻŦāĻŋāĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§; āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ "āĻŦāĻŋ" āĻ¸āĻš, āĻāĻāĻŋ
āĻāĻāĻāĻŋ āĻāĻ°āĻŋāĻ¤ā§āĻ°ā§āĻ° āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯ āĻŦāĻŋāĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯ 8 āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽāĻžāĻ¨āĻāĻžāĻŦā§ āĻŦāĻŋāĻāĻžāĻā§āĻ¯ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻ āĻŦāĻļāĻŋāĻˇā§āĻāĻžāĻāĻļ
āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§āĻ¨ āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻļā§āĻˇā§ āĻ¨āĻžāĻ˛ āĻ āĻā§āĻˇāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ¯āĻžāĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻāĻāĻāĻāĻžāĻŦā§ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, "āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤" āĻŦāĻŋāĻ āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻĻā§āĻ°ā§āĻ āĻšāĻ˛ā§, āĻ āĻŦāĻļāĻŋāĻˇā§āĻ āĻ āĻā§āĻˇāĻ° āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ "*" āĻāĻ¨āĻĒā§āĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ āĻā§āĻˇāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻĒā§āĻ¯āĻžāĻ āĻā§āĻ˛āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ,
āĻŦāĻŋāĻāĻā§āĻ˛āĻŋ 0s āĻāĻŦāĻ 1s āĻāĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤
¡ "h" āĻāĻŦāĻ "H" āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§ āĻ¯āĻž āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻŦāĻ˛ (4-āĻŦāĻŋāĻ āĻā§āĻ°ā§āĻĒ,
āĻšā§āĻā§āĻ¸āĻžāĻĄā§āĻ¸āĻŋāĻŽā§āĻ˛ āĻ¸āĻāĻā§āĻ¯āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻ¯ā§āĻā§āĻ¯, "0".."9" "a".."f") āĻĻā§āĻ°ā§āĻā§ˇ
āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻĒā§āĻ¯āĻžāĻ() āĻĢāĻ˛āĻžāĻĢāĻ˛ā§āĻ° 4 āĻŦāĻŋāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĨ¤ āĻ -āĻŦāĻ°ā§āĻŖāĻžāĻ¨ā§āĻā§āĻ°āĻŽāĻŋāĻ āĻ¸āĻš
āĻ āĻā§āĻˇāĻ°, āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻāĻ¨āĻĒā§āĻā§āĻ° 4āĻāĻŋ āĻāĻŽ-āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯ āĻŦāĻŋāĻā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§
āĻ āĻā§āĻˇāĻ°, āĻ¯ā§āĻŽāĻ¨, "ord($char)%16"-āĻāĨ¤ āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻ āĻā§āĻˇāĻ° "0" āĻāĻŦāĻ "1"
āĻŦāĻžāĻāĻ "\0" āĻāĻŦāĻ "\1" āĻāĻ° āĻŽāĻ¤ā§ nybbles 000 āĻāĻŦāĻ 001 āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨āĨ¤ "a"."f" āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯
āĻāĻŦāĻ "A"."F", āĻĢāĻ˛āĻžāĻĢāĻ˛āĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻšā§āĻā§āĻ¸āĻžāĻĄā§āĻ¸āĻŋāĻŽā§āĻ˛ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ, āĻ¯āĻžāĻ¤ā§
"a" āĻāĻŦāĻ "A" āĻāĻāĻ¯āĻŧāĻ nybble "0xA==10" āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĨ¤ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻšā§āĻā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻāĻ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ āĻā§āĻˇāĻ°āĨ¤
āĻā§āĻŽāĻĒā§āĻ˛ā§āĻā§āĻ° āĻļā§āĻ°ā§ āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ āĻĒā§āĻ¯āĻžāĻ(), āĻ āĻā§āĻˇāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻĄāĻŧāĻž āĻšāĻ¯āĻŧ
āĻāĻāĻāĻĒā§āĻā§āĻ° 1 āĻ āĻā§āĻˇāĻ°ā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤āĨ¤ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ "h" āĻ¸āĻš, āĻāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ āĻā§āĻˇāĻ°
āĻā§āĻĄāĻŧāĻž āĻāĻāĻāĻĒā§āĻ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨-āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ nybble āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§; āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ¸āĻš
"H", āĻāĻāĻŋ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯ nybble āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§āĨ¤
āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻ¸āĻŽāĻžāĻ¨ āĻ¨āĻž āĻšāĻ˛ā§, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¨āĻžāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ¯āĻžāĻĄ āĻāĻ°āĻž āĻŽāĻ¤ āĻāĻāĻ°āĻŖ āĻāĻ°ā§
āĻļā§āĻˇā§ āĻāĻ°āĻŋāĻ¤ā§āĻ°āĨ¤ āĻāĻāĻāĻāĻžāĻŦā§, āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ "āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤" nybbles āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻĻā§āĻ°ā§āĻ āĻšāĻ˛ā§, āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻ āĻā§āĻˇāĻ° āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ "*" āĻāĻ¨āĻĒā§āĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ āĻā§āĻˇāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻāĻ¨ā§āĻ¯ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ(),
nybbles āĻšā§āĻā§āĻ¸āĻžāĻĄā§āĻ¸āĻŋāĻŽā§āĻ˛ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ.
¡ "p" āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻāĻāĻāĻŋ āĻ¨āĻžāĻ˛-āĻāĻžāĻ°ā§āĻŽāĻŋāĻ¨ā§āĻā§āĻĄ āĻ¸ā§āĻā§āĻ°āĻŋāĻ-āĻ āĻāĻāĻāĻŋ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§āĨ¤ āĻ¤ā§āĻŽāĻŋāĻ āĻĻāĻžāĻ¯āĻŧā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ āĻ¸ā§āĻĨāĻžāĻ¯āĻŧā§ āĻŽāĻžāĻ¨ āĻ¨āĻ¯āĻŧ āĻ¤āĻž āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻŋ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯āĻāĻžāĻŦā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻžāĻāĻžāĻāĻžāĻāĻŋ āĻĒā§āĻ¤ā§ āĻāĻā§ delocated āĻĒā§āĻ¤ā§. "P" āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸
āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻāĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻāĻžāĻ āĻžāĻŽā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻļā§āĻ¨ā§āĻ¯
āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻĻāĻŋ "p" āĻŦāĻž "P" āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻŽāĻžāĻ¨ "undef" āĻšāĻ¯āĻŧ; āĻāĻāĻāĻāĻžāĻŦā§
āĻ¸āĻā§āĻā§ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ(), āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¨āĻžāĻ˛ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° "undef" āĻ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻāĻāĻŋ āĻ āĻĻā§āĻā§āĻ¤ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻāĻāĻžāĻ° āĻĨāĻžāĻā§ - āĻŽāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻ¤āĻ¤ āĻŦāĻĄāĻŧ āĻ¨āĻ¯āĻŧ
āĻāĻāĻāĻŋ int āĻŦāĻž āĻāĻāĻāĻŋ āĻĻā§āĻ°ā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻĄāĻŧ--āĻāĻāĻŋ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻĒā§āĻ¯āĻžāĻ āĻŦāĻž āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻ¸āĻŽā§āĻāĻŦ āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻĄāĻŧ- āĻŦāĻž āĻā§āĻ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻžāĻāĻ āĻ āĻ°ā§āĻĄāĻžāĻ°āĨ¤ āĻāĻāĻŋ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨.
¡ "/" āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻ āĻā§āĻˇāĻ°āĻāĻŋ āĻāĻāĻā§āĻŽāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻā§āĻ°āĻŽ āĻĒā§āĻ¯āĻžāĻāĻŋāĻ āĻāĻŦāĻ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ
āĻ¯ā§āĻāĻžāĻ¨ā§ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻāĻžāĻ āĻžāĻŽā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻāĻāĻā§āĻŽā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĨāĻžāĻā§ āĻ¯āĻžāĻ° āĻĒāĻ°ā§ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻāĻā§āĻŽ āĻ¨āĻŋāĻā§āĻĻā§āĻ°āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯ā§ āĻāĻžāĻ āĻžāĻŽā§āĻāĻŋ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻā§āĻ¨ āĻ¸ā§āĻāĻŋ āĻāĻ¨āĻā§āĻĄ āĻāĻ°āĻž āĻĨāĻžāĻāĻ˛ā§ āĻāĻāĻŋ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°
āĻāĻ āĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§āĻ āĻāĻ° āĻāĻŋāĻā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻāĻāĻžāĻ° āĻŦāĻž āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž
āĻĒā§āĻĨāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°āĨ¤
"āĻĒā§āĻ¯āĻžāĻ" āĻāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻŋ āĻ˛āĻŋāĻā§āĻ¨ āĻĻā§āĻ°ā§āĻā§āĻ¯-āĻāĻāĻā§āĻŽ"/"āĻā§āĻ°āĻŽ-āĻāĻāĻā§āĻŽ, āĻāĻŦāĻ āĻĻā§āĻ°ā§āĻā§āĻ¯-āĻāĻāĻā§āĻŽ āĻŦāĻ°ā§āĻŖāĻ¨āĻž
āĻāĻŋāĻāĻžāĻŦā§ āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻŽāĻžāĻ¨ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ. āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŽāĻ¨ āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻāĻā§āĻ˛āĻŋ āĻšāĻ˛ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž-
āĻāĻžāĻāĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻāĻ¨ā§āĻ¯ "n", ASN.1 āĻŦāĻž SNMP āĻāĻ° āĻāĻ¨ā§āĻ¯ "w", āĻāĻŦāĻ Sun āĻāĻ° āĻāĻ¨ā§āĻ¯ "N" āĻāĻ° āĻŽāĻ¤ āĻĒā§āĻ¯āĻžāĻāĻŋāĻ
āĻāĻā§āĻ¸āĻĄāĻŋāĻāĻ°āĨ¤
"āĻĒā§āĻ¯āĻžāĻ" āĻāĻ° āĻāĻ¨ā§āĻ¯, āĻā§āĻ°āĻŽ-āĻāĻāĻā§āĻŽ āĻāĻāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻžāĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨
āĻ¯ā§ āĻāĻŦāĻ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻāĻāĻā§āĻŽ āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻ¨ā§āĻ¯ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ āĻĻā§āĻ°ā§āĻā§āĻ¯-āĻāĻāĻā§āĻŽ.
āĻ¯āĻĻāĻŋ āĻāĻāĻŋāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻ¨āĻž āĻĨāĻžāĻā§ āĻŦāĻž āĻāĻāĻāĻŋ '*' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻāĻāĻā§āĻŽā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
"āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ" āĻāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻ¨ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻāĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻĒāĻ¨āĻŋ
āĻ˛āĻŋāĻā§āĻ¨ "/"āĻā§āĻ°āĻŽ-āĻāĻāĻā§āĻŽ āĻāĻŦāĻ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻļā§āĻˇ āĻĒāĻĒ āĻ āĻĢ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻĨā§āĻā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĨ¤ āĻĻā§āĻ¯ āĻā§āĻ°āĻŽ-āĻāĻāĻā§āĻŽ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤
If āĻā§āĻ°āĻŽ-āĻāĻāĻā§āĻŽ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻžāĻāĻĒ āĻŦā§āĻāĻžāĻ¯āĻŧ ("A", "a", āĻŦāĻž "Z"), the āĻĻā§āĻ°ā§āĻā§āĻ¯-āĻāĻāĻā§āĻŽ is
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ¸ā§āĻ¸ā§āĻĒāĻˇā§āĻ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻ¸āĻā§āĻā§
āĻĒā§āĻ¯āĻžāĻ, āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻ¸ā§āĻ āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
āĻāĻ āĻā§āĻĄ: āĻāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĻā§āĻ¯āĻŧ:
āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("W/a", "\004Gurusamy") ("āĻā§āĻ°ā§")
āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("a3/A A*", "007 Bond J") ("āĻŦāĻ¨ā§āĻĄ", "J")
āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("a3 x2 /A A*", "007: Bond, J.") ("āĻŦāĻ¨ā§āĻĄ, J", "āĨ¤")
āĻĒā§āĻ¯āĻžāĻ("n/a* w/a","hello,","world") "\000\006hello,\005world"
āĻĒā§āĻ¯āĻžāĻ("a/W2", ord("a").. ord("z")) "2ab"
āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°āĻŋāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯-āĻāĻāĻā§āĻŽ "āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ" āĻĨā§āĻā§ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤
āĻāĻāĻāĻŋ āĻāĻŖāĻ¨āĻž āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻĻā§āĻ°ā§āĻā§āĻ¯-āĻāĻāĻā§āĻŽ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ āĻā§āĻˇāĻ° āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "A", "a" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻĻāĻ°āĻāĻžāĻ°ā§
āĻŦāĻž "Z"āĨ¤ āĻ¸āĻā§āĻā§ āĻĒā§āĻ¯āĻžāĻāĻŋāĻ a āĻĻā§āĻ°ā§āĻā§āĻ¯-āĻāĻāĻā§āĻŽ "a" āĻŦāĻž "Z" āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ "\000" āĻ āĻā§āĻˇāĻ° āĻĒā§āĻ°āĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§,
āĻ¯ā§āĻāĻŋāĻā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§ āĻāĻāĻ¨āĻŋ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°ā§ āĻ¨āĻžāĨ¤
¡ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻ§āĻ°āĻ¨ "s", "S", "l", āĻāĻŦāĻ "L" āĻāĻ° āĻĒāĻ°ā§ āĻāĻāĻāĻŋ "!" āĻ¸āĻāĻļā§āĻ§āĻ
āĻ¨ā§āĻāĻŋāĻ āĻļāĻ°ā§āĻāĻ¸ āĻŦāĻž āĻ˛āĻ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻĒāĻ°ā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖā§ āĻĻā§āĻāĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§, āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ "l" āĻŽāĻžāĻ¨ā§
āĻ āĻŋāĻ 32 āĻŦāĻŋāĻ, āĻ¯āĻĻāĻŋāĻ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŋ āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĻā§āĻāĻž āĻ¨ā§āĻāĻŋāĻ "āĻ˛āĻ" āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻĄāĻŧ āĻāĻāĻŋ āĻŽā§āĻ˛āĻ¤ 64-āĻŦāĻŋāĻ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻāĻāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĨ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻā§āĻ¨ āĻāĻŋāĻ¨āĻž āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
"!" āĻāĻ āĻāĻžāĻŦā§ āĻā§āĻ¨ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻāĻ°ā§:
printf "s āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻšāĻ˛ %d, s! āĻšāĻ˛ %d\n",
āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻĒā§āĻ¯āĻžāĻ("āĻā§āĻ˛āĻŋ"), āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻĒā§āĻ¯āĻžāĻ ("āĻā§āĻ˛āĻŋ!");
printf "āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ l āĻšāĻ˛ %d, l! āĻšāĻ˛ %d\n",
āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻĒā§āĻ¯āĻžāĻ("l"), āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻĒā§āĻ¯āĻžāĻ ("l!");
"āĻāĻŽāĻŋ!" āĻāĻŦāĻ āĻāĻŽāĻŋ!" āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻ āĻ¨ā§āĻŽā§āĻĻāĻŋāĻ¤, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯: āĻ¤āĻžāĻ°āĻž āĻšāĻ¯āĻŧ
"i" āĻāĻŦāĻ "I" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ āĻāĻŋāĻ¨ā§āĻ¨āĨ¤
āĻ¨ā§āĻāĻŋāĻ āĻļāĻ°ā§āĻāĻ¸, āĻāĻ¨āĻāĻ¸, āĻ˛āĻ āĻāĻŦāĻ āĻ˛āĻ āĻ˛āĻ āĻāĻ° āĻĒā§āĻ°āĻā§āĻ¤ āĻŽāĻžāĻĒ (āĻŦāĻžāĻāĻā§)
āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻāĻ¨ āĻĨā§āĻā§āĻ āĻāĻĒāĻ˛āĻŦā§āĻ§:
$ perl -V:{short,int,long{,long}} āĻāĻāĻžāĻ°
āĻļāĻ°ā§āĻāĻ¸āĻžāĻāĻ='2';
intsize='4';
longsize='4';
longlongsize='8';
āĻ āĻĨāĻŦāĻž āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ¯āĻžāĻāĻŋāĻāĻāĻžāĻŦā§ "āĻāĻ¨āĻĢāĻŋāĻ" āĻŽāĻĄāĻŋāĻāĻ˛ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§:
āĻāĻ¨āĻĢāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $Config{shortsize}, "\n";
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $Config{intsize}, "\n";
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $Config{longsize}, "\n";
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $Config{longlongsize}, "\n";
āĻĻā§āĻ°ā§āĻ āĻĻā§āĻ°ā§āĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻžāĻĄāĻŧāĻž āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ $Config{longlongsize} āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤āĨ¤
¡ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ "s", "S", "i", "I", "l", "L", "j", āĻāĻŦāĻ "J" āĻ¸āĻšāĻāĻžāĻ¤āĻāĻžāĻŦā§ āĻ -
āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻ° āĻāĻŦāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯ āĻāĻžāĻ°āĻŖ āĻ¤āĻžāĻ°āĻž āĻ¨ā§āĻāĻŋāĻ āĻŽā§āĻ¨ā§ āĻāĻ˛ā§
byteorder āĻāĻŦāĻ endianness. āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻāĻŋ 4-āĻŦāĻžāĻāĻ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž 0x12345678 (305419896
āĻĻāĻļāĻŽāĻŋāĻ) āĻ¨ā§āĻāĻŋāĻāĻāĻžāĻŦā§ āĻ āĻ°ā§āĻĄāĻžāĻ° āĻāĻ°āĻž āĻšāĻŦā§ (āĻ¸āĻŋāĻĒāĻŋāĻāĻ āĻ°ā§āĻāĻŋāĻ¸ā§āĻāĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻžāĻāĻžāĻ¨ā§ āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻž)
āĻŦāĻžāĻāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§
0x12 0x34 0x56 0x78 # āĻŦāĻĄāĻŧ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨
0x78 0x56 0x34 0x12 # āĻ˛āĻŋāĻāĻ˛-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨
āĻŽā§āĻ˛āĻ¤, āĻāĻ¨ā§āĻā§āĻ˛ āĻāĻŦāĻ āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¸āĻŋāĻĒāĻŋāĻāĻāĻā§āĻ˛āĻŋ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨, āĻ āĻ¨ā§āĻ¯ āĻ¸āĻŦāĻžāĻ āĻ¸āĻš
Motorola m68k/88k, PPC, Sparc, HP PA, Power, āĻāĻŦāĻ Cray, āĻŦāĻĄāĻŧ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨āĨ¤ āĻāĻ˛āĻĢāĻž āĻāĻŦāĻ
āĻāĻŽāĻāĻāĻĒāĻŋāĻāĻ¸ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§: āĻĄāĻŋāĻāĻŋāĻāĻžāĻ˛/āĻāĻŽāĻĒā§āĻ¯āĻžāĻ āĻāĻā§āĻ˛āĻŋ āĻ˛āĻŋāĻāĻ˛-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŽā§āĻĄā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ (āĻāĻžāĻ˛āĻāĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§),
āĻāĻŋāĻ¨ā§āĻ¤ā§ SGI/Cray āĻāĻā§āĻ˛āĻŋāĻā§ āĻŦāĻŋāĻ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŽā§āĻĄā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻ¨āĻžāĻŽ āĻā§āĻ˛ā§ āĻŦāĻĄāĻŧ endian āĻāĻŦāĻ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ endian āĻĄāĻŋāĻŽ āĻāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻāĻŽāĻŋāĻ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸
āĻā§āĻ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻ˛āĻŋāĻ˛āĻŋāĻĒā§āĻāĻŋāĻ¯āĻŧāĻžāĻ¨āĻĻā§āĻ° āĻāĻŦāĻ āĻŦāĻĄāĻŧ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦā§āĻ˛ā§āĻĢā§āĻ¸āĻā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨āĻĻā§āĻ° āĻ āĻā§āĻ¯āĻžāĻ¸
āĻā§āĻ˛āĻžāĻ¸āĻŋāĻ āĻā§āĻ¨āĻžāĻĨāĻ¨ āĻ¸ā§āĻāĻĢāĻ āĻŦā§āĻ¯āĻā§āĻ, āĻāĻžāĻ˛āĻŋāĻāĻžāĻ°ā§āĻ° āĻā§āĻ°āĻžāĻā§āĻ˛āĻ¸. āĻāĻāĻŋ āĻāĻŽā§āĻĒāĻŋāĻāĻāĻžāĻ° āĻ˛āĻŋāĻā§āĻā§āĻ¤ā§ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°ā§āĻā§
āĻĄā§āĻ¯āĻžāĻ¨āĻŋ āĻā§āĻšā§āĻ¨, USC/ISI IEN 137-āĻāĻ° "āĻ āĻ¨ āĻšāĻ˛āĻŋ āĻāĻ¯āĻŧāĻžāĻ°āĻ¸ āĻ ā§āĻ¯āĻžāĻ¨ā§āĻĄ āĻ āĻĒā§āĻ˛ā§ āĻĢāĻ° āĻĒāĻŋāĻ¸" āĻāĻžāĻāĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§,
āĻāĻĒā§āĻ°āĻŋāĻ˛ 1, 1980
āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻŽāĻ¨āĻāĻŋ āĻ āĻĻā§āĻā§āĻ¤ āĻŦāĻžāĻāĻ āĻ āĻ°ā§āĻĄāĻžāĻ° āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§āĻŽāĻ¨
0x56 0x78 0x12 0x34
0x34 0x12 0x78 0x56
āĻāĻā§āĻ˛ā§āĻā§ āĻŽāĻŋāĻĄ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨, āĻŽāĻŋāĻĄāĻ˛-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨, āĻŽāĻŋāĻā§āĻ¸āĻĄ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻž āĻļā§āĻ§ā§ āĻ āĻĻā§āĻā§āĻ¤ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧāĨ¤
āĻāĻĒāĻ¨āĻŋ āĻāĻ āĻŽāĻ¨ā§āĻ¤ā§āĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ āĻ¨ā§āĻ¤āĻŋāĻŽāĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ printf("%#02x", $_)("W*", pack L=>0x12345678);
āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§āĻ° āĻŦāĻžāĻāĻāĻ āĻ°ā§āĻĄāĻžāĻ° āĻ¯ā§āĻāĻžāĻ¨ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛ āĻ¸ā§āĻāĻŋ āĻāĻ¨āĻĢāĻŋāĻā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§āĻ āĻāĻĒāĻ˛āĻŦā§āĻ§:
āĻāĻ¨āĻĢāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "$Config{byteorder}\n";
āĻ āĻĨāĻŦāĻž āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻāĻ¨ āĻĨā§āĻā§:
$ perl -V:byteorder
āĻŦāĻžāĻāĻāĻ āĻ°ā§āĻĄāĻžāĻ° "1234" āĻāĻŦāĻ "12345678" āĻā§āĻ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨; "4321" āĻāĻŦāĻ "87654321" āĻŦāĻĄāĻŧ-
āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŽāĻžāĻ˛ā§āĻāĻŋāĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ° āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻ¸āĻš āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ "ffff" āĻĨāĻžāĻāĻŦā§, āĻāĻāĻŋ āĻŦā§āĻāĻžāĻ¯āĻŧ
āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻŋāĻ āĻ¤āĻĨā§āĻ¯ āĻāĻžāĻ āĻāĻ°ā§ āĻ¨āĻž, āĻāĻāĻāĻ¨āĻā§ āĻ āĻŦāĻļā§āĻ¯āĻ āĻ°āĻžāĻ¨āĻāĻžāĻāĻŽ āĻĒā§āĻ°ā§āĻŦāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻ˛āĻāĻžāĻŦā§ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯, āĻšāĻ¯āĻŧ "n", "N", "v", āĻāĻŦāĻ "V" āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻāĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻŦāĻž
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻ¨ā§āĻā§ āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ ">" āĻāĻŦāĻ "<" āĻ¸āĻāĻļā§āĻ§āĻāĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ā§ˇ āĻāĻ°ā§ āĻĻā§āĻā§āĻ¨
āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻ
¡ āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĢā§āĻ˛ā§āĻāĻŋāĻ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻ āĻ¨ā§āĻ¤āĻŋāĻŽāĻ¤āĻž āĻāĻā§āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ (āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻ¯āĻŧ) āĻāĻāĻŋ āĻ¸āĻŽā§āĻŽāĻ¤ āĻšāĻ¯āĻŧ
āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻļā§āĻˇā§āĻ° āĻ¸āĻžāĻĨā§āĨ¤ āĻ¯āĻĻāĻŋāĻ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻāĻāĻāĻžāĻ˛ IEEE āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
754 āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§, āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻāĻā§, āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§ āĻ¯āĻĻāĻŋ āĻĻā§āĻ°ā§āĻ āĻĻā§āĻŦāĻŋāĻā§āĻŖ āĻšāĻ¯āĻŧ
āĻāĻĄāĻŧāĻŋāĻ¤ āĻāĻĒāĻ¨āĻŋ "āĻāĻ¨āĻĢāĻŋāĻ" āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ "āĻĄāĻžāĻŦāĻ˛āĻāĻžāĻāĻ¨ā§āĻĄ" āĻāĻŦāĻ "āĻ˛āĻāĻĄāĻŦā§āĻ˛āĻāĻžāĻāĻ¨ā§āĻĄ" āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ (āĻāĻāĻžāĻĄāĻŧāĻžāĻ
"āĻĄāĻŦāĻ˛āĻ¸āĻžāĻāĻ", "āĻ˛āĻāĻĄāĻŦā§āĻ˛āĻŋāĻ¸āĻžāĻāĻ"): "āĻāĻžāĻāĻ¨ā§āĻĄ" āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻšāĻ˛ enums, "āĻŦāĻžāĻāĻāĻ āĻ°ā§āĻĄāĻžāĻ°" āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻžāĻ˛ā§ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻšāĻ˛ āĻ¸āĻŽā§āĻāĻŦāĻ¤ IEEE 754 64-āĻŦāĻŋāĻ āĻ°āĻžāĻāĻž
āĻĻā§āĻŦāĻŋāĻā§āĻŖ, āĻāĻŦāĻ āĻ¸āĻŽā§āĻŽāĻ¤-āĻ āĻ¨āĻ¨ā§āĻ¤āĻŋāĻ¤ā§āĻŦā§āĻ°āĨ¤ āĻāĻ°ā§āĻāĻāĻŋ āĻ¸āĻŽā§āĻāĻžāĻŦāĻ¨āĻž āĻšāĻ˛ "%a") āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸
"printf" āĻāĻ°āĨ¤
¡ āĻĒāĻžāĻ°ā§āĻ˛ 5.10.0, āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻāĻŦāĻ āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ, "p" āĻ¸āĻš
āĻāĻŦāĻ "P" āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻāĻŦāĻ "()" āĻā§āĻˇā§āĻ ā§, āĻ¸āĻŦāĻā§āĻ˛āĻŋāĻ ">" āĻŦāĻž "<" āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨āĻ¨ā§āĻ¸ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¯āĻĨāĻžāĻā§āĻ°āĻŽā§ āĻŦāĻĄāĻŧ- āĻŦāĻž āĻā§āĻ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻžāĻāĻ-āĻ āĻ°ā§āĻĄāĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻāĻļā§āĻ§āĻāĨ¤ āĻāĻāĻā§āĻ˛ā§
"n", "N", "v", āĻāĻŦāĻ "V" āĻā§āĻāĻžāĻŦā§ āĻāĻāĻžāĻ° āĻāĻ°ā§ āĻ¨āĻž āĻ¤āĻž āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§ āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ°āĻā§āĻ˛āĻŋ āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°
āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, 64-āĻŦāĻŋāĻ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻŦāĻž āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻŽāĻžāĻ¨āĨ¤
āĻāĻāĻāĻŋ endianness āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻžāĻ¨ā§ āĻāĻŋāĻā§ āĻāĻĻā§āĻŦā§āĻ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻ¤ā§ āĻšāĻŦā§:
¡ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻĻāĻžāĻ¨-āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻāĻ¨āĻ āĻāĻžāĻ āĻāĻ°ā§ āĻ¯āĻāĻ¨ āĻ¸āĻŦ
āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽāĻā§āĻ˛āĻŋ āĻ¸ā§āĻā§āĻ˛āĻŋāĻā§ āĻāĻāĻ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĨ¤ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§
āĻĻā§āĻ-āĻĒāĻ°āĻŋāĻĒā§āĻ°āĻ āĻ¸ā§āĻŦāĻ°āĻ˛āĻŋāĻĒāĻŋāĻ¤ā§, āĻ¤āĻžāĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻ¨āĻ¯āĻŧāĨ¤
¡ ">" āĻŦāĻž "<" āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ°āĻā§āĻ˛āĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŦāĻĄāĻŧ- āĻŦāĻž āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ˛āĻŋāĻāĻ˛-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŽā§āĻļāĻŋāĻ¨āĨ¤ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻ¤āĻžāĻĻā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻāĻāĻŋ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽāĨ¤
¡ āĻĄā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ āĻŦāĻĄāĻŧ- āĻŦāĻž āĻā§āĻ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻžāĻāĻ-āĻ āĻ°ā§āĻĄāĻžāĻ° āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°āĻž
āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻāĻāĻ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ˛ā§āĻ āĻŦāĻŋāĻ¨āĻŋāĻŽāĻ¯āĻŧ āĻāĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¯ā§āĻŽāĻ¨ IEEE āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĨ¤ āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ IEEE āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻ¸ā§āĻāĻžāĻ¨ā§āĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻ¨āĻ āĻ¸ā§āĻā§āĻˇā§āĻŽ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻšāĻ¤ā§. āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻā§ ">" āĻŦāĻž "<" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻāĻ¯āĻŧāĻž
āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻāĻĒāĻ¯ā§āĻā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¤āĻŦā§ āĻŦāĻŋāĻĒāĻā§āĻāĻ¨āĻāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻ āĻŋāĻāĻāĻžāĻŦā§ āĻāĻžāĻ¨ā§āĻ¨ āĻ¨āĻž
āĻāĻ°āĻā§āĻ¨ āĻāĻāĻŋ āĻāĻžāĻ¸āĻŽāĻžāĻ¨-āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻāĻžāĻŦā§ āĻ¸āĻā§āĻāĻ¯āĻŧ āĻāĻ°āĻžāĻ° āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻĒāĻžāĻ¯āĻŧ āĻ¨āĻ¯āĻŧāĨ¤
āĻāĻāĻāĻŋ "()" āĻā§āĻˇā§āĻ ā§āĻ¤ā§ ">" āĻŦāĻž "<" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻāĻŋ āĻā§āĻ°ā§āĻĒā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ°āĻāĻžāĻ°āĻā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°ā§
āĻ¯ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻžāĻŦāĻā§āĻ°ā§āĻĒ āĻ¸āĻš āĻŦāĻžāĻāĻ-āĻ āĻ°ā§āĻĄāĻžāĻ° āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ° āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĨ¤ āĻāĻāĻž āĻ¨āĻŋāĻāĻļāĻŦā§āĻĻā§
āĻ āĻ¨ā§āĻ¯ āĻ¸āĻŦ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒā§āĻā§āĻˇāĻž. āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻžāĻāĻ-āĻ āĻ°ā§āĻĄāĻžāĻ° āĻāĻāĻžāĻ°āĻ°āĻžāĻāĻĄ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¨ā§āĻ
āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻĒā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¯āĻžāĻ° āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻāĻ-āĻ āĻ°ā§āĻĄāĻžāĻ° āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ° āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻ¯āĻŧ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤
¡ āĻĒā§āĻ°āĻā§āĻ¤ āĻ¸āĻāĻā§āĻ¯āĻž (āĻĢā§āĻ˛ā§āĻ āĻāĻŦāĻ āĻĄāĻžāĻŦāĻ˛) āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¨ā§āĻāĻŋāĻ āĻŽā§āĻļāĻŋāĻ¨ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§āĨ¤ āĻāĻžāĻ°āĻŖā§
āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§āĻ° āĻŦāĻšā§āĻā§āĻŖ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻāĻĻāĻ°ā§āĻļ "āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ" āĻāĻ° āĻ āĻāĻžāĻŦ
āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ, āĻŦāĻŋāĻ¨āĻŋāĻŽāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ¨ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋāĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§
āĻ¯ā§ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻĄā§āĻāĻž āĻāĻāĻāĻŋ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻ˛ā§āĻāĻž āĻĒāĻĄāĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž
āĻ āĻ¨ā§āĻ¯āĻāĻŋ, āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻ¯āĻŧā§āĻ IEEE āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻžāĻŖāĻŋāĻ¤āĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ (āĻāĻžāĻ°āĻŖ endianness
āĻŽā§āĻŽāĻ°āĻŋ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž IEEE āĻ¸ā§āĻĒā§āĻā§āĻ° āĻ āĻāĻļ āĻ¨āĻ¯āĻŧ)āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ perlport āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¯āĻĻāĻŋ āĻ¤ā§āĻŽāĻŋ āĻāĻžāĻ¨ā§ āĻ āĻŋāĻ āĻāĻĒāĻ¨āĻŋ āĻāĻŋ āĻāĻ°āĻā§āĻ¨, āĻāĻĒāĻ¨āĻŋ ">" āĻŦāĻž "<" āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ āĻŦāĻĄāĻŧ- āĻŦāĻž āĻā§āĻ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻžāĻāĻ-āĻ āĻ°ā§āĻĄāĻžāĻ° āĻā§āĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻžāĻ°āĻŖ āĻĒāĻžāĻ°ā§āĻ˛ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖāĻāĻžāĻŦā§ āĻ¸āĻāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĻā§āĻŦāĻŋāĻā§āĻŖ (āĻŦāĻž āĻĻā§āĻ°ā§āĻ āĻĻā§āĻŦāĻŋāĻā§āĻŖ, āĻ¯āĻĻāĻŋ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻĨāĻžāĻā§) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻāĻŖāĻ¨āĻž, āĻĻā§āĻŦāĻŋāĻā§āĻŖ āĻĨā§āĻā§ āĻĢā§āĻ˛ā§āĻā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻž āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻāĻŦāĻžāĻ° āĻĻā§āĻŦāĻŋāĻā§āĻŖ āĻāĻ°āĻž
āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻšāĻžāĻ°āĻžāĻ¯āĻŧ, āĻ¤āĻžāĻ "unpack("f", pack("f", $foo)") āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§ $foo āĻāĻ° āĻ¸āĻŽāĻžāĻ¨ āĻšāĻŦā§ āĻ¨āĻžāĨ¤
¡ āĻĒā§āĻ¯āĻžāĻ āĻāĻŦāĻ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻĻā§āĻāĻŋ āĻŽā§āĻĄā§ āĻāĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§: āĻ āĻā§āĻˇāĻ° āĻŽā§āĻĄ ("C0" āĻŽā§āĻĄ) āĻ¯ā§āĻāĻžāĻ¨ā§
āĻĒā§āĻ¯āĻžāĻāĻĄ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ āĻā§āĻˇāĻ° āĻĒā§āĻ°āĻ¤āĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻāĻŦāĻ UTF-8 āĻŦāĻžāĻāĻ āĻŽā§āĻĄ ("U0" āĻŽā§āĻĄ) āĻ¯ā§āĻāĻžāĻ¨ā§
āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻ¤āĻžāĻ° UTF-8-āĻāĻ¨āĻā§āĻĄā§āĻĄ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻĢāĻ°ā§āĻŽā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻāĻ-āĻŦāĻžāĻ-āĻŦāĻžāĻāĻā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻā§āĻ¯āĻžāĻ°ā§āĻā§āĻāĻžāĻ° āĻŽā§āĻĄ āĻšāĻ˛ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ "U" āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧāĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻ¸ā§āĻĒāĻˇā§āĻ "C0" āĻŦāĻž "U0" āĻ¸āĻš āĻŽāĻ§ā§āĻ¯-āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§ āĻŽā§āĻĄ āĻ¸ā§āĻ¯ā§āĻāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ā§ˇ
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻŽā§āĻĄ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻŦāĻž āĻļā§āĻˇ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻ āĻŽā§āĻĄ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻĨāĻžāĻā§
"()" āĻā§āĻ°ā§āĻĒ āĻāĻāĻŋ (āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ) āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¯āĨ¤
āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ āĻā§āĻˇāĻ° āĻĒā§āĻ¤ā§ "C0" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ "U0" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒā§āĻ¤ā§ āĻ -āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻŦāĻžāĻāĻ
āĻ āĻāĻ¤ā§āĻ¯āĻž āĻ¸ā§āĻĒāĻˇā§āĻ āĻ¨āĻ¯āĻŧāĨ¤ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻāĻāĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽāĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻž āĻāĻžāĻ¨:
$ perl -CS -E 'āĻŦāĻ˛ā§āĻ¨ "\x{3B1}\x{3C9}"' |
perl -CS -ne 'printf "%v04X\n", $_ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯("C0A*", $_)'
03B1.03C9
$ perl -CS -E 'āĻŦāĻ˛ā§āĻ¨ "\x{3B1}\x{3C9}"' |
perl -CS -ne 'printf "%v02X\n", $_ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯("U0A*", $_)'
CE.B1.CF.89
$ perl -CS -E 'āĻŦāĻ˛ā§āĻ¨ "\x{3B1}\x{3C9}"' |
perl -C0 -ne 'printf "%v02X\n", $_ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯("C0A*", $_)'
CE.B1.CF.89
$ perl -CS -E 'āĻŦāĻ˛ā§āĻ¨ "\x{3B1}\x{3C9}"' |
perl -C0 -ne 'printf "%v02X\n", $_ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻā§āĻ° āĻāĻ¨ā§āĻ¯ ("U0A*", $_)'
C3.8E.C2.B1.C3.8F.C2.89
āĻāĻ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻāĻ°āĻ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°ā§ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° "āĻĒā§āĻ¯āĻžāĻ"/"āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ
āĻāĻ¨āĻā§āĻĄ āĻŽāĻĄāĻŋāĻāĻ˛ā§āĻ° āĻŦāĻŋāĻāĻ˛ā§āĻĒāĨ¤
¡ āĻāĻĒāĻ¨āĻžāĻā§ āĻ āĻŦāĻļā§āĻ¯āĻ āĻĸā§āĻāĻžāĻ¨ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¯ā§āĻā§āĻ¨ā§ āĻ¸āĻžāĻ°āĻŋāĻŦāĻĻā§āĻ§āĻāĻ°āĻŖ āĻŦāĻž āĻĒā§āĻ¯āĻžāĻĄāĻŋāĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯āĻĨā§āĻˇā§āĻ
āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ "x"esāĨ¤ āĻāĻ¨ā§āĻ¯ āĻā§āĻ¨ āĻāĻĒāĻžāĻ¯āĻŧ āĻ¨ā§āĻ āĻĒā§āĻ¯āĻžāĻ() āĻāĻŦāĻ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ() āĻā§āĻĨāĻžāĻ¯āĻŧ āĻāĻžāĻ¨āĻ¤ā§
āĻ āĻā§āĻˇāĻ° āĻ¯āĻžāĻā§āĻā§ āĻŦāĻž āĻĨā§āĻā§ āĻāĻ¸āĻā§, āĻ¤āĻžāĻ āĻ¤āĻžāĻ°āĻž āĻ¤āĻžāĻĻā§āĻ° āĻāĻāĻāĻĒā§āĻ āĻāĻŦāĻ āĻāĻ¨āĻĒā§āĻ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°ā§
āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸āĻŽāĻ¤āĻ˛ āĻā§āĻ°āĻŽāĨ¤
¡ A "()" āĻā§āĻ°ā§āĻĒ āĻšāĻ˛ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦ-āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻ¯āĻž āĻŦāĻ¨ā§āĻ§āĻ¨ā§āĻ¤ā§ āĻāĻŦāĻĻā§āĻ§āĨ¤ āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻĒ āĻāĻāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻšāĻ¯āĻŧ āĻĒā§āĻ¸ā§āĻāĻĢāĻŋāĻā§āĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŖāĻ¨āĻž, āĻŦāĻž āĻāĻ¨ā§āĻ¯ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ(), āĻāĻāĻžāĻĄāĻŧāĻžāĻ "/" āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§āĨ¤
āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻĒā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§, "@" āĻĻāĻŋāĻ¯āĻŧā§ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ 0 āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧāĨ¤
āĻ āĻ¤āĻāĻŦ, āĻāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛
āĻĒā§āĻ¯āĻžāĻ("@1A((@2A)@3A)", qw[X Y Z])
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻ˛ "\0X\0\0YZ"āĨ¤
¡ "x" āĻāĻŦāĻ "X" āĻ¸ā§āĻŦā§āĻāĻžāĻ° āĻāĻ°ā§ "!" āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻāĻ°āĻŖ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻāĻļā§āĻ§āĻ: āĻ¤āĻžāĻ°āĻž āĻ˛āĻžāĻĢ āĻĻā§āĻ¯āĻŧ
"āĻāĻŖāĻ¨āĻž" āĻāĻ° āĻāĻāĻāĻŋ āĻā§āĻŖā§ āĻ¸āĻžāĻ°āĻŋāĻŦāĻĻā§āĻ§ āĻ¨āĻŋāĻāĻāĻ¤āĻŽ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻāĻāĻŋāĻ¯āĻŧā§ āĻŦāĻž āĻĒāĻŋāĻāĻ¨ā§
āĻāĻ°āĻŋāĻ¤ā§āĻ°. āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻĨā§āĻā§ āĻĒā§āĻ¯āĻžāĻ() or āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ() āĻāĻāĻāĻŋ āĻ¸āĻŋ āĻāĻžāĻ āĻžāĻŽā§āĻ° āĻŽāĻ¤ā§
āĻāĻ āĻ¨ {
char c; /* āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤, 8-āĻŦāĻŋāĻ āĻ āĻā§āĻˇāĻ° */
āĻĄāĻŦāĻ˛ āĻĄāĻŋ;
char cc[2];
}
āĻāĻāĻāĻ¨āĻā§ "c x![d] d c[2]" āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻ¯ā§ āĻĻā§āĻŦāĻŋāĻā§āĻŖ āĻāĻŦāĻļā§āĻ¯āĻ
āĻĻā§āĻŦāĻŋāĻā§āĻŖ āĻāĻāĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻ°āĻŋāĻŦāĻĻā§āĻ§ āĻāĻ°āĻžāĨ¤
āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻāĻ°āĻŖ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯, 0 āĻāĻ° āĻāĻāĻāĻŋ "āĻāĻŖāĻ¨āĻž" 1 āĻāĻ° "āĻāĻŖāĻ¨āĻž" āĻāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯; āĻāĻāĻ¯āĻŧ
no-ops
¡ "n", "N", "v" āĻāĻŦāĻ "V" āĻ¸ā§āĻŦā§āĻāĻžāĻ° āĻāĻ°ā§ "!" āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ 16-/32-āĻŦāĻŋāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦāĻāĻžāĻ°ā§ āĻ¸āĻāĻļā§āĻ§āĻ
āĻŦāĻĄāĻŧ-/āĻ˛āĻŋāĻāĻ˛-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻā§āĻ°āĻŽā§ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĨ¤ āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¯āĻāĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻĒā§āĻ°ā§āĻā§āĻŦāĻ˛
āĻāĻžāĻ āĻāĻ°āĻž āĻĒā§āĻ¯āĻžāĻāĻĄ āĻĄā§āĻāĻž āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§; āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯āĻāĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻĻā§āĻ-āĻĒāĻ°āĻŋāĻĒā§āĻ°āĻ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
¡ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯āĻā§āĻ˛āĻŋ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻļā§āĻˇā§ "#" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻā§ āĻāĻŽā§āĻŦā§āĻĄ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ¸āĻžāĻĻāĻž
āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻā§ āĻ āĻĒāĻ°ā§āĻ° āĻĨā§āĻā§ āĻĒā§āĻ¯āĻžāĻ āĻā§āĻĄ āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻāĻļā§āĻ§āĻ āĻāĻŦāĻ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž
āĻ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§ āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻāĻāĻŋāĻ˛ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻāĻā§āĻ˛āĻŋāĻā§ āĻĒā§āĻĨāĻ āĻ˛āĻžāĻāĻ¨-āĻŦāĻžāĻ-āĻ˛āĻžāĻāĻ¨ā§ āĻāĻžāĻāĻž
āĻāĻĒāĻžāĻĻāĻžāĻ¨, āĻāĻĒāĻ¯ā§āĻā§āĻ¤āĻāĻžāĻŦā§ āĻā§āĻāĻž, āĻ¸ā§āĻ¸ā§āĻĒāĻˇā§āĻāĻ¤āĻž āĻāĻ¨ā§āĻ¨āĻ¤ āĻāĻ°āĻ¤ā§ āĻ āĻ¨ā§āĻ āĻāĻŋāĻā§ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻŦāĻ
āĻāĻāĻŋāĻ˛ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ¯āĻžāĻ/āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻā§āĻ° āĻ°āĻā§āĻˇāĻŖāĻžāĻŦā§āĻā§āĻˇāĻŖāĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¯ā§āĻŽāĻ¨ "/x" āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŽā§āĻ¯āĻžāĻāĨ¤
āĻ¯āĻĻāĻŋ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¯āĻŧ āĻĒā§āĻ¯āĻžāĻ() āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻĒā§āĻ¯āĻžāĻ() āĻ āĻ¨ā§āĻŽāĻžāĻ¨
āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ "" āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĨ¤ āĻ¯āĻĻāĻŋ TEMPLATE-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻĨā§āĻā§ āĻāĻŽ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¯āĻŧ, āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤
āĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ.
¡ āĻŦāĻŋāĻļā§āĻˇ āĻāĻžāĻ¸āĻŽāĻžāĻ¨ āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻž āĻšāĻā§āĻā§ "Inf" āĻāĻŦāĻ "NaN" (āĻ āĻ¨āĻ¨ā§āĻ¤,
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ, āĻāĻŦāĻ āĻ¨āĻ-āĻ-āĻ¸āĻāĻā§āĻ¯āĻž) āĻĒā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§ (āĻ¯ā§āĻŽāĻ¨ "L") āĻāĻāĻāĻŋ
āĻŽāĻžāĻ°āĻžāĻ¤ā§āĻŽāĻ āĻ¤ā§āĻ°ā§āĻāĻŋ. āĻāĻ° āĻāĻžāĻ°āĻŖ āĻš'āĻ˛ āĻā§āĻŦāĻ˛āĻŽāĻžāĻ¤ā§āĻ° āĻā§āĻ¨āĻ āĻŦā§āĻĻā§āĻ§āĻŋāĻŽāĻžāĻ¨ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ āĻ¨ā§āĻ
āĻāĻ āĻŦāĻŋāĻļā§āĻˇ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĨ¤
āĻāĻĻāĻžāĻšāĻ°āĻŖ:
$foo = āĻĒā§āĻ¯āĻžāĻ("WWWW",65,66,67,68);
# foo eq "ABCD"
$foo = āĻĒā§āĻ¯āĻžāĻ("W4",65,66,67,68);
# āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸
$foo = pack("W4",0x24b6,0x24b7,0x24b8,0x24b9);
# āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻŦā§āĻ¤ā§āĻ¤āĻžāĻāĻžāĻ° āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸āĨ¤
$foo = pack("U4",0x24b6,0x24b7,0x24b8,0x24b9);
# āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻŦā§āĻ¤ā§āĻ¤āĻžāĻāĻžāĻ° āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻĒāĻžāĻŦā§āĻ¨ āĻ¨āĻž
# UTF-8 āĻŦāĻžāĻāĻ āĻāĻžāĻ°āĻŖ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§āĻ° āĻļā§āĻ°ā§āĻ¤ā§ U āĻāĻ° āĻāĻžāĻ°āĻŖā§
# āĻāĻāĻāĻŋ U0-āĻŽā§āĻĄā§ āĻ¸ā§āĻ¯ā§āĻāĻ āĻāĻ°ā§āĻ¨, āĻ¯āĻžāĻ¤ā§ UTF-8 āĻŦāĻžāĻāĻ āĻ¯ā§āĻā§āĻ¤ āĻšāĻ¯āĻŧ
# āĻāĻ°āĻŋāĻ¤ā§āĻ°
$foo = pack("C0U4",0x24b6,0x24b7,0x24b8,0x24b9);
# foo eq "\xe2\x92\xb6\xe2\x92\xb7\xe2\x92\xb8\xe2\x92\xb9"
# āĻāĻāĻŋ āĻšāĻ˛ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° UTF-8 āĻāĻ¨āĻā§āĻĄāĻŋāĻ
# āĻāĻā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖ
$foo = āĻĒā§āĻ¯āĻžāĻ("ccxxcc",65,66,67,68);
# foo eq "AB\0\0CD"
# āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: "W" āĻāĻŦāĻ "c" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻ¯ā§āĻā§āĻ¤ āĻāĻĒāĻ°ā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻ¸āĻ¤ā§āĻ¯
# āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° ASCII āĻāĻŦāĻ ASCII āĻĨā§āĻā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ¯ā§āĻŽāĻ¨ ISO āĻ˛ā§āĻ¯āĻžāĻāĻŋāĻ¨ 1
# āĻāĻŦāĻ UTF-8āĨ¤ EBCDIC āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, āĻĒā§āĻ°āĻĨāĻŽ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻšāĻŦā§
# $foo = āĻĒā§āĻ¯āĻžāĻ("WWWW", 193,194,195,196);
$foo = āĻĒā§āĻ¯āĻžāĻ("s2",1,2);
# "\001\000\002\000" āĻ˛āĻŋāĻāĻ˛-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ā§
# "\000\001\000\002" āĻŦāĻĄāĻŧ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ā§
$foo = āĻĒā§āĻ¯āĻžāĻ("a4","abcd","x","y","z");
# "āĻ āĻŦāĻŋ āĻ¸āĻŋ āĻĄāĻŋ"
$foo = āĻĒā§āĻ¯āĻžāĻ("aaaa","abcd","x","y","z");
# "axyz"
$foo = āĻĒā§āĻ¯āĻžāĻ("a14","abcdefg");
# "abcdefg\0\0\0\0\0\0\0"
$foo = āĻĒā§āĻ¯āĻžāĻ("i9pl", gmtime);
# āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻāĻžāĻ āĻžāĻŽā§ āĻāĻŋāĻāĻŽ (āĻ¯āĻžāĻāĻšā§āĻ āĻāĻŽāĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§)
$utmp_template = "Z8 Z8 Z16 L";
$utmp = āĻĒā§āĻ¯āĻžāĻ($utmp_template, @utmp1);
# a struct utmp (BSDish)
@utmp2 = āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ($utmp_template, $utmp);
# "@utmp1" eq "@utmp2"
āĻ¸āĻžāĻŦ bintodec {
āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("N", pack("B32", substr("0" x 32. shift, -32)));
}
$foo = āĻĒā§āĻ¯āĻžāĻ('sx2l', 12, 34);
# āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ 12, āĻĻā§āĻ āĻļā§āĻ¨ā§āĻ¯ āĻŦāĻžāĻāĻ āĻĒā§āĻ¯āĻžāĻĄāĻŋāĻ, āĻĻā§āĻ°ā§āĻ 34
$āĻŦāĻžāĻ° = āĻĒā§āĻ¯āĻžāĻ('s@4l', 12, 34);
# āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ 12, āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ 4 āĻĨā§āĻā§ āĻļā§āĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻŖ, āĻĻā§āĻ°ā§āĻ 34
# $foo eq $āĻŦāĻžāĻ°
$baz = āĻĒā§āĻ¯āĻžāĻ('s.l', 12, 4, 34);
# āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ 12, āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ 4 āĻĨā§āĻā§ āĻļā§āĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻŖ, āĻĻā§āĻ°ā§āĻ 34
$foo = āĻĒā§āĻ¯āĻžāĻ('nN', 42, 4711);
# āĻĒā§āĻ¯āĻžāĻ āĻŦāĻĄāĻŧ-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ 16- āĻāĻŦāĻ 32-āĻŦāĻŋāĻ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž
$foo = āĻĒā§āĻ¯āĻžāĻ('S>L>', 42, 4711);
# āĻ āĻŋāĻ āĻāĻāĻ
$foo = āĻĒā§āĻ¯āĻžāĻ('s<l<', -42, 4711);
# āĻĒā§āĻ¯āĻžāĻ āĻ˛āĻŋāĻāĻ˛-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ 16- āĻāĻŦāĻ 32-āĻŦāĻŋāĻ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž
$foo = āĻĒā§āĻ¯āĻžāĻ('(sl)<', -42, 4711);
# āĻ āĻŋāĻ āĻāĻāĻ
āĻāĻāĻ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ().
āĻĒā§āĻ¯āĻžāĻā§āĻ NAMESPACE
āĻĒā§āĻ¯āĻžāĻā§āĻ NAMESPACE VERSIONā§ˇ
āĻĒā§āĻ¯āĻžāĻā§āĻ NAMESPACE āĻŦā§āĻ˛āĻ
āĻĒā§āĻ¯āĻžāĻā§āĻ NAMESPACE āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻ˛āĻ
BLOCK āĻŦāĻž āĻŦāĻžāĻāĻŋ āĻ¸āĻāĻāĻ˛āĻ¨ āĻāĻāĻ¨āĻŋāĻāĻā§ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻā§āĻˇāĻŖāĻž āĻāĻ°ā§
āĻ¨āĻžāĻŽāĻ¸ā§āĻĨāĻžāĻ¨ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻā§āĻˇāĻŖāĻžāĻ° āĻ¸ā§āĻ¯ā§āĻ āĻšāĻ˛ āĻ¸āĻ°āĻŦāĻ°āĻžāĻšāĻā§āĻ¤ āĻā§āĻĄ āĻŦā§āĻ˛āĻ āĻŦāĻž,
āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻā§āĻ° āĻ āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§, āĻā§āĻˇāĻŖāĻž āĻĨā§āĻā§ āĻāĻžāĻ°ā§āĻ¨ā§āĻā§āĻ° āĻļā§āĻˇ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤
āĻ¸ā§āĻ¯ā§āĻ (āĻā§āĻ°āĻž āĻŦā§āĻ˛āĻ, āĻĢāĻžāĻāĻ˛, āĻŦāĻž "āĻāĻāĻžāĻ˛")āĨ¤ āĻ¯ā§, āĻāĻāĻāĻŋ BLOCK āĻāĻžāĻĄāĻŧāĻž āĻĢāĻ°ā§āĻŽ āĻšāĻ¯āĻŧ
"āĻāĻŽāĻžāĻ°", "āĻ°āĻžāĻˇā§āĻā§āĻ°" āĻāĻŦāĻ "āĻāĻŽāĻžāĻĻā§āĻ°" āĻāĻ° āĻŽāĻ¤ā§āĻ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻļā§āĻˇā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ
āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻāĻ āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ āĻ¯ā§āĻā§āĻ¯ āĻāĻ¤āĻŋāĻļā§āĻ˛ āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻŦā§
āĻ¨āĻžāĻŽāĻ¸ā§āĻĨāĻžāĻ¨, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ āĻ¨ā§āĻ¯ "āĻĒā§āĻ¯āĻžāĻā§āĻ" āĻā§āĻˇāĻŖāĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻāĻžāĻ°āĻ°āĻžāĻāĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻŦāĻž āĻ¯āĻāĻ¨ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻšāĻ¯āĻŧ
āĻŦāĻŋāĻļā§āĻˇ āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻ¯āĻž "āĻĒā§āĻ°āĻ§āĻžāĻ¨::", āĻ¯ā§āĻŽāĻ¨ "STDOUT", "ARGV", āĻāĻ° āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ āĻ°ā§āĻāĻ¨ āĻāĻ°ā§
"ENV", āĻāĻŦāĻ āĻŦāĻŋāĻ°āĻžāĻŽ āĻāĻŋāĻšā§āĻ¨ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĨ¤
āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻŦāĻŋāĻŦā§āĻ¤āĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĄāĻžāĻ¯āĻŧāĻ¨āĻžāĻŽāĻŋāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°ā§, āĻāĻĒāĻ¨āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¸āĻš
"āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ" āĻāĻžāĻ˛ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¨āĻž āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ-āĻ¸ā§āĻā§āĻĒāĻĄ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛, āĻ¯āĻž "my", "state" āĻĻāĻŋāĻ¯āĻŧā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻŦāĻž "āĻāĻŽāĻžāĻĻā§āĻ°"āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻāĻŋ "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨" āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻā§āĻˇāĻŖāĻž āĻšāĻŦā§
āĻŦāĻž "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨"āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻžāĻ§āĻŋāĻ āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻ¸ā§āĻ¯ā§āĻāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ°
āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ° āĻ¸ā§āĻ āĻŦā§āĻ˛āĻā§āĻ° āĻŦāĻžāĻāĻŋ āĻ āĻāĻļā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ¨ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻĒā§āĻ°āĻ¤ā§āĻ āĻā§āĻŦāĻŋāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻāĻžāĻĄāĻŧāĻž āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻāĻĒāĻ¸āĻ°ā§āĻ āĻĻāĻŋāĻ¯āĻŧā§
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻ¨āĻžāĻŽ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻĄāĻŦāĻ˛ āĻā§āĻ˛āĻ¨ āĻ¸āĻš āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ $SomePack::var āĻŦāĻž
"ThatPack::INPUT_HANDLE"āĨ¤ āĻ¯āĻĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻ¨āĻžāĻŽ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ "āĻĒā§āĻ°āĻ§āĻžāĻ¨" āĻĒā§āĻ¯āĻžāĻā§āĻāĨ¤
āĻ āĻ°ā§āĻĨāĻžā§, $::āĻĒāĻžāĻ˛ āĻšāĻ˛ $main::sail āĻāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ (āĻĒāĻžāĻļāĻžāĻĒāĻžāĻļāĻŋ "$main'sail), āĻāĻāĻ¨āĻ āĻĻā§āĻāĻž āĻ¯āĻžāĻ¯āĻŧ
āĻĒā§āĻ°āĻžāĻā§āĻ¨ āĻā§āĻĄā§, āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻĒāĻžāĻ°ā§āĻ˛ 4 āĻĨā§āĻā§)āĨ¤
VERSION āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ˛ā§, "āĻĒā§āĻ¯āĻžāĻā§āĻ" āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¨āĻžāĻŽāĻ¸ā§āĻĨāĻžāĻ¨ā§ $VERSION āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¸ā§āĻ āĻāĻ°ā§
āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ VERSION āĻ¸āĻš āĻāĻāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ āĻŦāĻā§āĻā§āĻāĨ¤ VERSION āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻāĻŋ "āĻāĻ ā§āĻ°" āĻļā§āĻ˛ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻšāĻ¤ā§ āĻšāĻŦā§ā§ˇ
āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŽāĻĄāĻŋāĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¸āĻāĻā§āĻ¯āĻž: āĻāĻāĻāĻŋ āĻ§āĻ¨āĻžāĻ¤ā§āĻŽāĻ āĻĻāĻļāĻŽāĻŋāĻ āĻ¸āĻāĻā§āĻ¯āĻž (āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻŦāĻž
āĻĻāĻļāĻŽāĻŋāĻ-āĻāĻā§āĻ¨āĻžāĻāĻļ) āĻ¸ā§āĻāĻ āĻāĻžāĻĄāĻŧāĻžāĻ āĻ āĻĨāĻŦāĻž āĻāĻāĻāĻŋ āĻĄāĻā§āĻĄ-āĻĄā§āĻ¸āĻŋāĻŽā§āĻ˛ v-āĻ¸ā§āĻā§āĻ°āĻŋāĻ
āĻ āĻā§āĻ°āĻŖā§ 'v' āĻ āĻā§āĻˇāĻ° āĻāĻŦāĻ āĻāĻŽāĻĒāĻā§āĻˇā§ āĻ¤āĻŋāĻ¨āĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° $VERSION āĻ¸ā§āĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤
āĻĒā§āĻ°āĻ¤āĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻāĻāĻŦāĻžāĻ°āĨ¤
āĻĒā§āĻ¯āĻžāĻā§āĻ, āĻŽāĻĄāĻŋāĻāĻ˛ āĻāĻŦāĻ āĻā§āĻ˛āĻžāĻ¸ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ perlmod-āĻ "āĻĒā§āĻ¯āĻžāĻā§āĻ" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¸ā§āĻā§āĻĒāĻŋāĻ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlsub āĻĻā§āĻā§āĻ¨āĨ¤
__āĻĒā§āĻ¯āĻžāĻā§āĻ__
āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻā§āĻā§āĻ¨ āĻ¯āĻž āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻ¨āĻžāĻŽ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻāĻŋ āĻāĻā§āĨ¤
āĻĒāĻžāĻāĻĒ READHANDLE, WRITEHANDLE
āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ā§āĻ° āĻŽāĻ¤ā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻĒāĻžāĻāĻĒā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻĄāĻŧāĻž āĻā§āĻ˛ā§āĨ¤ āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ
āĻĒāĻžāĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ˛ā§āĻĒ āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°ā§āĻ¨, āĻāĻĒāĻ¨āĻŋ āĻā§āĻŦ āĻ¸āĻ¤āĻ°ā§āĻ āĻ¨āĻž āĻšāĻ˛ā§ āĻ āĻāĻ˛āĻžāĻŦāĻ¸ā§āĻĨāĻž āĻāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻŋāĻ¤āĻ°ā§
āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻĒāĻžāĻāĻĒāĻā§āĻ˛āĻŋ IO āĻŦāĻžāĻĢāĻžāĻ°āĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§, āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻžāĻā§ $| āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻ¨āĻŋāĻˇā§āĻ āĻ°ā§āĻĒā§
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻĒāĻ°ā§ āĻāĻĒāĻ¨āĻžāĻ° WRITEHANDLE, āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§āĨ¤
āĻ¸āĻĢāĻ˛āĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ¸āĻ¤ā§āĻ¯ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĨ¤
āĻĻā§āĻā§āĻ¨ IPC::Open2, IPC::Open3, āĻāĻŦāĻ "āĻ āĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ¸āĻžāĻĨā§ āĻĻā§āĻŦāĻŋāĻŽā§āĻā§ āĻ¯ā§āĻāĻžāĻ¯ā§āĻ"
āĻ¯ā§āĻŽāĻ¨ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻāĻ¨ā§āĻ¯ perlipc.
āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻā§āĻ˛ā§āĻ-āĻ āĻ¨-āĻāĻā§āĻ¸ā§āĻ āĻĒāĻ¤āĻžāĻāĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨āĻāĻžāĻ°ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻ¤ā§, āĻ¸ā§āĻ āĻĒāĻ¤āĻžāĻāĻžāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨āĻāĻžāĻŦā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻā§āĻ˛āĻž āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§ āĻ¯āĻžāĻ° "fileno" āĻšāĻ¯āĻŧ āĻāĻ°ā§āĻ§ā§āĻŦāĻ¤āĻ¨ $^F āĻāĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŽāĻžāĻ¨ā§āĻ° āĻā§āĻ¯āĻŧā§ (āĻĻā§āĻŦāĻžāĻ°āĻž
"STDERR" āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻŋāĻĢāĻ˛ā§āĻ 2)āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§ "$^F" āĻĻā§āĻā§āĻ¨āĨ¤
āĻĒāĻĒ āĻ ā§āĻ¯āĻžāĻ°ā§
āĻĒāĻĒ EXPR
āĻĒāĻĒ āĻĒāĻĒ āĻāĻ°ā§ āĻāĻŦāĻ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻļā§āĻˇ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻ ā§āĻ¯āĻžāĻ°ā§āĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻā§āĻ āĻāĻ°ā§āĨ¤
āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻžāĻ˛āĻŋ āĻĨāĻžāĻāĻ˛ā§ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻ¯āĻĻāĻŋāĻ āĻāĻāĻŋ āĻāĻ āĻāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ āĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¯āĻŧ āĻ¯āĻĻāĻŋ ARRAY āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻŽā§āĻ˛ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§ @ARGV āĻ ā§āĻ¯āĻžāĻ°ā§ āĻĒāĻĒ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§
@_ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§ āĻ ā§āĻ¯āĻžāĻ°ā§, āĻ āĻŋāĻ "āĻļāĻŋāĻĢāĻ" āĻāĻ° āĻŽāĻ¤ā§āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, "āĻĒāĻĒ" āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° EXPR āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻ āĻā§āĻ¤āĻā§āĻ āĻ ā§āĻ¯āĻžāĻ°ā§āĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ dereferenced āĻāĻ°āĻž āĻšāĻŦā§. āĻāĻ āĻĻāĻŋāĻ
"āĻĒāĻĒ" āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻ āĻŋāĻ āĻāĻāĻ°āĻŖ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĨ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ¯āĻžāĻ°āĻž āĻāĻ° āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻžāĻā§āĻā§
āĻ°āĻšāĻ¸ā§āĻ¯āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻš āĻĒāĻžāĻ°ā§āĻ˛, āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ°āĻžāĻā§āĻ¨
āĻ¸āĻāĻā§āĻ¤ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻā§āĻŦāĻ˛ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻāĻŋāĻ¨ā§āĻā§āĻā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻ¸-āĻ:
5.014 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻ¸ā§āĻā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§ āĻĒā§āĻļ/āĻĒāĻĒ/āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻāĻžāĻ āĻāĻ°ā§ (āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ)
pos SCALAR
pos āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻļā§āĻˇ "m//g" āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨āĻāĻŋ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻā§āĻĄāĻŧā§ āĻā§āĻā§ āĻ¤āĻžāĻ° āĻ āĻĢāĻ¸ā§āĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ā§ˇ
āĻĒā§āĻ°āĻļā§āĻ¨ ($_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻāĻ¨ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž)āĨ¤ āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ 0 āĻāĻāĻāĻŋ āĻŦā§āĻ§
āĻŽā§āĻ¯āĻžāĻ āĻ āĻĢāĻ¸ā§āĻ "undef" āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻ¯ā§ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ° āĻāĻžāĻ°āĻŖā§
āĻŽā§āĻ¯āĻžāĻ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻžāĻ°āĻŖ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§ āĻāĻāĻ¨āĻ āĻā§āĻ¨ā§ āĻŽā§āĻ¯āĻžāĻ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻšāĻ¯āĻŧāĻ¨āĻŋ)āĨ¤
"pos" āĻ āĻĢāĻ¸ā§āĻ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ regexp āĻāĻā§āĻāĻŋāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°ā§, āĻ¤āĻžāĻ
"pos" āĻā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻ¸ā§āĻ āĻ āĻĢāĻ¸ā§āĻāĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻŦā§, āĻāĻŦāĻ āĻ¤āĻžāĻ "\G" āĻļā§āĻ¨ā§āĻ¯āĻā§āĻ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°āĻŦā§-
āĻ°ā§āĻā§āĻ˛āĻžāĻ° āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ā§ āĻĒā§āĻ°āĻ¸ā§āĻĨā§āĻ° āĻĻāĻžāĻŦā§āĨ¤ āĻāĻ āĻāĻāĻ¯āĻŧ āĻĒā§āĻ°āĻāĻžāĻŦ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻ¨ā§āĻ¯ āĻ¸āĻā§āĻāĻžāĻ˛āĻŋāĻ¤ āĻšāĻ¯āĻŧ
āĻŽā§āĻ¯āĻžāĻ, āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŽā§āĻ¯āĻžāĻā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ "pos" āĻĻāĻŋāĻ¯āĻŧā§ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨āĻā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž, āĻ¯ā§āĻŽāĻ¨
"(?{pos() = 5})" āĻŦāĻž "s//pos() = 5/e"-āĻ
"pos" āĻ¸ā§āĻ āĻāĻ°āĻžāĻ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§ āĻŽāĻŋāĻ˛ā§āĻā§ āĻ¸āĻā§āĻā§ āĻļā§āĻ¨ā§āĻ¯-āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻĒāĻ¤āĻžāĻāĻž, "āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤" āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤
āĻāĻāĻāĻŋ āĻāĻŋāĻ°ā§-āĻ˛ā§āĻāĻĨ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻ˛ā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻž āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨āĻ¸" perlre-āĻāĨ¤
āĻāĻžāĻ°āĻŖ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ°ā§āĻĨ "m//gc" āĻŽā§āĻ¯āĻžāĻ āĻ āĻĢāĻ¸ā§āĻ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§ āĻ¨āĻž, "pos" āĻĨā§āĻā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻšāĻŦā§ āĻ¨āĻž
āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻšāĻ¯āĻŧ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨āĨ¤ perlre āĻāĻŦāĻ perlop āĻĻā§āĻā§āĻ¨.
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨
FILEHANDLE āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽā§āĻĻā§āĻ°āĻŖ āĻāĻ°ā§āĻ¨
āĻāĻžāĻĒāĻžāĻ¨ā§
āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŦāĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĨ¤ āĻ¸āĻĢāĻ˛ āĻšāĻ˛ā§ āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ FILEHANDLE āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻāĻžāĻŦā§ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻŦāĻž āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ§āĻžāĻ°āĻŖāĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛
āĻĒāĻ°ā§āĻā§āĻˇ āĻāĻ āĻ¸ā§āĻ¤āĻ°ā§āĻ° āĻĒā§āĻ°āĻŦāĻ°ā§āĻ¤āĻ¨. (āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: āĻ¯āĻĻāĻŋ FILEHANDLE āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§
āĻā§āĻā§āĻ¨ āĻāĻāĻāĻŋ āĻļāĻŦā§āĻĻ, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻā§āĻ˛ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ "+" āĻŦāĻž
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻāĻžāĻ°āĻĒāĻžāĻļā§ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻ°āĻžāĻā§āĻ¨āĨ¤) āĻ¯āĻĻāĻŋ FILEHANDLE āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻļā§āĻˇ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§
āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻŋāĻ¤ ("āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨" āĻĻā§āĻā§āĻ¨) āĻāĻāĻāĻĒā§āĻ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĨ¤ āĻ¯āĻĻāĻŋ LIST āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§
āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻŋāĻ¤ āĻāĻāĻāĻĒā§āĻ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĨ¤ $_ āĻāĻ° āĻ¸āĻžāĻŽāĻā§āĻ°ā§ āĻŽā§āĻĻā§āĻ°āĻŖ āĻāĻ°āĻ¤ā§ FILEHANDLE āĻāĻāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§, āĻāĻĒāĻ¨āĻŋ
"FH" āĻāĻ° āĻŽāĻ¤ āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, $fh āĻāĻ° āĻŽāĻ¤ āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇ āĻ¨āĻ¯āĻŧāĨ¤ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§
STDOUT āĻāĻžāĻĄāĻŧāĻž āĻ āĻ¨ā§āĻ¯ āĻāĻŋāĻā§āĻ¤ā§ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻāĻāĻāĻĒā§āĻ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
$ āĻāĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŽāĻžāĻ¨, (āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§) āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻāĻā§āĻŽā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŽā§āĻĻā§āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŽāĻžāĻ¨
āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽā§āĻĻā§āĻ°āĻŋāĻ¤ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§ "$\" (āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§) āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻžāĻ°āĻŖ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ
āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ˛āĻžāĻā§, āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻ¯ā§āĻā§āĻ¨ā§ āĻāĻŋāĻā§āĻā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯ā§ āĻā§āĻ¨ā§āĻāĻŋ āĻ¸āĻš
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ¯āĻžāĻ° āĻĢāĻŋāĻ°āĻ¤āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻĒāĻ¨āĻŋ "āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ" āĻ āĻĒāĻžāĻ¸ āĻāĻ°ā§āĻ¨āĨ¤ āĻ āĻ¨ā§āĻ¸āĻ°āĻŖ āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ¤āĻ°ā§āĻ āĻĨāĻžāĻā§āĻ¨
āĻāĻāĻāĻŋ āĻŦāĻžāĻŽ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻĻāĻŋāĻ¯āĻŧā§ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻāĻĒāĻ¨āĻŋ āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻĄāĻžāĻ¨āĻāĻŋ āĻāĻžāĻ¨
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻļā§āĻˇ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ¨ā§āĻ§āĻ¨ā§; āĻāĻžāĻ°āĻĒāĻžāĻļā§ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻ°āĻžāĻā§āĻ¨
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ (āĻ āĻĨāĻŦāĻž āĻāĻāĻāĻŋ "+" āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ āĻāĻ°ā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻĻā§āĻāĻ¤ā§ āĻāĻžāĻ˛ āĻ¨āĻ¯āĻŧ)āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻŦāĻž āĻšā§āĻ¯āĻžāĻļā§ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻā§āĻ˛āĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻ¨, āĻŦāĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§ āĻ¯āĻāĻ¨āĻ āĻāĻĒāĻ¨āĻŋ āĻā§āĻ¨āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻā§āĻ¨
āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻŦāĻž āĻāĻāĻāĻŋ āĻ¸āĻ°āĻ˛, āĻāĻ¨āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻāĻĄ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻāĻāĻŋāĻ˛
āĻāĻāĻŋ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛, āĻāĻĒāĻ¨āĻžāĻā§ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻ¯ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ { $files[$i] } "āĻ¸āĻžāĻŽāĻā§āĻ°ā§\n";
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ { $āĻ āĻŋāĻ āĻāĻā§? STDOUT : STDERR } "āĻ¸ā§āĻāĻžāĻĢ\n";
āĻāĻāĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻĒāĻžāĻāĻĒ āĻŦāĻž āĻ¸āĻā§āĻā§ āĻŽā§āĻĻā§āĻ°āĻŖ āĻāĻāĻāĻŋ SIGPIPE āĻ¸āĻāĻā§āĻ¤ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§ā§ˇ āĻāĻ¨ā§āĻ¯ perlipc āĻĻā§āĻā§āĻ¨
āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻŋāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ
printf āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
printf FILEHANDLE
printf āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
printf,
"$\" (āĻāĻāĻāĻĒā§āĻ) āĻāĻžāĻĄāĻŧāĻž "āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ FILEHANDLE sprintf(FORMAT, LIST)" āĻāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯
āĻ°ā§āĻāĻ°ā§āĻĄ āĻŦāĻŋāĻāĻžāĻāĻ) āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻāĻŦāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻ¸āĻ˛ā§ āĻāĻāĻāĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĨ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻŋāĻā§ "printf" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻŦā§
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ "printf(@_)" āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ $_[0] āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĨ¤ āĻāĻ¨ā§āĻ¯ sprintf āĻĻā§āĻā§āĻ¨
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž. āĻ¯āĻĻāĻŋ "LC_NUMERIC" āĻāĻ° āĻāĻ¨ā§āĻ¯ "āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋ āĻā§āĻāĻā§āĻ¨
throught āĻĒāĻĄ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻŦāĻ POSIX::setlocale() āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻāĻ°āĻŋāĻ¤ā§āĻ°
āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻĻāĻļāĻŽāĻŋāĻ āĻŦāĻŋāĻāĻžāĻāĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻšāĻ¯āĻŧ
"LC_NUMERIC" āĻ˛ā§āĻā§āĻ˛ āĻ¸ā§āĻāĻŋāĻāĨ¤ perllocale āĻāĻŦāĻ POSIX āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻ¤āĻŋāĻšāĻžāĻ¸āĻŋāĻ āĻāĻžāĻ°āĻŖā§, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻŦāĻžāĻĻ āĻĻā§āĻ¨, $_ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ; āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž
āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻžāĻĄāĻŧāĻž FILEHANDLE, āĻāĻĒāĻ¨āĻžāĻā§ āĻ āĻŦāĻļā§āĻ¯āĻ "FH" āĻāĻ° āĻŽāĻ¤ā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇ āĻ¨āĻ¯āĻŧ
$fh āĻ˛āĻžāĻāĻ āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻāĻŋ āĻā§āĻŦ āĻāĻŽāĻ āĻāĻ°āĻŦā§ āĻ¯āĻž āĻāĻĒāĻ¨āĻŋ āĻāĻžāĻ¨; āĻ¯āĻĻāĻŋ $_ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻāĻŋāĻ āĻĨāĻžāĻā§
āĻā§āĻĄ, āĻ¤āĻžāĻ°āĻž āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĻāĻŋāĻ¯āĻŧā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻšāĻŦā§ āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻāĻ¤ āĻšāĻŦā§
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ $_ āĻāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻŽā§āĻĻā§āĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻļā§āĻ§ā§ "āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻāĻāĻŋ "printf" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĢāĻžāĻāĻĻā§ āĻĒāĻĄāĻŧāĻŦā§āĻ¨ āĻ¨āĻž āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ "āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ" āĻāĻ°āĻŦā§āĨ¤ āĻĻā§āĻ¯
"āĻŽā§āĻĻā§āĻ°āĻŖ" āĻāĻ°āĻ āĻĻāĻā§āĻˇ āĻāĻŦāĻ āĻāĻŽ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĒā§āĻ°āĻŦāĻŖāĨ¤
āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ āĻĢāĻžāĻāĻļāĻ¨
āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ
āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ (āĻŦāĻž "undef" āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ā§ āĻā§āĻ¨ āĻ¨āĻž āĻĨāĻžāĻā§
āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ)āĨ¤ FUNCTION āĻšāĻ˛ āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸, āĻŦāĻž āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻ¨āĻžāĻŽ, āĻ¯āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ
āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨āĨ¤ āĻ¯āĻĻāĻŋ FUNCTION āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻ¯āĻĻāĻŋ FUNCTION "CORE::" āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻŦāĻžāĻāĻŋāĻāĻŋ āĻāĻāĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ
āĻŦāĻŋāĻ˛ā§āĻāĻāĻ¨ āĻ¯āĻĻāĻŋ āĻŦāĻŋāĻ˛ā§āĻāĻŋāĻ¨ā§āĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ°ā§āĻ¯āĻžāĻĒā§āĻ¤āĻāĻžāĻŦā§ āĻĒā§āĻ°āĻāĻžāĻļ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž
(āĻ¯ā§āĻŽāĻ¨ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ"), āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ() "undef" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ, āĻāĻžāĻ°āĻŖ āĻŦāĻŋāĻ˛ā§āĻāĻāĻ¨ āĻāĻ¸āĻ˛ā§ āĻ¤āĻž āĻāĻ°ā§ āĻ¨āĻž
āĻāĻāĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ āĻĢāĻžāĻāĻļāĻ¨ āĻŽāĻ¤ āĻāĻāĻ°āĻŖ. āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻ
āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤
āĻ ā§āĻ¯āĻžāĻ°ā§, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻļ āĻāĻ°ā§āĻ¨
āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻļ āĻāĻ°ā§āĻ¨
ARRAY-āĻāĻ° āĻļā§āĻˇā§ LIST-āĻāĻ° āĻŽāĻžāĻ¨ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§ ARRAY-āĻā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§āĨ¤ āĻĻā§āĻ¯
ARRAY āĻāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯ LIST āĻāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦā§āĻĻā§āĻ§āĻŋ āĻĒāĻžāĻ¯āĻŧāĨ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻ āĻĒā§āĻ°āĻāĻžāĻŦ āĻāĻā§
$value (LIST) āĻāĻ° āĻāĻ¨ā§āĻ¯ {
$ARRAY[++$#ARRAY] = $value;
}
āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ°ā§ āĻĻāĻā§āĻˇ. āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¸āĻŽā§āĻĒāĻ¨ā§āĻ¨ "āĻ§āĻžāĻā§āĻāĻž"āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, "āĻĒā§āĻļ" āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° EXPR āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻ āĻā§āĻ¤āĻā§āĻ āĻ ā§āĻ¯āĻžāĻ°ā§āĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ dereferenced āĻāĻ°āĻž āĻšāĻŦā§. āĻāĻ āĻĻāĻŋāĻ
"āĻ§āĻžāĻā§āĻāĻž" āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻ āĻŋāĻ āĻāĻāĻ°āĻŖ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĨ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ¯āĻžāĻ°āĻž āĻāĻ° āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻžāĻā§āĻā§
āĻ°āĻšāĻ¸ā§āĻ¯āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻš āĻĒāĻžāĻ°ā§āĻ˛, āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ°āĻžāĻā§āĻ¨
āĻ¸āĻāĻā§āĻ¤ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻā§āĻŦāĻ˛ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻāĻŋāĻ¨ā§āĻā§āĻā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻ¸-āĻ:
5.014 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻ¸ā§āĻā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§ āĻĒā§āĻļ/āĻĒāĻĒ/āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻāĻžāĻ āĻāĻ°ā§ (āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ)
q/STRING/
qq/STRING/
qw/STRING/
qx/STRING/
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻĻā§āĻ§ā§āĻ¤āĻŋāĨ¤ perlop āĻ "āĻā§āĻ-āĻ˛āĻžāĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°" āĻĻā§āĻā§āĻ¨āĨ¤
qr/STRING/
Regexp-āĻāĻ° āĻŽāĻ¤ā§ āĻāĻĻā§āĻ§ā§āĻ¤āĻŋāĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻĒā§ "Regexp āĻā§āĻ-āĻ˛āĻžāĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°" āĻĻā§āĻā§āĻ¨āĨ¤
quotemeta EXPR
āĻāĻĻā§āĻ§ā§āĻ¤āĻŋ
āĻ¸āĻŽāĻ¸ā§āĻ¤ ASCII āĻ¨āĻ¨-"āĻļāĻŦā§āĻĻ" āĻ āĻā§āĻˇāĻ° āĻŦā§āĻ¯āĻžāĻāĻ¸ā§āĻ˛ā§āĻ¯āĻžāĻļ āĻ¸āĻš EXPR āĻāĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ā§ˇ (āĻāĻāĻž
āĻšāĻ˛, āĻ¸āĻŽāĻ¸ā§āĻ¤ ASCII āĻ āĻā§āĻˇāĻ° āĻŽā§āĻ˛ā§ āĻ¨āĻž "/[A-Za-z_0-9]/" āĻāĻ° āĻāĻā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻžāĻāĻ¸ā§āĻ˛ā§āĻ¯āĻžāĻļ āĻĨāĻžāĻāĻŦā§
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ¸ā§āĻā§āĻ°āĻŋāĻ-āĻ, āĻā§āĻ¨ā§ āĻ˛ā§āĻā§āĻ˛ āĻ¸ā§āĻāĻŋāĻāĻ¸ āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻļā§āĻˇā§āĨ¤) āĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ
āĻĄāĻŦāĻ˛-āĻāĻĻā§āĻ§ā§āĻ¤ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ¤ā§ "\Q" āĻāĻ¸ā§āĻā§āĻĒ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻĢāĻžāĻāĻļāĻ¨āĨ¤ (āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨ā§āĻā§ āĻĻā§āĻā§āĻ¨
āĻ¨āĻ¨-ASCII āĻā§āĻĄ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻā§ āĻāĻāĻ°āĻŖāĨ¤)
āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻā§āĻāĻŽā§āĻāĻž (āĻāĻŦāĻ "\Q" ... "\E") āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻā§ āĻ°ā§āĻā§āĻ˛āĻžāĻ°ā§ āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ˛ā§āĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĻāĻ°āĻāĻžāĻ°ā§
āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨, āĻāĻžāĻ°āĻŖ āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻāĻžāĻ°āĻĒā§āĻ˛ā§āĻā§āĻĄ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻāĻāĻŋ āĻŽāĻŋāĻ¨āĻŋ-
āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
my $sentence = 'āĻĻā§āĻ°ā§āĻ¤ āĻŦāĻžāĻĻāĻžāĻŽā§ āĻļāĻŋāĻ¯āĻŧāĻžāĻ˛ āĻ āĻ˛āĻ¸ āĻā§āĻā§āĻ°ā§āĻ° āĻāĻĒāĻ° āĻāĻžāĻāĻĒāĻŋāĻ¯āĻŧā§ āĻĒāĻĄāĻŧāĻ˛';
my $substring = 'āĻĻā§āĻ°ā§āĻ¤āĨ¤*?fox';
$sentence =~ s{$substring}{big bad wolf};
$āĻŦāĻžāĻā§āĻ¯āĻāĻŋ āĻĒāĻ°āĻŋāĻŖāĻ¤ āĻšāĻŦā§ 'The big bad wolf jumped over...'.
āĻ āĻ¨ā§āĻ¯ āĻĻāĻŋāĻā§:
my $sentence = 'āĻĻā§āĻ°ā§āĻ¤ āĻŦāĻžāĻĻāĻžāĻŽā§ āĻļāĻŋāĻ¯āĻŧāĻžāĻ˛ āĻ āĻ˛āĻ¸ āĻā§āĻā§āĻ°ā§āĻ° āĻāĻĒāĻ° āĻāĻžāĻāĻĒāĻŋāĻ¯āĻŧā§ āĻĒāĻĄāĻŧāĻ˛';
my $substring = 'āĻĻā§āĻ°ā§āĻ¤āĨ¤*?fox';
$sentence =~ s{\Q$substring\E}{big bad wolf};
āĻ¸ā§āĻŦāĻ°ā§āĻŖ:
my $sentence = 'āĻĻā§āĻ°ā§āĻ¤ āĻŦāĻžāĻĻāĻžāĻŽā§ āĻļāĻŋāĻ¯āĻŧāĻžāĻ˛ āĻ āĻ˛āĻ¸ āĻā§āĻā§āĻ°ā§āĻ° āĻāĻĒāĻ° āĻāĻžāĻāĻĒāĻŋāĻ¯āĻŧā§ āĻĒāĻĄāĻŧāĻ˛';
my $substring = 'āĻĻā§āĻ°ā§āĻ¤āĨ¤*?fox';
āĻāĻŽāĻžāĻ° $quoted_substring = quotemeta($substring);
$sentence =~ s{$quoted_substring}{big bad wolf};
āĻāĻāĻ¯āĻŧāĻ āĻŦāĻžāĻā§āĻ¯āĻāĻŋāĻā§ āĻ¯āĻĨāĻžāĻ°ā§āĻ¤āĻŋ āĻ°ā§āĻā§ āĻĻā§āĻŦā§āĻ¨āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤, āĻāĻā§āĻˇāĻ°āĻŋāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ¨āĻĒā§āĻ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻžāĻ āĻĨā§āĻā§, āĻāĻĻā§āĻ§ā§āĻ¤āĻŋ () āĻ āĻĨāĻŦāĻž "\Q" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ v5.14-āĻ, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ -ASCII āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋ āĻ¨āĻ¨-UTF-8-āĻāĻ¨āĻā§āĻĄā§āĻĄ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§
UTF-8 āĻ¸ā§āĻā§āĻ°āĻŋāĻ-āĻ āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋāĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ v5.16 āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, āĻĒāĻžāĻ°ā§āĻ˛ āĻ -ASCII āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻāĻ¨āĻŋāĻā§āĻĄ-āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻā§āĻļāĻ˛ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĻā§
āĻāĻ°āĻŋāĻ¤ā§āĻ°; ASCII āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻĻā§āĻ§ā§āĻ¤āĻŋ āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤āĨ¤
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻĨāĻžāĻā§ āĻ¨āĻ¨-UTF-8 āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ° āĻāĻĻā§āĻ§ā§āĻ¤āĻŋ āĻ¯āĻāĻ¨ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻĨāĻžāĻā§
āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ 'āĻāĻāĻ¨āĻŋāĻā§āĻĄ_āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¸'", āĻ¯āĻž āĻāĻĒāĻ°ā§āĻ° āĻ˛ā§āĻ¯āĻžāĻāĻŋāĻ¨ 1-āĻ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ āĻā§āĻˇāĻ° āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°ā§
āĻĒāĻ°āĻŋāĻ¸ā§āĻŽāĻž āĻāĻāĻŋ āĻĒā§āĻ°āĻžāĻ¨ā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻĒāĻŋāĻāĻ¨ā§āĻ° āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯āĻž āĻāĻ°ā§ āĻ¨āĻž
āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤ (āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ "āĻāĻāĻ¨āĻŋāĻā§āĻĄ_āĻ¸ā§āĻā§āĻ°āĻŋāĻ" āĻ¸ā§āĻā§āĻĒā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¯āĻŧ
āĻāĻāĻāĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° v5.12" āĻŦāĻž āĻ¤āĻžāĻ° āĻŦā§āĻļāĻŋāĨ¤)
"āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ˛ā§āĻā§āĻ˛" āĻāĻ° āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ -ASCII āĻ˛ā§āĻ¯āĻžāĻāĻŋāĻ¨ 1 āĻā§āĻĄ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŋāĻ¨āĻž
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ UTF-8 āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻ¨āĻā§āĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻŦāĻž āĻ¨āĻžāĨ¤ āĻāĻĒāĻ°ā§ āĻāĻ˛ā§āĻ˛āĻŋāĻāĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻ˛ā§āĻā§āĻ˛ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°ā§ āĻ¨āĻž
ASCII-āĻ°ā§āĻā§āĻ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻĻā§āĻ§ā§āĻ¤āĻŋāĨ¤ āĻāĻ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ¯āĻžāĻ°āĻž āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧāĻĻā§āĻ° āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§ āĻ°āĻā§āĻˇāĻž āĻāĻ°ā§
āĻ āĻā§āĻˇāĻ° āĻ¯ā§āĻŽāĻ¨ "|" āĻļāĻŦā§āĻĻ āĻ āĻā§āĻˇāĻ° āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ.
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻ¯ā§āĻāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ -ASCII āĻ āĻā§āĻˇāĻ° āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°ā§ (āĻĻā§āĻā§āĻ¨
<http://www.unicode.org/reports/tr31/>)āĨ¤ āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻā§āĻĄ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻšāĻ¯āĻŧ
āĻ¯āĻžāĻĻā§āĻ° āĻā§āĻ¨ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻā§: Pattern_Syntax, Pattern_White_Space,
White_Space, Default_Ignorable_Code_Point, or General_Category=Control.
āĻāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§, āĻĻā§āĻāĻŋ āĻā§āĻ°ā§āĻ¤ā§āĻŦāĻĒā§āĻ°ā§āĻŖ āĻšāĻ˛ Pattern_Syntax āĻāĻŦāĻ
āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨_āĻšā§āĻ¯āĻŧāĻžāĻāĻ_āĻ¸ā§āĻĒā§āĻ¸āĨ¤ āĻ¤āĻžāĻ°āĻž āĻ āĻŋāĻ āĻāĻ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ā§ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸ā§āĻ āĻāĻĒ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻ°ā§āĻā§āĻ˛āĻžāĻ° āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ā§ āĻā§āĻ¨ āĻ āĻā§āĻˇāĻ° āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻžāĨ¤ āĻ¨āĻž
āĻāĻāĻāĻŋ āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§ āĻ āĻā§āĻˇāĻ° āĻāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻā§.
āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ āĻ¯ā§, āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻāĻāĻ¨ā§ āĻ°ā§āĻā§āĻ˛āĻžāĻ° āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻŽā§āĻāĻžāĻā§āĻ¯āĻžāĻ°ā§āĻā§āĻāĻžāĻ° āĻ¯ā§āĻ āĻāĻ°āĻŋ
āĻĄāĻāĻ¨ āĻāĻā§ āĻĨā§āĻā§āĻ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ ("\ | ( ) [ { ^ $ * + ?."), āĻ¯ā§ āĻāĻŽāĻ°āĻž āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦ āĻ¯ā§āĻā§āĻ˛āĻŋ
āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨_āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻā§āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋ, āĻ¯ā§ āĻ¯āĻĻāĻŋ āĻāĻŽāĻ°āĻž āĻāĻāĻ¨āĻ āĻ āĻā§āĻˇāĻ° āĻ¯ā§āĻ
āĻ¯ā§āĻā§āĻ˛ā§āĻā§ āĻ°ā§āĻā§āĻ˛āĻžāĻ° āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ā§ āĻ¸āĻžāĻĻāĻž āĻ¸ā§āĻĨāĻžāĻ¨ āĻšāĻŋāĻ¸ā§āĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ (āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻāĻ
"/x" āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤), āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻāĻ˛ā§āĻ°āĻ Pattern_White_Space āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋ āĻĨāĻžāĻāĻŦā§āĨ¤
āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻĒā§āĻ°āĻ¤āĻŋāĻļā§āĻ°ā§āĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ āĻ¯ā§ āĻāĻ āĻĻā§āĻāĻŋ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻ¯ā§āĻā§āĻ¤ āĻā§āĻĄ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻā§āĻ° āĻ¸ā§āĻ āĻāĻāĻ¨āĻ āĻšāĻŦā§ āĻ¨āĻž
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻ āĻāĻŽāĻ¨ āĻāĻŋāĻā§ āĻ¯āĻž v5.16-āĻ āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ āĻ¤āĻž āĻāĻāĻ¨āĻ āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻŦā§ āĻ¨āĻž
āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ°āĻŋāĻ˛āĻŋāĻāĨ¤ (āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨_āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§ āĻāĻŽāĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻĄ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻāĻ¸āĻ˛ā§ āĻ¨ā§āĻ
āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻā§āĻˇāĻ° āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻŋāĻ˛; āĻ¤āĻžāĻ āĻŦāĻžāĻĄāĻŧāĻ¤ā§ āĻāĻžāĻ¯āĻŧāĻāĻž āĻāĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻžāĻ°āĻž āĻāĻĻā§āĻ§ā§āĻ¤ āĻšāĻ¯āĻŧ āĻāĻŋāĻ¨āĻž
āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻšā§āĻ āĻŦāĻž āĻ¨āĻž āĻšā§āĻāĨ¤ āĻĒāĻžāĻ°ā§āĻ˛, āĻ āĻŦāĻļā§āĻ¯āĻ, āĻāĻāĻāĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ āĻāĻ¨āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨ āĻāĻ°āĻž āĻā§āĻĄ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§ āĻ¨āĻž
āĻĒā§āĻ°āĻā§āĻ¤ āĻ°ā§āĻĒāĻ āĻ āĻā§āĻˇāĻ°āĨ¤)
āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ 3āĻāĻŋ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻ°āĻ¯āĻŧā§āĻā§ āĻāĻŽāĻ¨ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻĻā§āĻ§ā§āĻ¤āĻŋ āĻĒāĻžāĻ āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻŦāĻžāĻĄāĻŧāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ°ā§āĻā§āĻ˛āĻžāĻ° āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻŦāĻ āĻ¨āĻž āĻāĻžāĻ°āĻŖ āĻ¤āĻžāĻĻā§āĻ° āĻāĻ¸āĻ˛ā§ āĻ°ā§āĻā§āĻ˛āĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĻā§āĻ§ā§āĻ¤ āĻāĻ°āĻž āĻĻāĻ°āĻāĻžāĻ°
āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ (āĻšā§āĻ¯āĻŧāĻžāĻāĻ_āĻ¸ā§āĻĒā§āĻ¸ āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋ āĻ¸āĻš āĻ āĻā§āĻˇāĻ° āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
Pattern_White_Space āĻāĻ° āĻĨā§āĻā§ āĻĒā§āĻˇā§āĻ āĻž āĻŦāĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻ¨ā§ āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž
āĻ¸āĻŽā§āĻĒāĻ¤ā§āĻ¤āĻŋ; āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯ āĻĻā§āĻāĻŋ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§ āĻ -āĻŽā§āĻĻā§āĻ°āĻŖ āĻ āĻā§āĻˇāĻ° āĻ°āĻ¯āĻŧā§āĻā§)āĨ¤
āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄ āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻ¸
āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄā§
0 āĻāĻ° āĻĨā§āĻā§ āĻŦāĻĄāĻŧ āĻŦāĻž āĻ¸āĻŽāĻžāĻ¨ āĻāĻŦāĻ āĻŽāĻžāĻ¨ā§āĻ° āĻĨā§āĻā§ āĻāĻŽ āĻāĻāĻāĻŋ āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻāĻā§āĻ¨āĻžāĻāĻļ āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
EXPR āĻāĻ°āĨ¤ (EXPR āĻāĻ¤āĻŋāĻŦāĻžāĻāĻ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤āĨ¤) āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻŽāĻžāĻ¨ 1 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ 0 āĻāĻ° āĻŽāĻžāĻ¨ āĻ¸āĻš EXPR āĻā§ 1 āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻļā§āĻˇ-āĻā§āĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ (āĻāĻāĻŋ āĻ¨āĻĨāĻŋāĻā§āĻā§āĻ¤ āĻāĻŋāĻ˛ āĻ¨āĻž
āĻĒāĻžāĻ°ā§āĻ˛ 5.8.0 āĻāĻ° āĻāĻā§ āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¸āĻžāĻĒā§āĻā§āĻˇā§)āĨ¤ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§
"srand" āĻāĻ˛ āĻāĻ°ā§ āĻ¯āĻĻāĻŋ āĻ¨āĻž "srand" āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§āĻ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§ āĻĨāĻžāĻā§āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ "srand" āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻāĻžāĻ¨ āĻ¤āĻŦā§ "rand()" āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§ "int()" āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§āĻ¨
āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻāĻā§āĻ¨āĻžāĻāĻļ āĻ¸āĻāĻā§āĻ¯āĻžāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ,
int(āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄā§(10))
0 āĻāĻŦāĻ 9 āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤āĨ¤
(āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄ āĻĢāĻžāĻāĻļāĻ¨ āĻ§āĻžāĻ°āĻžāĻŦāĻžāĻšāĻŋāĻāĻāĻžāĻŦā§ āĻā§āĻŦ āĻŦāĻĄāĻŧ āĻŦāĻž āĻā§āĻŦ āĻŦā§āĻļāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻā§āĻ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻāĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻā§āĻ˛ āĻ¸āĻāĻā§āĻ¯āĻž āĻĻāĻŋāĻ¯āĻŧā§ āĻ¸āĻāĻāĻ˛āĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛
āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŦāĻŋāĻāĻ¸āĨ¤)
"āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄ()" is āĻ¨āĻž āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻā§āĻ°āĻžāĻĢāĻŋāĻāĻāĻžāĻŦā§ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ. āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋāĻ¤ āĻ¨āĻž āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°āĻž on it in āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž-
āĻ¸āĻāĻŦā§āĻĻāĻ¨āĻļā§āĻ˛ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§āĨ¤ āĻāĻ āĻ˛ā§āĻāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤, āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻ¤ā§āĻ¤ā§āĻ¯āĻŧ āĻĒāĻā§āĻˇā§āĻ° CPAN āĻŽāĻĄāĻŋāĻāĻ˛ āĻ āĻĢāĻžāĻ° āĻāĻ°ā§
āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻ¸āĻāĻā§āĻ¯āĻž āĻā§āĻ¨āĻžāĻ°ā§āĻāĻ° āĻ¤āĻžāĻĻā§āĻ° āĻ˛ā§āĻāĻāĻĻā§āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻā§āĻ°āĻžāĻĢāĻŋāĻāĻāĻžāĻŦā§ āĻ¸ā§āĻ°āĻā§āĻˇāĻŋāĻ¤,
āĻ¸āĻš: āĻĄā§āĻāĻž::āĻāĻ¨āĻā§āĻ°āĻĒāĻŋ, āĻā§āĻ°āĻŋāĻĒā§āĻ:: āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ, āĻŽā§āĻ¯āĻžāĻĨ:: āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ:: āĻ¸āĻŋāĻāĻŋāĻāĻ°, āĻāĻŦāĻ āĻŽā§āĻ¯āĻžāĻĨ:: āĻā§āĻ°ā§āĻ˛āĻŋ āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĨ¤
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻ āĻĢāĻ¸ā§āĻ āĻĒāĻĄāĻŧā§āĻ¨
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻĒāĻĄāĻŧā§āĻ¨
LENGTH āĻĒāĻĄāĻŧāĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻ āĻā§āĻˇāĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĨā§āĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ SCALAR-āĻ āĻĄā§āĻāĻž
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§ āĻĒāĻĄāĻŧāĻž āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇā§ 0, āĻŦāĻž
undef āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻāĻŋāĻ˛ (āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ $! āĻ¸ā§āĻ āĻāĻ°āĻž āĻāĻā§)āĨ¤ SCALAR āĻŦāĻĄāĻŧ āĻšāĻŦā§
āĻŦāĻž āĻ¸āĻā§āĻā§āĻāĻŋāĻ¤ āĻ¯āĻžāĻ¤ā§ āĻļā§āĻˇ āĻ āĻā§āĻˇāĻ°āĻāĻŋ āĻāĻ¸āĻ˛ā§ āĻĒāĻĄāĻŧāĻž āĻšāĻ¯āĻŧ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§āĻ° āĻļā§āĻˇ āĻ āĻā§āĻˇāĻ°
āĻĒāĻĄāĻŧāĻžāĻ° āĻĒāĻ°āĨ¤
āĻāĻāĻāĻŋ āĻ āĻĢāĻ¸ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻĒāĻ āĻŋāĻ¤ āĻĄā§āĻāĻžāĻā§ āĻ āĻ¨ā§āĻ¯ āĻ¸ā§āĻā§āĻ°āĻŋāĻ-āĻāĻ° āĻāĻŋāĻā§ āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ āĻ°āĻžāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯
āĻļā§āĻ°ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻļā§āĻˇ āĻĨā§āĻā§ āĻĒāĻŋāĻāĻ¨ā§āĻ° āĻĻāĻŋāĻā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻā§āĻā§āĨ¤ āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻŦāĻĄāĻŧ āĻāĻāĻāĻŋ āĻāĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ
SCALAR āĻāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻĢāĻ˛ā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋāĻā§ "\0" āĻĻāĻŋāĻ¯āĻŧā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻāĻāĻžāĻ°ā§ āĻĒā§āĻ¯āĻžāĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ°āĻŋāĻĄā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¯ā§āĻā§āĻ¤ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻā§ āĻŦāĻžāĻāĻāĨ¤
āĻāĻ˛āĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻŦāĻž āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ¨ā§āĻāĻŋāĻā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ fread(3)
āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻĢāĻžāĻāĻļāĻ¨āĨ¤ āĻāĻāĻāĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻĒā§āĻ¤ā§ āĻĒāĻĄāĻŧāĻž(2) āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛, sysread āĻĻā§āĻā§āĻ¨.
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ āĻā§āĻˇāĻ°: āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§, āĻšāĻ¯āĻŧ (8-āĻŦāĻŋāĻ) āĻŦāĻžāĻāĻ
āĻ āĻĨāĻŦāĻž āĻ āĻā§āĻˇāĻ° āĻĒāĻĄāĻŧāĻž āĻšāĻ¯āĻŧ. āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§, āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻŦāĻžāĻāĻā§ āĻāĻžāĻ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ
āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋ ":utf8" I/O āĻ˛ā§āĻ¯āĻŧāĻžāĻ° āĻĻāĻŋāĻ¯āĻŧā§ āĻā§āĻ˛āĻž āĻšāĻ¯āĻŧ (āĻĻā§āĻā§āĻ¨ "āĻā§āĻ˛āĻž", āĻāĻŦāĻ
"āĻāĻĒā§āĻ¨" āĻĒā§āĻ°āĻžāĻāĻŽāĻž, āĻāĻĒā§āĻ¨), I/O UTF8-āĻāĻ¨āĻā§āĻĄā§āĻĄ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻžāĻ āĻāĻ°āĻŦā§, āĻ¨āĻ¯āĻŧ
āĻŦāĻžāĻāĻ āĻāĻāĻāĻāĻžāĻŦā§ ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ" āĻĒā§āĻ°āĻžāĻāĻŽāĻžāĻ° āĻāĻ¨ā§āĻ¯: āĻ¸ā§āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻ¯ā§ āĻā§āĻ¨ā§ āĻ āĻā§āĻˇāĻ°
āĻĒāĻĄāĻŧāĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
readdir DIRHANDLE
"opendir" āĻĻā§āĻŦāĻžāĻ°āĻž āĻā§āĻ˛āĻž āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ˛ā§
āĻĒā§āĻ°āĻ¸āĻā§āĻ, āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŦāĻžāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻāĻ° āĻ¨āĻž āĻĨāĻžāĻā§
āĻāĻ¨ā§āĻā§āĻ°āĻŋ, āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻĒā§āĻ°āĻ¸āĻā§āĻ
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ "readdir" āĻĨā§āĻā§ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻāĻ˛ā§āĻĒāĻ¨āĻž āĻāĻ°āĻā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻ°āĻ āĻāĻžāĻ˛ āĻšāĻŦā§āĻ¨
āĻĒā§āĻ°āĻļā§āĻ¨ā§ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻāĻŋ āĻĒā§āĻ°āĻŋāĻĒā§āĻ¨ā§āĻĄ āĻāĻ°ā§āĻ¨āĨ¤ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, āĻāĻžāĻ°āĻŖ āĻāĻŽāĻ°āĻž āĻ¸ā§āĻāĻžāĻ¨ā§ "chdir" āĻāĻ°āĻŋāĻ¨āĻŋ, āĻāĻāĻŋ
āĻā§āĻ˛ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻŦā§.
opendir(āĻāĻŽāĻžāĻ° $dh, $some_dir) || die "Opendir $some_dir: $!";
@dots = grep { /^\./ && -f "$some_dir/$_" } readdir($dh);
āĻŦāĻ¨ā§āĻ§ $dh;
āĻĒāĻžāĻ°ā§āĻ˛ 5.12 āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ "āĻ¯āĻāĻ¨" āĻ˛ā§āĻĒā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŧāĻžāĻ° "āĻ°āĻŋāĻĄāĻĄāĻŋāĻ°" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻ¯āĻž $_ āĻāĻžāĻ˛ā§ āĻāĻ°āĻŦā§
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ
opendir(āĻāĻŽāĻžāĻ° $dh, $some_dir) || āĻŽāĻžāĻ°āĻž
āĻ¯āĻāĻ¨ (readdir $dh) {
"$some_dir/$_\n" āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨;
}
āĻŦāĻ¨ā§āĻ§ $dh;
āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ¯āĻžāĻ°āĻž āĻāĻ° āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻžāĻā§āĻā§
āĻ°āĻšāĻ¸ā§āĻ¯āĻŽāĻ¯āĻŧ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻĒāĻžāĻ°ā§āĻ˛, āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ āĻ§āĻ°āĻŖā§āĻ° āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ°āĻžāĻā§āĻ¨
āĻ¸āĻāĻā§āĻ¤ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻā§āĻŦāĻ˛ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻāĻŋāĻ¨ā§āĻā§āĻā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻ¸-āĻ:
5.012 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ readdir āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻžāĻā§ $_ āĻā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§
āĻ°āĻŋāĻĄāĻ˛āĻžāĻāĻ¨ āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°
āĻĒāĻ āĻ¨āĻ°ā§āĻāĻž
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĨā§āĻā§ āĻĒāĻĄāĻŧā§ āĻ¯āĻžāĻ° āĻāĻžāĻāĻĒāĻā§āĻ˛ā§āĻŦ EXPR-āĻ āĻ°āĻ¯āĻŧā§āĻā§ (āĻŦāĻž *ARGV āĻĨā§āĻā§ āĻ¯āĻĻāĻŋ EXPR
āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž)āĨ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻ˛ āĻĒāĻ°ā§āĻ° āĻ˛āĻžāĻāĻ¨āĻāĻŋ āĻĒāĻĄāĻŧā§ āĻāĻŦāĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻāĻ¨ā§āĻĄ-āĻ āĻĢ-āĻĢāĻžāĻāĻ˛ āĻĒā§āĻāĻā§ āĻā§āĻā§, āĻāĻ° āĻĒāĻ°ā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻ˛āĻāĻŋ "undef" āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ
āĻĒā§āĻ°āĻ¸āĻā§āĻ, āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻĄāĻŧāĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§
āĻāĻāĻžāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ "āĻ˛āĻžāĻāĻ¨" āĻāĻ° āĻ§āĻžāĻ°āĻŖāĻžāĻāĻŋ āĻāĻĒāĻ¨āĻŋ $/ āĻ āĻĨāĻŦāĻž āĻĻāĻŋāĻ¯āĻŧā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
$INPUT_RECORD_SEPARATOR)āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§ "$/" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¯āĻāĻ¨ $/ "undef" āĻ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻāĻ¨ "āĻ°āĻŋāĻĄāĻ˛āĻžāĻāĻ¨" āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻĨāĻžāĻā§ (āĻ¯ā§āĻŽāĻ¨, āĻĢāĻžāĻāĻ˛ āĻ¸ā§āĻ˛āĻžāĻ°ā§āĻĒ
āĻŽā§āĻĄ), āĻāĻŦāĻ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻĢāĻžāĻāĻ˛ āĻĒāĻĄāĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻāĻŋ 'āĻĒā§āĻ°āĻĨāĻŽāĻŦāĻžāĻ°, āĻ¤āĻžāĻ°āĻĒāĻ°ā§ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§
"undef" āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§āĻ¤ā§āĨ¤
āĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĢāĻžāĻāĻļāĻ¨ āĻ¯āĻž "" āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ "" āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ "I/O āĻ āĻĒāĻžāĻ°ā§āĻāĻ°"-āĻ āĻāĻ°āĻ āĻŦāĻŋāĻļāĻĻā§ āĻāĻ˛ā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ
perlop
$āĻ˛āĻžāĻāĻ¨ = ;
$āĻ˛āĻžāĻāĻ¨ = āĻ°āĻŋāĻĄāĻ˛āĻžāĻāĻ¨ (*STDIN); # āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸
āĻ¯āĻĻāĻŋ "āĻ°āĻŋāĻĄāĻ˛āĻžāĻāĻ¨" āĻāĻāĻāĻŋ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻ¸āĻŽā§āĻŽā§āĻā§āĻ¨ āĻšāĻ¯āĻŧ, $! āĻ¸āĻā§āĻā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻŦā§
āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĨ¤ āĻāĻāĻŋ $ āĻā§āĻ āĻāĻ°āĻ¤ā§ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§! āĻāĻĒāĻ¨āĻŋ āĻ¯āĻāĻ¨ āĻĨā§āĻā§ āĻĒāĻĄāĻŧāĻā§āĻ¨
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻ¯āĻž āĻāĻĒāĻ¨āĻŋ āĻŦāĻŋāĻļā§āĻŦāĻžāĻ¸ āĻāĻ°ā§āĻ¨ āĻ¨āĻž, āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻāĻŋ tty āĻŦāĻž āĻāĻāĻāĻŋ āĻ¸āĻā§āĻāĨ¤ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
"āĻ°āĻŋāĻĄāĻ˛āĻžāĻāĻ¨" āĻāĻ° āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻĢāĻ°ā§āĻŽ āĻāĻŦāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ˛ā§ āĻŽāĻžāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĨ¤
āĻ¯āĻāĻ¨ ( ! eof($fh) ) {
āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ ( $_ = ) āĻŦāĻž āĻĄāĻžāĻ "āĻ°āĻŋāĻĄāĻ˛āĻžāĻāĻ¨ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§āĻā§: $!";
...
}
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ "ARGV" āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ "āĻ°āĻŋāĻĄāĻ˛āĻžāĻāĻ¨" āĻ¤ā§āĻ°ā§āĻāĻŋāĻā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻžā§ˇ
āĻ¸ā§āĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻāĻĒāĻ¨āĻžāĻā§ @ARGV-āĻāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¨āĻŋāĻā§āĻ āĻā§āĻ˛āĻ¤ā§ āĻšāĻŦā§ āĻ¯ā§āĻšā§āĻ¤ā§ "eof" āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋ
"ARGV" āĻāĻŋāĻ¨ā§āĻ¨āĻāĻžāĻŦā§āĨ¤
āĻāĻŽāĻžāĻ° $arg (@ARGV) {
āĻā§āĻ˛ā§āĻ¨ (āĻāĻŽāĻžāĻ° $fh, $arg) āĻŦāĻž āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ "$arg āĻā§āĻ˛āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž: $!";
āĻ¯āĻāĻ¨ ( ! eof($fh) ) {
āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ ($_ = )
āĻ āĻĨāĻŦāĻž āĻĄāĻžāĻ "āĻ°āĻŋāĻĄāĻ˛āĻžāĻāĻ¨ $arg: $!" āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§āĻā§;
...
}
}
āĻ°āĻŋāĻĄāĻ˛āĻŋāĻāĻ EXPR
āĻ°āĻŋāĻĄāĻ˛āĻŋāĻāĻ
āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻ˛āĻŋāĻā§āĻā§āĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻ˛āĻŋāĻā§āĻāĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻ¨āĻž,
āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨. āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĨāĻžāĻā§, āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻāĻŦāĻ āĻ¸ā§āĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
$! (āĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ)āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ°āĻŋāĻĄāĻ˛āĻŋāĻāĻ"āĨ¤
āĻ°āĻŋāĻĄāĻĒāĻžāĻāĻĒ āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°
āĻ°āĻŋāĻĄāĻĒāĻžāĻāĻĒ
EXPR āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻŽāĻžāĻ¨ā§āĻĄā§āĻ° āĻ¸āĻāĻā§āĻšā§āĻ¤ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻāĻāĻāĻĒā§āĻ āĻšāĻ˛
āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĻā§ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§ (āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻŦāĻšā§-āĻ˛āĻžāĻāĻ¨)
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§, āĻ˛āĻžāĻāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ (āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻ˛āĻžāĻāĻ¨āĻā§āĻ˛āĻŋ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§āĻā§āĻ¨
$/ āĻ āĻĨāĻŦāĻž $INPUT_RECORD_SEPARATOR)āĨ¤ āĻāĻ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĢāĻžāĻāĻļāĻ¨ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨
"qx/EXPR/" āĻ āĻĒāĻžāĻ°ā§āĻāĻ°, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ "qx/EXPR/" āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻšāĻ˛
perlop-āĻ "I/O āĻ āĻĒāĻžāĻ°ā§āĻāĻ°"-āĻ āĻāĻ°āĻ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻ˛ā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
recv āĻ¸āĻā§āĻ, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻĒāĻ¤āĻžāĻāĻž
āĻāĻāĻāĻŋ āĻ¸āĻā§āĻā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§āĨ¤ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĄā§āĻāĻžāĻ° LENGTH āĻ āĻā§āĻˇāĻ° āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻā§āĻˇā§āĻāĻž
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻā§āĻ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĨā§āĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ SCALARāĨ¤ SCALAR āĻŦāĻĄāĻŧ āĻŦāĻž āĻ¸āĻā§āĻā§āĻāĻŋāĻ¤ āĻšāĻŦā§
āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻāĻ¸āĻ˛ā§ āĻĒāĻĄāĻŧāĻž. āĻāĻāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻ āĻĒāĻ¤āĻžāĻāĻž āĻ˛āĻžāĻā§
āĻ¨āĻžāĻŽ āĻ¯āĻĻāĻŋ SOCKET āĻāĻ° āĻĒā§āĻ°ā§āĻā§āĻāĻ˛ āĻāĻāĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¤āĻŦā§ āĻĒā§āĻ°ā§āĻ°āĻā§āĻ° āĻ āĻŋāĻāĻžāĻ¨āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ; āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĨ¤ āĻā§āĻ¨ā§ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĨāĻžāĻāĻ˛ā§, āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻ
āĻāĻ˛ āĻāĻ¸āĻ˛ā§ āĻĒāĻ°āĻŋāĻĒā§āĻ°ā§āĻā§āĻˇāĻŋāĻ¤ā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻĨā§āĻā§ recv(2) āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛āĨ¤ "UDP: āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĻā§āĻā§āĻ¨
āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ perlipc-āĻ āĻĒāĻžāĻ¸āĻŋāĻ"āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ āĻā§āĻˇāĻ°: āĻ¸āĻā§āĻā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§, āĻšāĻ¯āĻŧ (8-āĻŦāĻŋāĻ) āĻŦāĻžāĻāĻ āĻŦāĻž
āĻ āĻā§āĻˇāĻ° āĻā§āĻšā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻā§āĻ āĻŦāĻžāĻāĻā§ āĻāĻžāĻ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ āĻ¯āĻĻāĻŋ
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻā§āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻŦāĻŋāĻ¨āĻŽā§āĻĄ() ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ(utf8)" I/O āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°āĻ¤ā§
āĻ¸ā§āĻ¤āĻ° ("āĻāĻĒā§āĻ¨" āĻĒā§āĻ°ā§āĻ¯āĻžāĻāĻŽāĻž āĻĻā§āĻā§āĻ¨, āĻā§āĻ˛āĻž), I/O UTF8-āĻāĻ¨āĻā§āĻĄā§āĻĄ āĻāĻāĻ¨āĻŋāĻā§āĻĄā§ āĻāĻžāĻ āĻāĻ°āĻŦā§
āĻ āĻā§āĻˇāĻ°, āĻŦāĻžāĻāĻ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻāĻāĻāĻžāĻŦā§ ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ" pragma āĻāĻ° āĻāĻ¨ā§āĻ¯: āĻ¸ā§āĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻŽā§āĻāĻžāĻŽā§āĻāĻŋ
āĻā§āĻ¨ āĻ āĻā§āĻˇāĻ° āĻĒāĻĄāĻŧāĻž āĻ¯āĻžāĻŦā§.
LABEL āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨
āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ° āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨
āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°āĻž
"āĻ°āĻŋāĻĄā§" āĻāĻŽāĻžāĻ¨ā§āĻĄāĻāĻŋ āĻāĻŦāĻžāĻ° āĻļāĻ°ā§āĻ¤āĻ¸āĻžāĻĒā§āĻā§āĻˇ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻ¨āĻž āĻāĻ°ā§ āĻ˛ā§āĻĒ āĻŦā§āĻ˛āĻ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°ā§āĨ¤
"āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻŦā§āĻ˛āĻ, āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§, āĻ¤āĻž āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻ¯āĻĻāĻŋ LABEL āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻŽāĻžāĻ¨ā§āĻĄ
āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻŋāĻ¤āĻ°ā§āĻ° āĻā§āĻ°āĻž āĻ˛ā§āĻĒ āĻŦā§āĻāĻžāĻ¯āĻŧāĨ¤ "āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨ EXPR" āĻĢāĻ°ā§āĻŽ, āĻļā§āĻ°ā§ āĻĨā§āĻā§ āĻāĻĒāĻ˛āĻŦā§āĻ§ā§ˇ
āĻĒāĻžāĻ°ā§āĻ˛ 5.18.0, āĻ°āĻžāĻ¨ āĻāĻžāĻāĻŽā§ āĻāĻāĻāĻŋ āĻ˛ā§āĻŦā§āĻ˛ āĻ¨āĻžāĻŽ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ
"āĻ˛ā§āĻŦāĻ˛ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨" āĻāĻ° āĻŽāĻ¤āĨ¤ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ¯āĻž āĻāĻŋāĻ˛ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¨āĻŋāĻā§āĻĻā§āĻ° āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻŦāĻ˛āĻ¤ā§ āĻāĻžāĻ¨
āĻļā§āĻ§ā§ āĻāĻ¨āĻĒā§āĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨:
# āĻāĻāĻāĻŋ āĻ¸āĻ°āĻ˛ āĻŽāĻ¨ā§āĻ° āĻĒā§āĻ¯āĻžāĻ¸āĻā§āĻ˛ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒāĻžāĻ°
# (āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž: āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ¤ā§ āĻā§āĻ¨ {āĻŦāĻž } āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°ā§)
āĻ˛āĻžāĻāĻ¨: āĻ¯āĻāĻ¨ ( ) {
āĻ¯āĻāĻ¨ (s|({.*}.*){.*}|$1 |) {}
s|{.*}| |
āĻ¯āĻĻāĻŋ (s|{.*| |) {
$āĻĢā§āĻ°āĻ¨ā§āĻ = $_;
āĻ¯āĻāĻ¨ ( ) {
āĻ¯āĻĻāĻŋ (/}/) { # āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯ā§āĻ° āĻļā§āĻˇā§?
s|^|$āĻĢā§āĻ°āĻ¨ā§āĻ\{|;
āĻ˛āĻžāĻāĻ¨ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨;
}
}
}
āĻāĻžāĻĒāĻž;
}
āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻ¤ā§ "āĻ°āĻŋāĻĄā§" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯āĻžāĻŦā§ āĻ¨āĻž āĻ¯āĻž āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯ā§āĻŽāĻ¨ "eval {}", "sub"
{}", āĻŦāĻž "āĻāĻ°ā§āĻ¨ {}", āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ grep() or āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° () operation.
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻ¨āĻŋāĻā§āĻ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻāĻ¤āĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻ˛ā§āĻĒā§āĻ° āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻ¯āĻž āĻāĻāĻŦāĻžāĻ° āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧāĨ¤
āĻāĻāĻāĻžāĻŦā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻā§āĻ° āĻāĻŋāĻ¤āĻ°ā§ "āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨" āĻāĻžāĻ°ā§āĻ¯āĻāĻ°āĻāĻžāĻŦā§ āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ˛ā§āĻĒāĻŋāĻ āĻāĻ āĻ¨ā§ āĻĒāĻ°āĻŋāĻŖāĻ¤ āĻāĻ°āĻŦā§āĨ¤
āĻāĻŋāĻāĻžāĻŦā§ "āĻļā§āĻˇ", "āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§", āĻāĻŦāĻ "āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨" āĻāĻžāĻ āĻāĻ°ā§ āĻ¤āĻžāĻ° āĻāĻāĻāĻŋ āĻāĻŋāĻ¤ā§āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¨āĻžāĻŽāĻ§āĻžāĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, āĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ¸āĻžāĻāĻ¨āĻŽā§āĻ¨ā§āĻā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻšāĻž āĻ
āĻā§āĻšāĻžāĻ°āĻž-āĻŽāĻ¤-āĻāĻāĻāĻŋ-āĻĢāĻžāĻāĻļāĻ¨ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻĨā§āĻā§ āĻŽā§āĻā§āĻ¤, āĻ¤āĻžāĻ "āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨ ("foo")āĨ¤"bar"" āĻāĻ° āĻĢāĻ˛ā§ "āĻŦāĻžāĻ°" āĻšāĻŦā§
"āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°ā§āĻ¨" āĻ¯ā§āĻā§āĻ¤āĻŋāĻ° āĻ āĻāĻļ āĻšāĻ¤ā§āĨ¤
ref EXPR
ref āĻāĻāĻāĻŋ āĻ -āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯āĻĻāĻŋ EXPR āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻšāĻ¯āĻŧ, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĨ¤ āĻ¯āĻĻāĻŋ
EXPR āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ¨ā§āĻ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§
āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻāĻŋāĻ¨āĻŋāĻ¸.
āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻ§āĻ°āĻ¨ā§āĻ° āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤:
āĻ¸ā§āĻā§āĻ˛āĻžāĻ°
āĻĒā§āĻāĻā§ āĻĻāĻŋāĻ¨
āĻšā§āĻ¯āĻžāĻļ
āĻā§āĻĄ
REF
āĻāĻ˛ā§āĻ˛āĻŋāĻāĻŋāĻ¤ glob
LVALUE
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§
IO
VSTRING
Regexp
āĻāĻĒāĻ¨āĻŋ "ref" āĻā§ "typeof" āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻŦāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻ¯āĻĻāĻŋ (ref($r) eq "HASH") {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "r āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸āĨ¤\n";
}
āĻ¯āĻĻāĻŋ āĻ¨āĻž (ref($r)) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "r āĻŽā§āĻā§āĻ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ¨āĻ¯āĻŧā§ˇ\n";
}
āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ "LVALUE" āĻāĻāĻāĻŋ lvalue āĻāĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻ¯āĻž āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻ¨āĻ¯āĻŧāĨ¤
āĻāĻĒāĻ¨āĻŋ "pos()" āĻŦāĻž "substr()" āĻāĻ° āĻŽāĻ¤ā§ āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻĨā§āĻā§ āĻāĻāĻŋ āĻĒāĻžāĻ¨āĨ¤
āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸āĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°āĻ˛ā§ "VSTRING" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤
āĻĢāĻ˛āĻžāĻĢāĻ˛ "Regexp" āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻ¯ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¯āĻžāĻ° āĻĢāĻ˛ā§
"qr//"āĨ¤
āĻ¯āĻĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸āĻā§āĻ¤ āĻŦāĻ¸ā§āĻ¤ā§āĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻāĻļā§āĻ°ā§āĻŦāĻžāĻĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻ¸ā§āĻ āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻ¨āĻžāĻŽāĻāĻŋ
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻĢāĻŋāĻ°ā§. āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž, āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻāĻāĻ¨ "āĻāĻžāĻ°āĻžāĻĒ āĻ āĻ¨ā§āĻļā§āĻ˛āĻ¨" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻ āĻāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯
āĻāĻžāĻ°āĻŖ, āĻāĻāĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§ "Regexp" āĻŦāĻž "IO", āĻŦāĻž āĻāĻŽāĻ¨āĻāĻŋ "HASH" āĻ¨āĻžāĻŽā§ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻāĻžāĻĄāĻŧāĻžāĻ, "āĻ°ā§āĻĢ" āĻ¸āĻžāĻŦāĻā§āĻ˛āĻžāĻ¸āĻā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§ āĻ¨āĻž, āĻ¯ā§āĻŽāĻ¨ "isa" āĻāĻ°ā§āĨ¤
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§, āĻŦā§āĻ˛āĻŋāĻ¯āĻŧāĻžāĻ¨ āĻā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ "blessed" (Scalar::Util āĻŽāĻĄāĻŋāĻāĻ˛ā§) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻāĻ° āĻāĻ¨ā§āĻ¯ "isa"
āĻāĻžāĻāĻĒ āĻā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻā§āĻ˛āĻžāĻ¸ āĻā§āĻ āĻāĻŦāĻ "āĻ°āĻŋāĻĢāĻāĻžāĻāĻĒ" (āĻ¸ā§āĻāĻ˛āĻžāĻ°::āĻāĻāĻāĻŋāĻ˛ āĻĨā§āĻā§āĻ)āĨ¤ (āĻĻā§āĻāĻž
āĻŦāĻŋāĻļāĻĻ āĻŦāĻŋāĻŦāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ perlobj āĻāĻŦāĻ āĻāĻāĻāĻŋ "āĻ§āĻ¨ā§āĻ¯/āĻāĻ¸āĻž" āĻāĻĻāĻžāĻšāĻ°āĻŖāĨ¤)
āĻāĻāĻžāĻĄāĻŧāĻžāĻ perlref āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¨āĻ¤ā§āĻ¨ āĻ¨āĻžāĻŽāĻāĻ°āĻŖ āĻāĻ°ā§āĻ¨ OLDNAME,NEWNAME
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨; āĻāĻāĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĢāĻžāĻāĻ˛ NEWNAME āĻā§āĻ˛ā§āĻŦāĻžāĻ° āĻāĻ°āĻž āĻšāĻŦā§ā§ˇ āĻ¸āĻ¤ā§āĻ¯ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§
āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĨ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§ āĻāĻ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻāĻāĻ°āĻŖ āĻŦā§āĻ¯āĻžāĻĒāĻāĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ¸ā§āĻŽāĻžāĻ¨āĻž āĻā§āĻĄāĻŧā§ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻ¨āĻž, āĻ¯āĻĻāĻŋāĻ
āĻĒāĻĻā§āĻ§āĻ¤āĻŋ mv āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻˇāĻ¤āĻŋāĻĒā§āĻ°āĻŖ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¨āĻŋāĻˇā§āĻ§āĻžāĻā§āĻāĻž āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻŋāĻ¨āĻž
āĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ, āĻāĻĒā§āĻ¨ āĻĢāĻžāĻāĻ˛ āĻŦāĻž āĻĒā§āĻ°ā§āĻŦ-āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻžāĻ āĻāĻ°ā§āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻ āĻāĻŦāĻ āĻšāĻ¯āĻŧ āĻā§āĻ āĻāĻ°ā§āĻ¨
āĻĻā§āĻ¯ āĻ¨āĻžāĻŽāĻžāĻ¨ā§āĻ¤āĻ°(2) āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŽā§āĻ¯āĻžāĻ¨āĻĒā§āĻ āĻŦāĻž āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨āĨ¤
āĻāĻāĻāĻŋ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻ¸ā§āĻŦāĻžāĻ§ā§āĻ¨ "āĻŽā§āĻ" āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻ˛::āĻāĻĒāĻŋ āĻŽāĻĄāĻŋāĻāĻ˛āĻāĻŋ āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¨āĻžāĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨"āĨ¤
āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨
EXPR āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨
VERSION āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻĻāĻžāĻŦāĻŋ āĻāĻ°ā§, āĻ āĻĨāĻŦāĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻŋāĻā§ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻĻāĻžāĻŦāĻŋ āĻāĻ°ā§
EXPR āĻŦāĻž $_ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¯āĻĻāĻŋ EXPR āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻ¨āĻž āĻšāĻ¯āĻŧāĨ¤
VERSION āĻšāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¯ā§āĻŽāĻ¨ 5.006 āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻž $] āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻšāĻŦā§,
āĻ āĻĨāĻŦāĻž v5.6.1 āĻĢāĻ°ā§āĻŽā§āĻ° āĻāĻāĻāĻŋ āĻāĻā§āĻˇāĻ°āĻŋāĻ, āĻ¯āĻž $^V (āĻāĻ°āĻĢā§ $PERL_VERSION) āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻšāĻŦā§āĨ¤
VERSION āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻā§āĻ¯āĻŧā§ āĻŦāĻĄāĻŧ āĻšāĻ˛ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻšāĻ¯āĻŧ
āĻĻā§āĻāĻžāĻˇā§ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°ā§āĻ¨, āĻ¯āĻž āĻāĻŽā§āĻĒāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻĢāĻ°ā§āĻŽ v5.6.1 āĻāĻ° āĻāĻā§āĻˇāĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ VERSION āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻĄāĻŧāĻžāĻ¨ā§ āĻāĻāĻŋāĻ¤,
āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻ āĻ§ā§āĻ¨ā§ āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻĻāĻŋāĻā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ āĻ¯āĻž āĻāĻ°ā§
āĻāĻ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ v5.6.1; # āĻ°āĻžāĻ¨ āĻāĻžāĻāĻŽ āĻāĻžāĻ°ā§āĻ¸āĻ¨ āĻā§āĻ
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ 5.6.1; # āĻāĻāĻāĻāĻžāĻŦā§
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ 5.006_001; # āĻāĻāĻāĻāĻžāĻŦā§; āĻĒāĻŋāĻāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻāĻ¨ā§āĻĻ
āĻ¸āĻā§āĻāĻ¤āĻŋ
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ, "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ" āĻĻāĻžāĻŦāĻŋ āĻāĻ°ā§ āĻ¯ā§ āĻāĻāĻāĻŋ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻĢāĻžāĻāĻ˛ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻŦā§ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻ¨āĻž āĻĨāĻžāĻā§
āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĄā§-āĻĢāĻžāĻāĻ˛ āĻŽā§āĻāĻžāĻ¨āĻŋāĻāĻŽā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¯āĻž āĻŽā§āĻ˛āĻ¤ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¸āĻš "āĻāĻāĻžāĻ˛" āĻāĻ° āĻŦā§āĻāĻŋāĻ¤ā§āĻ°ā§āĻ¯ āĻ¯āĻž āĻāĻšā§āĻŦāĻžāĻ¨āĻāĻžāĻ°ā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻ° āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋ āĻāĻ°āĻŦā§
āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻā§āĻĄ āĻ āĻĻā§āĻļā§āĻ¯ āĻšāĻ¤ā§. āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻĻā§āĻ§ āĻĒāĻžāĻ°ā§āĻ˛ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻŦā§ āĻāĻāĻŋ āĻšāĻŦā§
āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ āĻ¨ā§āĻ°ā§āĻĒ:
āĻāĻžāĻ°ā§āĻĒ 'āĻā§āĻ°ā§āĻ' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¸āĻžāĻŦ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ {
āĻāĻŽāĻžāĻ° ($filename) = @_;
āĻ¯āĻĻāĻŋ ( my $version = eval { version->parse($filename) } ) {
āĻ¯āĻĻāĻŋ ( $version > $^V ) {
āĻāĻŽāĻžāĻ° $vn = $version->āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ;
croak "Perl $vn āĻāĻŦāĻļā§āĻ¯āĻ--āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° $^V, āĻŦāĻ¨ā§āĻ§";
}
āĻĢāĻŋāĻ°ā§ 1;
}
āĻ¯āĻĻāĻŋ ($INC{$filename} āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĨāĻžāĻā§) {
$INC{$filename} āĻšāĻ˛ā§ 1 āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¨;
croak "āĻ¸āĻāĻāĻ˛āĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§āĻā§";
}
foreach $prefix (@INC) {
āĻ¯āĻĻāĻŋ (ref($prefix)) {
#... āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻāĻ°ā§āĻ¨ - āĻ¨ā§āĻā§āĻ° āĻĒāĻžāĻ ā§āĻ¯ āĻĻā§āĻā§āĻ¨...
}
# (.pmc-āĻāĻ° āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻ¸āĻāĻ¯ā§āĻāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻ¨ā§āĻā§āĻ° āĻĒāĻžāĻ ā§āĻ¯ āĻĻā§āĻā§āĻ¨
$filename-āĻ¤ā§ # āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻ¯āĻŧ)
my $realfilename = "$prefix/$filename";
āĻĒāĻ°ā§āĻ° āĻ¯āĻĻāĻŋ! -e $realfilename || -d _ || -āĻŦāĻŋ _;
$INC{$filename} = $realfilename;
āĻāĻŽāĻžāĻ° $result = do($realfilename);
# āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ˛āĻžāĻ°ā§āĻ° āĻ¨āĻžāĻŽāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻāĻžāĻ˛āĻžāĻ¨
āĻ¯āĻĻāĻŋ (!āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ $result) {
$INC{$filename} = undef;
āĻā§āĻ°āĻžāĻ $@? "$@āĻ¸āĻāĻāĻ˛āĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§āĻā§"
: "$filename: $!\n";
}
āĻ¯āĻĻāĻŋ (!$ āĻĢāĻ˛āĻžāĻĢāĻ˛) {
$INC{$filename} āĻŽā§āĻā§āĻ¨;
croak "$filename āĻāĻ¸āĻ˛ āĻŽāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĻ¨āĻŋ";
}
$! = 0;
āĻĢā§āĻ°āĻ¤ $āĻĢāĻ˛āĻžāĻĢāĻ˛;
}
croak "\@INC ... āĻ¤ā§ $filename āĻ¸āĻ¨āĻžāĻā§āĻ¤ āĻāĻ°āĻž āĻ¯āĻžāĻā§āĻā§ āĻ¨āĻž";
}
āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻāĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¨āĻžāĻŽā§āĻ° āĻ āĻ§ā§āĻ¨ā§ āĻĻā§āĻŦāĻžāĻ° āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻŦā§ āĻ¨āĻžāĨ¤
āĻĢāĻžāĻāĻ˛āĻāĻŋāĻā§ āĻ āĻŦāĻļā§āĻ¯āĻ āĻļā§āĻˇ āĻŦāĻŋāĻŦā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸āĻ¤ā§āĻ¯ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻ¯āĻžāĻ¤ā§ āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻ¸āĻŽā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¯ā§āĻā§āĻ¨ā§ āĻāĻ¨āĻŋāĻļāĻŋāĻ¯āĻŧāĻžāĻ˛āĻžāĻāĻā§āĻļāĻ¨ āĻā§āĻĄ, āĻ¤āĻžāĻ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻĢāĻžāĻāĻ˛ "1;" āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻˇ āĻāĻ°āĻž āĻĒā§āĻ°āĻĨāĻžāĻāĻ¤āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¨āĻž
āĻāĻāĻž āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻ¸āĻ¤ā§āĻ¯ āĻĢāĻŋāĻ°ā§ āĻāĻ¸āĻŦā§ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤. āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "1;" āĻāĻ°āĻž āĻāĻžāĻ˛, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ
āĻāĻ°ā§ āĻŦāĻŋāĻŦā§āĻ¤āĻŋ āĻ¯ā§āĻ āĻāĻ°ā§āĻ¨āĨ¤
āĻ¯āĻĻāĻŋ EXPR āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĻāĻŋ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°ā§ āĻāĻāĻāĻŋ ".pm"āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨"::" āĻ¸āĻā§āĻā§
"/āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻŽāĻĄāĻŋāĻāĻ˛ āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻ¸āĻšāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽā§
āĻŽāĻĄāĻŋāĻāĻ˛ āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻāĻĒāĻ¨āĻžāĻ° āĻ¨āĻžāĻŽāĻ¸ā§āĻĨāĻžāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻžāĻ° āĻā§āĻāĻāĻŋ āĻ°āĻžāĻā§ āĻ¨āĻžāĨ¤
āĻ āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻ¨:
Foo::āĻŦāĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨; # āĻāĻāĻāĻŋ āĻāĻŽāĻ¤ā§āĻāĻžāĻ° āĻļāĻŦā§āĻĻ
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻāĻ¸āĻ˛ā§ "Foo/Bar.pm" āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ āĻĢāĻžāĻāĻ˛
@INC āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻ¨:
$class = 'Foo::āĻŦāĻžāĻ°';
$āĻā§āĻ˛āĻžāĻ¸ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨; # $class āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ¨āĻ¯āĻŧ
#āĻŦāĻž
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ "Foo::āĻŦāĻžāĻ°"; # āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻ¨āĻ¯āĻŧ āĻāĻžāĻ°āĻŖ ""
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ "Foo::āĻŦāĻžāĻ°" @INC āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§ āĻĢāĻžāĻāĻ˛ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻāĻāĻ˛ā§ˇ
āĻ¨āĻž āĻĒāĻžāĻāĻ¯āĻŧāĻžāĻ° āĻ āĻāĻŋāĻ¯ā§āĻ"Foo::āĻŦāĻžāĻ°" āĻ¸ā§āĻāĻžāĻ¨ā§āĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
eval "$ class āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨";
āĻāĻāĻ¨ āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻāĻ¤ā§ āĻĒā§āĻ°ā§āĻā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻš āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻāĻžāĻŦā§ "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨" āĻĻā§āĻāĻžāĻ¯āĻŧ, āĻ¸ā§āĻāĻžāĻ¨ā§
āĻĒāĻ°ā§āĻĻāĻžāĻ° āĻĒāĻŋāĻāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻšāĻā§āĻā§. āĻāĻā§ "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨" āĻĻā§āĻāĻžāĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻ¯ ".pm" āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨, āĻāĻāĻŋ āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻāĻāĻŋ āĻ¸āĻš āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻā§āĻāĻāĻŦā§ ".pmc"
āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻ¯āĻĻāĻŋ āĻāĻ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋ a āĻ āĻļā§āĻˇ āĻšāĻāĻ¯āĻŧāĻž āĻ¯ā§āĻā§āĻ¨ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ āĻ˛ā§āĻĄ āĻšāĻŦā§
".pm"āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĒāĻžāĻ°ā§āĻ˛ āĻā§āĻĄ āĻŦāĻ¸āĻŋāĻ¯āĻŧā§ āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻšā§āĻ āĻ¸āĻ¨ā§āĻ¨āĻŋāĻŦā§āĻļ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
@INC āĻ ā§āĻ¯āĻžāĻ°ā§āĨ¤ āĻšā§āĻā§āĻ° āĻ¤āĻŋāĻ¨āĻāĻŋ āĻ°ā§āĻĒ āĻ°āĻ¯āĻŧā§āĻā§: āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸, āĻ ā§āĻ¯āĻžāĻ°ā§
āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸, āĻāĻŦāĻ āĻ§āĻ¨ā§āĻ¯ āĻŦāĻ¸ā§āĻ¤ā§.
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻšāĻ˛ āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻ¸āĻšāĻ āĻā§āĻ¸āĨ¤ āĻ¯āĻāĻ¨ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤āĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻšāĻžāĻāĻāĻž
@INC āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻŽā§āĻā§āĻŽā§āĻāĻŋ āĻšāĻ¯āĻŧ, āĻāĻ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨āĻāĻŋāĻā§ āĻĻā§āĻāĻŋ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻ¸āĻš āĻāĻ˛ ââāĻāĻ°āĻž āĻšāĻ¯āĻŧ,
āĻĒā§āĻ°āĻĨāĻŽā§ āĻ¨āĻŋāĻā§āĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸, āĻāĻŦāĻ āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ (āĻ¯ā§āĻŽāĻ¨,
"Foo/Bar.pm"). āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨āĻāĻŋ āĻšāĻ¯āĻŧ āĻāĻŋāĻā§āĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻŦā§ āĻ¨āĻž āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĻā§āĻŦā§ā§ˇ
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻā§āĻ°āĻŽā§ āĻāĻžāĻ°āĻāĻŋ āĻŽāĻžāĻ¨:
1. āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸, āĻ¯āĻžāĻ¤ā§ āĻĢāĻžāĻāĻ˛ā§ āĻĒā§āĻ°āĻŋāĻĒā§āĻ¨ā§āĻĄ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¯ā§āĻā§āĻ¨ā§ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻ¸ā§āĻ°ā§āĻ¸ āĻā§āĻĄ āĻĨāĻžāĻā§
āĻŦāĻž āĻā§āĻ¨āĻžāĻ°ā§āĻāĻ° āĻāĻāĻāĻĒā§āĻāĨ¤
2. āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ¯ā§āĻāĻžāĻ¨ āĻĨā§āĻā§ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻĒāĻĄāĻŧāĻž āĻšāĻŦā§āĨ¤
3. āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻāĻ˛ā§āĻ˛ā§āĻāĨ¤ āĻ¯āĻĻāĻŋ āĻā§āĻ¨ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ (āĻāĻā§āĻ° āĻāĻāĻā§āĻŽ) āĻ¨āĻž āĻĨāĻžāĻā§ āĻ¤āĻŦā§ āĻāĻāĻŋ
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻĒā§āĻ°āĻ¤āĻŋ āĻāĻ˛ā§ āĻ¸ā§āĻ°ā§āĻ¸ āĻā§āĻĄā§āĻ° āĻāĻāĻāĻŋ āĻ˛āĻžāĻāĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§ āĻŦāĻ˛ā§ āĻāĻļāĻž āĻāĻ°āĻž āĻšāĻā§āĻā§, āĻ˛ā§āĻāĻž
āĻ˛āĻžāĻāĻ¨ā§ $_ āĻāĻŦāĻ 1 āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°āĻž, āĻ¤āĻžāĻ°āĻĒāĻ° āĻ āĻŦāĻļā§āĻˇā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇā§ 0 āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°āĻžāĨ¤ āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ¤āĻžāĻšāĻ˛ā§ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨āĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻāĻ¤ā§āĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°āĻ¤ā§ āĻŦāĻ˛āĻž āĻšāĻŦā§
āĻĢāĻŋāĻ˛ā§āĻāĻžāĻ°, $_ āĻ āĻĒāĻĄāĻŧāĻž āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§āĨ¤ āĻāĻŦāĻžāĻ°, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦā§āĻ§ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ 1 āĻāĻŦāĻ 0 āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¨
āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ˛āĻžāĻāĻ¨ āĻĢāĻŋāĻ°ā§ āĻāĻ¸āĻžāĻ° āĻĒāĻ°ā§āĨ¤
4. āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻā§āĻāĻŋāĻ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĨ¤ āĻ°āĻžāĻˇā§āĻā§āĻ°āĻāĻŋ $_[1] āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§ āĻ¨āĻŋāĻā§āĻ $_[0] āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž, "undef", āĻŦāĻž āĻāĻĒāĻ°ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ 3āĻāĻŋ āĻŽāĻžāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§ āĻāĻŽāĻ¨ āĻāĻŋāĻā§āĻ āĻ¨āĻž
āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĻā§, āĻ¤āĻžāĻ°āĻĒāĻ° "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨" @INC-āĻāĻ° āĻ āĻŦāĻļāĻŋāĻˇā§āĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻĻā§āĻā§āĨ¤ āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻāĻ
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻšāĻ¤ā§ āĻšāĻŦā§ (āĻāĻ ā§āĻ°āĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻāĻžāĻāĻĒāĻā§āĻ˛ā§āĻŦ āĻŦāĻž āĻāĻžāĻāĻĒāĻā§āĻ˛ā§āĻŦā§āĻ° āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸,
āĻ§āĻ¨ā§āĻ¯ āĻšā§āĻ āĻŦāĻž āĻ āĻļā§āĻ āĻšā§āĻ; āĻŦāĻžāĻāĻ§āĻž āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻŦā§ āĻāĻŦāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖ āĻšāĻŦā§
āĻāĻāĻžāĻ¨ā§ āĻĨāĻžāĻŽā§.
āĻ¯āĻĻāĻŋ āĻšā§āĻ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻšāĻ¤ā§ āĻšāĻŦā§āĨ¤
āĻāĻ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨āĻāĻŋāĻā§ āĻāĻĒāĻ°ā§āĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻĒā§āĻ°āĻĨāĻŽ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ°āĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸āĨ¤
āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻĒāĻ°ā§āĻā§āĻˇāĻāĻžāĻŦā§ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĒāĻžāĻ¸ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧāĨ¤
āĻ āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻŋ āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
@INC, \&my_sub;
sub my_sub {
āĻāĻŽāĻžāĻ° ($coderef, $filename) = @_; # $coderef āĻšāĻ˛ \&my_sub
...
}
āĻŦāĻž:
āĻĒā§āĻļ @INC, [ \&my_sub, $x, $y, ... ];
sub my_sub {
āĻāĻŽāĻžāĻ° ($arrayref, $filename) = @_;
# āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°ā§āĻ¨ $x, $y, ...
āĻāĻŽāĻžāĻ° @āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° = @$arrayref[1..$#$arrayref];
...
}
āĻ¯āĻĻāĻŋ āĻšā§āĻ āĻāĻāĻāĻŋ āĻŦāĻ¸ā§āĻ¤ā§ āĻšāĻ¯āĻŧ, āĻāĻāĻŋ āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻāĻŋ INC āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻŦā§ āĻ¯āĻž āĻāĻĒāĻ°ā§ āĻŦāĻ˛āĻž āĻšāĻŦā§,
āĻĒā§āĻ°āĻĨāĻŽ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻšāĻā§āĻā§ āĻŦāĻ¸ā§āĻ¤ā§ āĻ¨āĻŋāĻā§āĻāĨ¤ (āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻ āĻŦāĻļā§āĻ¯āĻ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ āĻ°ā§āĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻāĻĒ-āĻāĻ° āĻ¨āĻžāĻŽ, āĻ āĻ¯ā§āĻā§āĻ¯ āĻšāĻŋāĻ¸āĻžāĻŦā§ "INC" āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻĒā§āĻ¯āĻžāĻā§āĻ "āĻĒā§āĻ°āĻ§āĻžāĻ¨" āĻ āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤) āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻā§āĻĄ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸:
# Foo.pm āĻ
āĻĒā§āĻ¯āĻžāĻā§āĻ Foo;
āĻ¸āĻžāĻŦ āĻ¨āĻ¤ā§āĻ¨ { ... }
āĻ¸āĻžāĻŦ Foo::INC {
āĻāĻŽāĻžāĻ° ($self, $filename) = @_;
...
}
# āĻŽā§āĻ˛ āĻāĻ°ā§āĻŽāĻ¸ā§āĻāĻŋāĻ¤ā§
āĻĒā§āĻļ @INC, Foo->āĻ¨āĻ¤ā§āĻ¨(...);
āĻāĻ āĻšā§āĻāĻā§āĻ˛āĻŋāĻā§ āĻ¤āĻžāĻĻā§āĻ° āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ % INC āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻ¸ā§āĻ āĻāĻ°āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§
āĻ˛ā§āĻĄ āĻšāĻ¯āĻŧā§āĻā§ āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°ā§ "%INC" āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻ°āĻ āĻļāĻā§āĻ¤āĻŋāĻļāĻžāĻ˛ā§ āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻ° āĻāĻ¨ā§āĻ¯, "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛āĻŽā§āĻĄ āĻĻā§āĻā§āĻ¨āĨ¤
EXPR āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§āĻ¨
āĻ°āĻŋāĻ¸ā§āĻ
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻ˛ā§āĻĒā§āĻ° āĻļā§āĻˇā§ āĻāĻāĻāĻŋ "āĻāĻžāĻ˛āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¨" āĻŦā§āĻ˛āĻā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ
"???" āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§ āĻ¯āĻžāĻ¤ā§ āĻ¤āĻžāĻ°āĻž āĻāĻŦāĻžāĻ° āĻāĻžāĻ āĻāĻ°ā§āĨ¤ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻāĻ āĻ āĻā§āĻˇāĻ° (āĻŦā§āĻ¯āĻžāĻĒā§āĻ¤āĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻšāĻžāĻāĻĢā§āĻ¨ āĻ āĻ¨ā§āĻŽā§āĻĻāĻŋāĻ¤)āĨ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻŦāĻ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻļā§āĻ°ā§
āĻ¸ā§āĻ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¤āĻžāĻĻā§āĻ° āĻāĻĻāĻŋāĻŽ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻšāĻ¯āĻŧ
āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻ-āĻŽā§āĻ¯āĻžāĻ āĻ¸āĻžāĻ°ā§āĻ ("? āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨?") āĻāĻŦāĻžāĻ° āĻŽā§āĻ˛ā§ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ°āĻŋāĻ¸ā§āĻ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻŦāĻž āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨āĨ¤ āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ 1. āĻāĻĻāĻžāĻšāĻ°āĻŖ:
'X' āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¸ā§āĻ āĻāĻ°ā§āĻ¨; # āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻā§āĻ¸ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§āĻ¨
'a-z' āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻ¸ā§āĻ āĻāĻ°ā§āĻ¨; # āĻā§āĻ āĻšāĻžāĻ¤ā§āĻ° āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§āĻ¨
āĻ°āĻŋāĻ¸ā§āĻ; # āĻļā§āĻ§ā§ āĻ°āĻŋāĻ¸ā§āĻ? āĻāĻāĻŦāĻžāĻ°? āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨
"A-Z" āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°āĻž āĻŦāĻžāĻā§āĻāĻ¨ā§āĻ¯āĻŧ āĻ¨āĻ¯āĻŧ āĻāĻžāĻ°āĻŖ āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° @ARGV āĻāĻŦāĻ @INC āĻ ā§āĻ¯āĻžāĻ°ā§āĻā§āĻ˛āĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻŦā§āĻ¨
āĻāĻŦāĻ āĻāĻĒāĻ¨āĻžāĻ° %ENV āĻšā§āĻ¯āĻžāĻļāĨ¤ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ¯āĻžāĻā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§; āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¨āĻž,
āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¤āĻžāĻ°āĻž āĻ¯ā§āĻāĻžāĻŦā§āĻ āĻšā§āĻ āĻ¸ā§āĻā§āĻĒ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻ¨āĻŋāĻā§āĻĻā§āĻ° āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°ā§, āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĻŦā§āĻ¨
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§. āĻĻā§āĻā§ āĻāĻŽāĻžāĻ°".
EXPR āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¨
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻ¨
EXPR-āĻ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻŽāĻžāĻ¨ āĻ¸āĻš āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨, "eval" āĻŦāĻž "do FILE" āĻĨā§āĻā§ āĻĢā§āĻ°āĻ¤ āĻāĻ¸ā§āĨ¤
EXPR-āĻāĻ° āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻž, āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻŦāĻž āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻā§āĻāĻžāĻŦā§ āĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§
āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻŦā§, āĻāĻŦāĻ āĻĒā§āĻ°āĻ¸āĻā§āĻ āĻāĻ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻļāĻ¨ āĻĨā§āĻā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§āĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
("wantarray" āĻĻā§āĻā§āĻ¨)āĨ¤ āĻ¯āĻĻāĻŋ āĻā§āĻ¨ EXPR āĻĻā§āĻāĻ¯āĻŧāĻž āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§,
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨, āĻāĻŦāĻ (āĻ āĻŦāĻļā§āĻ¯āĻ) āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻŋāĻā§āĻ āĻ¨āĻ¯āĻŧāĨ¤
(āĻāĻāĻāĻŋ āĻ¸ā§āĻ¸ā§āĻĒāĻˇā§āĻ "āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨" āĻāĻ° āĻ āĻ¨ā§āĻĒāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§, āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨, āĻāĻāĻžāĻ˛, āĻŦāĻž āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ FILE āĻāĻ°ā§āĻ¨
āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻļā§āĻˇ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤)
āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¨āĻžāĻŽāĻ§āĻžāĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻĻā§āĻ° āĻĨā§āĻā§ āĻāĻŋāĻ¨ā§āĻ¨, āĻāĻāĻŋ āĻĻā§āĻāĻ¤ā§-āĻŽāĻ¤-āĻāĻāĻāĻŋ-āĻĢāĻžāĻāĻļāĻ¨ āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻĨā§āĻā§āĻ āĻŽā§āĻā§āĻ¤,
āĻ¤āĻžāĻ "āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ ("foo")āĨ¤"bar"" āĻāĻ° āĻĢāĻ˛ā§ "āĻŦāĻžāĻ°" āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻ āĻāĻļ āĻšāĻ¯āĻŧā§ "āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨" āĻšāĻŦā§āĨ¤
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§, āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¯āĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ LIST āĻāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ°āĻ¯āĻŧā§āĻā§
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻāĻĻā§āĻļāĨ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§, LIST āĻāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻāĻāĻ¤ā§āĻ°āĻŋāĻ¤ āĻāĻ°ā§ āĻāĻŦāĻ a āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻā§āĻ°āĻŽā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ āĻā§āĻˇāĻ° āĻ¸āĻš āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŽāĻžāĻ¨āĨ¤
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨(", ", āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ "āĻŦāĻŋāĻļā§āĻŦ", "āĻšā§āĻ¯āĻžāĻ˛ā§"); # āĻāĻšā§ āĻŦāĻŋāĻļā§āĻŦ
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ "dlrow", "olleH"; # āĻāĻšā§ āĻŦāĻŋāĻļā§āĻŦ
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻžāĻĄāĻŧāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ () āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ $_.
$_ = "dlrow,olleH";
āĻŽā§āĻĻā§āĻ°āĻŖ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤; # āĻā§āĻ¨ āĻāĻāĻāĻĒā§āĻ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻ
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤; # āĻāĻšā§ āĻŦāĻŋāĻļā§āĻŦ
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻā§ āĻ¨āĻŋāĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻ˛ā§āĻāĻžāĻ¨ā§ (āĻ¯ā§āĻŽāĻ¨ "@a = āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ @a") āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻŦā§ āĻ -
āĻ¯āĻāĻ¨āĻ āĻ¸āĻŽā§āĻāĻŦ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻāĻĒāĻžāĻĻāĻžāĻ¨; āĻ¯ā§āĻŽāĻ¨, āĻ -āĻāĻžāĻĻā§āĻāĻ°ā§ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻŦāĻž āĻŦāĻžāĻāĻ§āĻž āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯
"EXISTS" āĻāĻŦāĻ "DELETE" āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ¸āĻšāĨ¤
āĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻāĻŋ āĻšā§āĻ¯āĻžāĻļāĻā§ āĻāĻ˛ā§āĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯āĻ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻ, āĻ¯āĻĻāĻŋāĻ āĻāĻŋāĻā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻ¯āĻĻāĻŋ
āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨ āĻŽā§āĻ˛ āĻšā§āĻ¯āĻžāĻļā§ āĻ¸āĻĻā§āĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻ¨āĻāĻžāĻ°ā§āĻā§āĻĄ āĻšā§āĻ¯āĻžāĻļā§ āĻā§āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻāĻ¨āĻāĻ¯āĻŧāĻžāĻāĻ¨ā§āĻĄ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ¨āĻ¤ā§āĻ¨ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ, āĻ¯āĻž āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻšā§āĻ¯āĻžāĻļā§ āĻāĻŋāĻā§ āĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻāĻŋ DBM āĻĢāĻžāĻāĻ˛ āĻĨā§āĻā§āĨ¤
%by_name = āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ %by_address; # āĻšā§āĻ¯āĻžāĻļ āĻāĻ˛ā§āĻā§ āĻĻāĻŋāĻ¨
rewinddir DIRHANDLE
"readdir" āĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ° āĻļā§āĻ°ā§āĻ¤ā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸ā§āĻ āĻāĻ°ā§
DIRHANDLE āĻ
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ°āĻŋāĻāĻ¯āĻŧāĻžāĻāĻ¨ā§āĻĄāĻĄāĻŋāĻ°"āĨ¤
āĻ°āĻŋāĻ¨ā§āĻĄā§āĻā§āĻ¸ STR,SUBSTR,āĻĒāĻāĻŋāĻļāĻ¨
rindex STR,SUBSTR
āĻ āĻŋāĻ āĻŽāĻ¤ āĻāĻžāĻ āĻāĻ°ā§ āĻ¸ā§āĻāĻ () āĻŦā§āĻ¯āĻ¤ā§āĻ¤ āĻāĻāĻŋ āĻāĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻāĻ¤ āĻāĻ° āĻāĻāĻ¨āĻž
STR āĻ¤ā§ SUBSTRāĨ¤ āĻ¯āĻĻāĻŋ POSITION āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻŦāĻž āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻšāĻāĻ¯āĻŧāĻž āĻļā§āĻˇ āĻāĻāĻ¨āĻžāĻāĻŋ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ¸ā§āĻ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ° āĻāĻā§āĨ¤
rmdir FILENAME
āĻāĻžāĻā§ rmdir
FILENAME āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻāĻŋ āĻŽā§āĻā§ āĻĻā§āĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻ¸ā§āĻ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻĨāĻžāĻā§ā§ˇ āĻ¯āĻĻāĻŋ āĻāĻāĻž
āĻ¸āĻĢāĻ˛ āĻšāĻ¯āĻŧ āĻāĻāĻž āĻ¸āĻ¤ā§āĻ¯ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§; āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻŋ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ $ āĻ¸ā§āĻ āĻāĻ°ā§! (āĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ)āĨ¤ āĻ¯āĻĻāĻŋ FILENAME
āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻā§āĻ°āĻŋ āĻŦāĻžāĻ°āĻŦāĻžāĻ° āĻ¸āĻ°āĻžāĻ¤ā§ (āĻāĻāĻ¨āĻŋāĻā§āĻ¸ā§ "rm -rf") "rmtree" āĻĻā§āĻā§āĻ¨
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĢāĻžāĻāĻļāĻ¨::āĻĒāĻžāĻĨ āĻŽāĻĄāĻŋāĻāĻ˛āĨ¤
s///
āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°. āĻĒāĻžāĻ°ā§āĻ˛ā§āĻĒā§ "Regexp āĻā§āĻ-āĻ˛āĻžāĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°" āĻĻā§āĻā§āĻ¨āĨ¤
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŦāĻ˛ā§āĻ¨
FILEHANDLE āĻŦāĻ˛ā§āĻ¨
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŦāĻ˛ā§āĻ¨
āĻ āĻŋāĻ āĻ¯ā§āĻŽāĻ¨ "āĻŽā§āĻĻā§āĻ°āĻŖ" āĻŦāĻ˛ā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒāĻ°ā§āĻā§āĻˇāĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻ˛āĻžāĻāĻ¨ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĨ¤ "āĻ˛āĻŋāĻ¸ā§āĻ āĻŦāĻ˛ā§āĻ¨" āĻ¸āĻšāĻāĻāĻžāĻŦā§ āĻāĻāĻāĻŋ
"{ local $\ = "\n"; āĻŽā§āĻĻā§āĻ°āĻŖ āĻ¤āĻžāĻ˛āĻŋāĻāĻž } āĻāĻ° āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻ°ā§āĻĒāĨ¤ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻžāĻĄāĻŧāĻž FILEHANDLE āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§
āĻāĻāĻŋāĻ¤ā§ $_ āĻāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻ¤ā§, āĻāĻĒāĻ¨āĻžāĻā§ āĻ āĻŦāĻļā§āĻ¯āĻ "FH" āĻāĻ° āĻŽāĻ¤ā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻšāĻŦā§, āĻāĻāĻāĻŋ āĻ¨āĻ¯āĻŧ
āĻĒāĻ°ā§āĻā§āĻˇ āĻāĻ āĻ¯ā§āĻŽāĻ¨ $fh.
āĻāĻ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻāĻ¨āĻ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¯āĻāĻ¨ "āĻŦāĻ˛ā§āĻ¨" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻāĻŋ āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻŦāĻž āĻāĻĒāĻ¸āĻ°ā§āĻ āĻ¯ā§āĻā§āĻ¤ āĻĨāĻžāĻā§ā§ˇ
āĻ¸āĻā§āĻā§ "CORE::"; āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĻā§āĻā§āĻ¨āĨ¤ āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧāĻā§āĻ°āĻŽā§, āĻāĻāĻāĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° v5.10" āĻŦāĻž āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§āĻ¤ā§ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻ¯ā§āĻāĨ¤
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° EXPR
EXPR āĻā§ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻ¤ā§ āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°ā§ āĻāĻŦāĻ EXPR āĻāĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
@āĻāĻŖāĻ¨āĻž = ( āĻ¸ā§āĻā§āĻ˛āĻžāĻ° @a, āĻ¸ā§āĻā§āĻ˛āĻžāĻ° @b, āĻ¸ā§āĻā§āĻ˛āĻžāĻ° @c);
āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ¨ āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¨ā§āĻ
āĻĒā§āĻ°āĻ¸āĻā§āĻ āĻāĻžāĻ°āĻŖ āĻ āĻ¨ā§āĻļā§āĻ˛āĻ¨ā§, āĻāĻāĻŋ āĻāĻāĻ¨āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻ¤ā§āĻ¯āĻŋāĻ āĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨,
āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻĒāĻ¨āĻŋ "@{[ (āĻāĻŋāĻā§ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ) ]}" āĻ¨āĻŋāĻ°ā§āĻŽāĻžāĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ a
āĻ¸āĻšāĻ "(āĻāĻŋāĻā§ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ)" āĻ¯āĻĨā§āĻˇā§āĻāĨ¤
āĻāĻžāĻ°āĻŖ "āĻ¸ā§āĻā§āĻ˛āĻžāĻ°" āĻšāĻ˛ āĻāĻāĻāĻŋ āĻāĻāĻ¨āĻžāĻ°āĻŋ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻ¨āĻžāĻā§āĻ°āĻŽā§ āĻāĻāĻāĻŋ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
EXPR, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻŽāĻž āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻ°āĻŖ āĻāĻ°ā§, āĻ¯āĻž āĻļā§āĻˇ āĻŦāĻžāĻĻā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§
āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻŦāĻ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻā§āĻĄāĻŧāĻžāĻ¨ā§āĻ¤ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻžāĨ¤
āĻāĻ āĻāĻĻāĻžāĻāĻŋā§ āĻāĻĒāĻ¨āĻŋ āĻāĻŋ āĻāĻžāĻ¨.
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻāĻ āĻŦāĻŋāĻŦā§āĻ¤āĻŋ:
āĻŽā§āĻĻā§āĻ°āĻŖ uc(āĻ¸ā§āĻā§āĻ¯āĻžāĻ˛āĻžāĻ°(&foo,$bar)),$baz;
āĻāĻ āĻĻā§āĻāĻŋāĻ° āĻ¨ā§āĻ¤āĻŋāĻ āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯:
&foo;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ(uc($bar),$baz);
āĻāĻāĻ¨āĻžāĻ°ā§ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻāĻŦāĻ āĻāĻŽāĻž āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlop āĻĻā§āĻā§āĻ¨āĨ¤
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨, āĻā§āĻĨāĻžāĻ¯āĻŧ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§āĻ¨
FILEHANDLE āĻāĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸ā§āĻ āĻāĻ°ā§, āĻ āĻŋāĻ āĻ¯ā§āĻŽāĻ¨ "stdio" āĻāĻ° "fseek" āĻāĻ˛āĨ¤ FILEHANDLE āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻĻā§āĻ¯āĻŧāĨ¤ WHENCE-āĻāĻ° āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻšāĻ˛ā§ˇ
0 āĻ¨āĻ¤ā§āĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ in āĻŦāĻžāĻāĻ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§; 1 āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§
āĻĒā§āĻ˛āĻžāĻ¸ POSITION; āĻāĻŦāĻ 2 āĻāĻāĻŋāĻā§ EOF āĻĒā§āĻ˛āĻžāĻ¸ āĻĒāĻāĻŋāĻļāĻ¨ā§ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§, āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻāĨ¤ WHENCE āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻāĻĒāĻ¨āĻŋ āĻ§ā§āĻ°ā§āĻŦāĻ "SEEK_SET", "SEEK_CUR", āĻāĻŦāĻ "SEEK_END" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ (āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§,
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨, āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇ) Fcntl āĻŽāĻĄāĻŋāĻāĻ˛ āĻĨā§āĻā§āĨ¤ āĻ¸āĻĢāĻ˛āĻ¤āĻžāĻ° āĻāĻĒāĻ° 1 āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ, āĻŽāĻŋāĻĨā§āĻ¯āĻž
āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧāĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ in āĻŦāĻžāĻāĻ: āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻ āĻāĻ°āĻž āĻĨāĻžāĻā§ (āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖ ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ(utf8)" āĻāĻĒā§āĻ¨ āĻ˛ā§āĻ¯āĻŧāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§), āĻŦāĻ˛ā§āĻ¨ () āĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻŦā§,
āĻ āĻā§āĻˇāĻ° āĻ āĻĢāĻ¸ā§āĻ āĻ¨āĻ¯āĻŧ (āĻāĻžāĻ°āĻŖ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ˛ā§ āĻ¤āĻž āĻ°ā§āĻ¨ā§āĻĄāĻžāĻ° āĻšāĻŦā§ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ () āĻāĻŦāĻ āĻŦāĻ˛ā§āĻ¨ () āĻŦāĻ°āĻ
āĻ§ā§āĻ°)āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ "sysread" āĻŦāĻž "syswrite" āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ "seek" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž
āĻāĻžāĻ°āĻŖ āĻŦāĻžāĻĢāĻžāĻ°āĻŋāĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ°āĻŋāĻĄ-āĻ°āĻžāĻāĻ āĻĒāĻāĻŋāĻļāĻ¨ā§ āĻāĻ° āĻĒā§āĻ°āĻāĻžāĻŦāĻā§ āĻ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻŋāĻ¤ āĻāĻ°ā§ āĻ¤ā§āĻ˛ā§ āĻāĻŦāĻ
āĻ āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĨ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "sysseek" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
ANSI C āĻāĻ° āĻ¨āĻŋāĻ¯āĻŧāĻŽ āĻāĻŦāĻ āĻāĻ ā§āĻ°āĻ¤āĻžāĻ° āĻāĻžāĻ°āĻŖā§, āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¯āĻāĻ¨āĻ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻāĻĒāĻ¨āĻŋ āĻĒāĻĄāĻŧāĻž āĻāĻŦāĻ āĻ˛ā§āĻāĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĻ¨āĨ¤ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻŋāĻ¨āĻŋāĻ¸ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§, āĻāĻ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
stdio āĻāĻ° āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻāĻžāĻŦ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ°(3)āĨ¤ 1 āĻāĻ° āĻāĻāĻāĻŋ WHENCE ("SEEK_CUR") āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĻāĻ°āĻāĻžāĻ°ā§ā§ˇ
āĻĢāĻžāĻāĻ˛ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸āĻ°āĻžāĻ¨ā§:
āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§āĻ¨(TEST,0,1);
āĻāĻāĻŋ "tail -f" āĻ āĻ¨ā§āĻāĻ°āĻŖāĻāĻžāĻ°ā§ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°āĨ¤ āĻāĻāĻŦāĻžāĻ° āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻĒāĻ° EOF āĻāĻāĻžāĻ¤
āĻĒāĻĄāĻŧā§āĻ¨ āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻŋāĻā§āĻā§āĻˇāĻŖ āĻā§āĻŽāĻžāĻ¨, āĻāĻĒāĻ¨āĻžāĻā§ (āĻ¸āĻŽā§āĻāĻŦāĻ¤) āĻāĻāĻāĻŋ āĻĄāĻžāĻŽāĻŋāĻ¤ā§ āĻāĻāĻā§ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ () āĻĨā§āĻā§
āĻāĻŋāĻ¨āĻŋāĻ¸āĻā§āĻ˛āĻŋ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§āĻ¨āĨ¤ "āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨" āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§ āĻ¨āĻž, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻ¨āĻž āĻļā§āĻˇ-
āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻž, āĻ¯āĻžāĻ¤ā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ "" āĻĒāĻžāĻ°ā§āĻ˛ āĻĒāĻĄāĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŦāĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§
āĻāĻŋāĻā§ (āĻāĻŽāĻ°āĻž āĻāĻļāĻž āĻāĻ°āĻŋ.)
āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻžāĻ āĻ¨āĻž āĻāĻ°ā§ (āĻāĻŋāĻā§ I/O āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻŦāĻŋāĻ¤āĻ°ā§āĻāĻŋāĻ¤), āĻāĻĒāĻ¨āĻŋ
āĻāĻ āĻŽāĻ¤ āĻāĻŋāĻā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§:
āĻāĻ¨ā§āĻ¯ (;;) {
āĻāĻ¨ā§āĻ¯ ($curpos = āĻŦāĻ˛(FILE); $_ = ;
$curpos = āĻŦāĻ˛ā§āĻ¨(āĻĢāĻžāĻāĻ˛)) {
# āĻāĻŋāĻā§ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§āĻ¨ āĻāĻŦāĻ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻ°āĻžāĻā§āĻ¨
}
āĻā§āĻŽ ($for_a_while);
āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§āĻ¨ (āĻĢāĻžāĻāĻ˛, $āĻāĻ°ā§āĻĒā§āĻ¸, 0);
}
āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ā§ āĻĄāĻŋāĻ°āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, POS
DIRHANDLE-āĻ "readdir" āĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸ā§āĻ āĻāĻ°ā§āĨ¤ POS āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨ āĻšāĻ¤ā§ āĻšāĻŦā§
"telldir" āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĻā§āĨ¤ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ "seekdir" āĻāĻ°āĻ āĻāĻāĻ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ°āĻ¯āĻŧā§āĻā§
āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻ°ā§āĻāĻŋāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŽā§āĻĒā§āĻ¯āĻžāĻāĻļāĻ¨.
FILEHANDLE āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨
āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻŋāĻ¤ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ FILEHANDLE āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ˛ā§, āĻ¨āĻ¤ā§āĻ¨ āĻ¸ā§āĻ āĻāĻ°ā§
āĻāĻāĻāĻĒā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĨ¤ āĻāĻ° āĻĻā§āĻāĻŋ āĻĒā§āĻ°āĻāĻžāĻŦ āĻ°āĻ¯āĻŧā§āĻā§: āĻĒā§āĻ°āĻĨāĻŽ, āĻāĻāĻāĻŋ "āĻ˛āĻŋāĻā§āĻ¨" āĻŦāĻž āĻāĻāĻāĻŋ
āĻāĻ FILEHANDLE āĻ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻāĻžāĻĄāĻŧāĻžāĻ "āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ" āĻāĻ°ā§āĻ¨āĨ¤ āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧāĻ¤, āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸
āĻāĻāĻāĻĒā§āĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻāĻ āĻāĻāĻāĻĒā§āĻ āĻā§āĻ¯āĻžāĻ¨ā§āĻ˛ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻŦā§āĨ¤
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻžāĻ§āĻŋāĻ āĻāĻāĻāĻĒā§āĻ āĻā§āĻ¯āĻžāĻ¨ā§āĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒ-āĻ āĻĢ-āĻĢāĻ°ā§āĻŽ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§, āĻāĻĒāĻ¨āĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤āĻāĻŋ āĻāĻ°ā§āĻ¨:
āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ (āĻ°āĻŋāĻĒā§āĻ°ā§āĻ1);
$^ = 'report1_top';
āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ (āĻ°āĻŋāĻĒā§āĻ°ā§āĻ2);
$^ = 'report2_top';
FILEHANDLE āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ¤ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻĻā§āĻ¯āĻŧāĨ¤
āĻāĻāĻžāĻŦā§:
$oldfh = āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨(STDERR); $| = 1; āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨($oldfh);
āĻāĻŋāĻā§ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻžāĻ° āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ¸āĻš āĻŦāĻ¸ā§āĻ¤ā§ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻŦāĻ¤ā§ āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§,
āĻļā§āĻˇ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻāĻŋ āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°ā§:
IO::Handle āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
STDERR->āĻ āĻā§āĻĢā§āĻ˛āĻžāĻļ(ā§¨ā§Ļā§§ā§§);
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨"āĨ¤
RBITS,WBITS,EBITS,TIMEOUT āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨
āĻāĻ āĻāĻ˛ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž(2) syscall āĻŦāĻŋāĻ āĻŽāĻžāĻ¸ā§āĻ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž, āĻ¯āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻ āĻ˛āĻžāĻāĻ¨āĻā§āĻ˛āĻŋ āĻŦāĻ°āĻžāĻŦāĻ° "āĻĢāĻžāĻāĻ˛ā§āĻ¨ā§" āĻāĻŦāĻ "āĻāĻŋāĻāĻ¸āĻŋ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤:
$rin = $win = $ein = '';
vec($rin, fileno(STDIN), 1) = 1;
vec($win, fileno(STDOUT), 1) = 1;
$ein = $rin | $āĻāĻāĻ¨;
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ āĻ¨ā§āĻ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛ā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ˛āĻŋāĻāĻ¤ā§ āĻāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻ:
āĻ¸āĻžāĻŦ fhbits {
āĻāĻŽāĻžāĻ° @fhlist = @_;
āĻāĻŽāĻžāĻ° $āĻŦāĻŋāĻ = "";
āĻāĻŽāĻžāĻ° $fh (@fhlist) {āĻāĻ° āĻāĻ¨ā§āĻ¯
vec($bits, fileno($fh), 1) = 1;
}
$āĻŦāĻŋāĻ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¨;
}
$rin = fhbits(*STDIN, *TTY, *MYSOCK);
āĻĒā§āĻ°āĻāĻ˛āĻŋāĻ¤ āĻŦāĻžāĻāĻ§āĻžāĻ°āĻž āĻšāĻ˛:
($nfound,$timeleft) =
āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨($rout=$rin, $wout=$win, $eout=$ein, $timeout);
āĻ āĻĨāĻŦāĻž āĻāĻŋāĻā§ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ¨āĻž āĻšāĻāĻ¯āĻŧāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻŦā§āĻ˛āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋ āĻāĻ°ā§āĻ¨
$nfound = āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨($rout=$rin, $wout=$win, $eout=$ein, undef);
āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ $timeleft-āĻ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻāĻŋāĻā§ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§ āĻŦāĻŋāĻ°āĻā§āĻ¤ āĻāĻ°ā§ āĻ¨āĻž, āĻ¤āĻžāĻ āĻāĻ˛ āĻāĻ°āĻž āĻšāĻā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨()
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° $nfound āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤
āĻ¯ā§āĻā§āĻ¨ā§ āĻŦāĻŋāĻ āĻŽāĻžāĻ¸ā§āĻāĻ undef āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻžāĻāĻŽāĻāĻāĻ, āĻ¯āĻĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§ āĻšāĻ¯āĻŧ,
āĻ¯āĻž āĻāĻā§āĻ¨āĻžāĻāĻļ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĻā§āĻ˛āĻŋ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻ¨āĻ¯āĻŧā§ˇ
$āĻāĻžāĻāĻŽ āĻŦāĻžāĻā§āĨ¤ āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ°āĻž āĻ¸āĻ°ā§āĻŦāĻĻāĻž $timeleft āĻ¸āĻ°āĻŦāĻ°āĻžāĻšāĻā§āĻ¤ $timeout āĻāĻ° āĻ¸āĻŽāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤
āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻžāĻŦā§ 250 āĻŽāĻŋāĻ˛āĻŋāĻ¸ā§āĻā§āĻ¨ā§āĻĄā§āĻ° āĻā§āĻŽāĻā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨ (undef, undef, undef, 0.25);
āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛ (āĻŦāĻ˛ā§āĻ¨, SIGALRM) āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻĒāĻ°ā§ "āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨" āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻšāĻ¯āĻŧ āĻāĻŋāĻ¨āĻž
āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨-āĻ¨āĻŋāĻ°ā§āĻāĻ°āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ "āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨" āĻāĻ° āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻžāĻ° āĻ¨ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻ āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¤ā§āĻ°ā§āĻāĻŋāĻ¤ā§, "āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨" āĻ āĻŋāĻ āĻŽāĻ¤ āĻāĻāĻ°āĻŖ āĻāĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž(2): āĻāĻāĻŋ -1 āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ $ āĻ¸ā§āĻ āĻāĻ°ā§!
āĻāĻŋāĻā§ āĻāĻāĻ¨āĻŋāĻā§āĻ¸ā§, āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž(2) āĻāĻāĻāĻŋ āĻ¸āĻā§āĻ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§āĻā§ "āĻĒāĻĄāĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ°āĻŋāĻĒā§āĻ°ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻāĻ¨ āĻā§āĻ¨ āĻĄā§āĻāĻž āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ¨āĻž āĻĨāĻžāĻā§, āĻāĻŦāĻ āĻāĻāĻāĻžāĻŦā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¯ā§āĻā§āĻ¨ "āĻĒāĻĄāĻŧāĻž" āĻŦā§āĻ˛āĻ āĻšāĻŦā§āĨ¤ āĻāĻāĻž āĻĒāĻžāĻ°ā§
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻ¸āĻā§āĻā§ O_NONBLOCK āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻŦā§āĻ¨āĨ¤ āĻĻā§āĻāĻž āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž(2) āĻāĻŦāĻ fcntl(2) āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻ āĻ§āĻŋāĻāĻ¤āĻ° āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤.
āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ "IO::Select" āĻŽāĻĄāĻŋāĻāĻ˛ "select" āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§-āĻŦāĻžāĻ¨ā§āĻ§āĻŦ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦāĻŋāĻ-āĻŽāĻžāĻ¸ā§āĻ āĻāĻžāĻ āĻāĻ°ā§āĨ¤
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĻŽā§āĻ˛āĻ: āĻāĻāĻāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŦāĻžāĻĢāĻžāĻ° āĻāĻ°āĻž I/O (āĻ¯ā§āĻŽāĻ¨ "āĻ°āĻŋāĻĄ" āĻŦāĻž ) āĻŽā§āĻļāĻžāĻ¨ā§āĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ
"āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨", POSIX āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻŽā§āĻĻāĻŋāĻ¤ āĻāĻžāĻĄāĻŧāĻž, āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°āĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° POSIX āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĨ¤ āĻ¤ā§āĻŽāĻžāĻ° āĻāĻā§
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "sysread" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨"āĨ¤
semctl ID, SEMNUM, CMD, ARG
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ V IPC āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ āĻāĻ°ā§ semctl(2)āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻŦāĻ˛āĻ¤ā§ āĻšāĻŦā§
IPC::SysV āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¸āĻ āĻŋāĻ āĻ§ā§āĻ°ā§āĻŦāĻ āĻ¸āĻāĻā§āĻāĻž āĻĒā§āĻ¤ā§ āĻĒā§āĻ°āĻĨāĻŽā§āĨ¤ CMD āĻ¯āĻĻāĻŋ IPC_STAT āĻŦāĻž GETALL āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ ARG
āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻšāĻ¤ā§ āĻšāĻŦā§ āĻ¯āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ semid_ds āĻāĻ āĻ¨ āĻŦāĻž āĻ¸ā§āĻŽāĻžāĻĢā§āĻ° āĻŽāĻžāĻ¨ āĻ§āĻ°ā§ āĻ°āĻžāĻāĻŦā§
āĻ ā§āĻ¯āĻžāĻ°ā§ "ioctl" āĻāĻ° āĻŽāĻ¤ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§: āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨, āĻļā§āĻ¨ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ ""0 āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ¤ā§āĻ¯"",
āĻ āĻĨāĻŦāĻž āĻĒā§āĻ°āĻā§āĻ¤ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧāĨ¤ ARG āĻ āĻŦāĻļā§āĻ¯āĻ āĻ¨ā§āĻāĻŋāĻā§āĻ° āĻāĻāĻāĻŋ āĻā§āĻā§āĻāĻ° āĻ¨āĻŋāĻ¯āĻŧā§ āĻāĻ āĻŋāĻ¤
āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻ¯āĻž "pack("s!",(0)x$nsem) āĻĻāĻŋāĻ¯āĻŧā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻĻā§āĻā§āĻ¨ "SysV IPC"
perlipc-āĻ, "IPC::SysV", "IPC::Semaphore" āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "semctl"āĨ¤
āĻ¸ā§āĻŽāĻā§āĻ āĻā§, āĻāĻ¨āĻāĻ¸āĻāĻāĻŽāĻāĻ¸, āĻĒāĻ¤āĻžāĻāĻž
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ V IPC āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ āĻāĻ°ā§ āĻ¸ā§āĻŽāĻā§āĻ(2)āĨ¤ āĻ¸ā§āĻŽāĻžāĻĢā§āĻ° āĻāĻāĻĄāĻŋ āĻŦāĻž āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻĒāĻ° āĻŽāĻžāĻ¨āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ perlipc-āĻ "SysV IPC" āĻĻā§āĻā§āĻ¨, "IPC::SysV", "IPC::SysV::Semaphore"
āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "semget"āĨ¤
semop KEY,OPSTRING
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ V IPC āĻĢāĻžāĻāĻļāĻ¨ āĻāĻ˛ āĻāĻ°ā§ āĻ¸ā§āĻŽāĻĒ(2) āĻ¸ā§āĻŽāĻžāĻĢā§āĻ° āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¯ā§āĻŽāĻ¨ āĻ¸āĻŋāĻāĻ¨ā§āĻ¯āĻžāĻ˛āĻŋāĻ
āĻāĻŦāĻ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻā§āĨ¤ OPSTRING āĻ āĻŦāĻļā§āĻ¯āĻ āĻ¸ā§āĻŽāĻĒ āĻ¸ā§āĻā§āĻ°āĻžāĻāĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻāĻĄ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻšāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¸ā§āĻŽāĻĒ
āĻāĻ āĻ¨ "āĻĒā§āĻ¯āĻžāĻ("s!3", $semnum, $semop, $semflag)" āĻĻāĻŋāĻ¯āĻŧā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻĻā§āĻ°ā§āĻ
OPSTRING āĻāĻ° āĻ¸ā§āĻŽāĻžāĻĢā§āĻ° āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻŦā§āĻāĻžāĻ¯āĻŧāĨ¤ āĻ¸āĻĢāĻ˛ āĻšāĻ˛ā§ āĻ¸āĻ¤ā§āĻ¯ āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§,
āĻā§āĻ˛ā§āĻ° āĻāĻĒāĻ° āĻŽāĻŋāĻĨā§āĻ¯āĻžāĨ¤ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻā§āĻĄ āĻ¸ā§āĻŽāĻžāĻĢā§āĻ° $semnum āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻā§
āĻ¸ā§āĻŽāĻžāĻĢā§āĻ° āĻāĻāĻĄāĻŋ $semid:
$semop = āĻĒā§āĻ¯āĻžāĻ("s!3", $semnum, -1, 0);
āĻĄāĻžāĻ "āĻ¸ā§āĻŽāĻžāĻĢā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: $!\n" āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻ¸ā§āĻŽāĻĒ($semid, $semop);
āĻ¸ā§āĻŽāĻžāĻĢā§āĻ° āĻ¸āĻāĻā§āĻ¤ āĻĻāĻŋāĻ¤ā§, "-1" āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ 1 āĻĻāĻŋāĻ¨āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ perlipc-āĻ "SysV IPC" āĻĻā§āĻā§āĻ¨,
"IPC::SysV", āĻāĻŦāĻ "IPC::SysV::Semaphore" āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "semop"āĨ¤
āĻ¸āĻā§āĻ,āĻāĻŽāĻāĻ¸āĻāĻŋ,āĻĢā§āĻ˛ā§āĻ¯āĻžāĻ,āĻ āĻĒāĻžāĻ āĻžāĻ¨
āĻ¸āĻā§āĻ, āĻāĻŽāĻāĻ¸āĻāĻŋ, āĻĒāĻ¤āĻžāĻāĻž āĻĒāĻžāĻ āĻžāĻ¨
āĻāĻāĻāĻŋ āĻ¸āĻā§āĻā§ āĻāĻāĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒāĻžāĻ āĻžāĻ¯āĻŧāĨ¤ SOCKET-āĻ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° MSG āĻĒāĻžāĻ āĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻā§āĻˇā§āĻāĻž
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻāĻāĻ āĻ¨āĻžāĻŽā§āĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻĒāĻ¤āĻžāĻāĻž āĻ¨ā§āĻ¯āĻŧāĨ¤ āĻ¸āĻāĻ¯ā§āĻāĻšā§āĻ¨ āĻ āĻ¨
āĻ¸āĻā§āĻ, āĻāĻĒāĻ¨āĻžāĻā§ āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻ¤āĻŦā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§ āĻĒāĻžāĻ āĻžāĻ¨ āĻĨā§āĻā§, āĻ¯ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻ°ā§ āĻĒāĻžāĻ āĻžāĻ¨ā§(2)
syscall āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻŦāĻž āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻĻā§āĻ¯
āĻĒāĻžāĻ āĻžāĻ¨(2) syscall āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĨ¤ perlipc-āĻ "UDP: āĻŽā§āĻ¸ā§āĻ āĻĒāĻžāĻ¸āĻŋāĻ" āĻĻā§āĻā§āĻ¨
āĻāĻĻāĻžāĻšāĻ°āĻ¨ āĻ¸ā§āĻŦāĻ°ā§āĻĒ.
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ āĻā§āĻˇāĻ°: āĻ¸āĻā§āĻā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§, āĻšāĻ¯āĻŧ (8-āĻŦāĻŋāĻ) āĻŦāĻžāĻāĻ āĻŦāĻž
āĻ āĻā§āĻˇāĻ° āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻā§āĻ āĻŦāĻžāĻāĻā§ āĻāĻžāĻ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ āĻ¯āĻĻāĻŋ
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻā§āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻŦāĻŋāĻ¨āĻŽā§āĻĄ() ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ(utf8)" I/O āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻžāĻ āĻāĻ°āĻ¤ā§
āĻ¸ā§āĻ¤āĻ° ("āĻāĻĒā§āĻ¨" āĻŦāĻž "āĻāĻĒā§āĻ¨" āĻĒā§āĻ°ā§āĻ¯āĻžāĻāĻŽāĻž, āĻāĻĒā§āĻ¨ āĻĻā§āĻā§āĻ¨), I/O UTF-8 āĻāĻ¨āĻā§āĻĄā§āĻĄ āĻ āĻāĻžāĻ āĻāĻ°āĻŦā§
āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ āĻā§āĻˇāĻ°, āĻŦāĻžāĻāĻ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻāĻāĻāĻžāĻŦā§ ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ" āĻĒā§āĻ°āĻžāĻāĻŽāĻžāĻ° āĻāĻ¨ā§āĻ¯: āĻ¸ā§āĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§
āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻā§āĻ¨ āĻ āĻā§āĻˇāĻ° āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§.
setpgrp PID, PGRP
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ PID āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻˇā§āĻ ā§ āĻ¸ā§āĻ āĻāĻ°ā§, āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ 0āĨ¤
POSIX āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§ āĻ¨āĻž āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§ setpgid(āĻāĻā§āĻ¸āĻāĻ¨āĻāĻŽāĻāĻā§āĻ¸) āĻŦāĻž
āĻŦāĻžāĻ¸āĻĻ setpgrp(2)āĨ¤ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ˛ā§, āĻāĻāĻŋ āĻĄāĻŋāĻĢāĻ˛ā§āĻ "0,0" āĻšāĻ¯āĻŧāĨ¤ āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§
"setpgrp" āĻāĻ° BSD 4.2 āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻā§āĻ¨ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻā§āĻ°āĻšāĻŖ āĻāĻ°ā§ āĻ¨āĻž, āĻ¤āĻžāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "setpgrp(0,0)"
āĻ¸ā§āĻŦāĻš. āĻāĻāĻžāĻĄāĻŧāĻžāĻ "POSIX::setsid()" āĻĻā§āĻā§āĻ¨āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "setpgrp"āĨ¤
āĻ¸ā§āĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ¯āĻž, āĻā§, āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ°
āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž, āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻā§āĻˇā§āĻ ā§ āĻŦāĻž āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ¸ā§āĻ āĻāĻ°ā§āĨ¤ (āĻĻā§āĻāĻž
āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻ¨ āĻāĻ°(2.) āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ āĻ¨āĻž
āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻ¨ āĻāĻ°(2).
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¸ā§āĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ°"āĨ¤
āĻ¸ā§āĻāĻ¸āĻāĻĒāĻ āĻ¸āĻā§āĻ, āĻ˛ā§āĻā§āĻ˛, āĻ āĻĒāĻāĻŋāĻ¨āĻžāĻŽ, āĻ āĻĒāĻāĻŋāĻāĻŋāĻ¯āĻŧāĻžāĻ˛
āĻ āĻ¨ā§āĻ°ā§āĻ§ āĻāĻ°āĻž āĻ¸āĻā§āĻ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻ¸ā§āĻ āĻāĻ°ā§āĨ¤ āĻ¤ā§āĻ°ā§āĻāĻŋāĻ¤ā§ "undef" āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻ§ā§āĻ°ā§āĻŦāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
LEVEL āĻāĻŦāĻ OPNAME-āĻāĻ° āĻāĻ¨ā§āĻ¯ "āĻ¸āĻā§āĻ" āĻŽāĻĄāĻŋāĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ LEVEL āĻāĻ° āĻŽāĻžāĻ¨āĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
getprotobyname āĻĨā§āĻā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤āĨ¤ OPTVAL āĻšāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻāĻĄ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŦāĻž āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž OPTVAL āĻšāĻ˛ āĻĒā§āĻ¯āĻžāĻ("i", OPTVAL) āĻāĻ° āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤ āĻŦāĻŋāĻŦāĻ°āĻŖāĨ¤
āĻāĻāĻāĻŋ āĻ¸āĻā§āĻā§ Nagle āĻāĻ° āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻ āĻā§āĻˇāĻŽ āĻāĻ°āĻžāĻ° āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻ¸āĻā§āĻ qw āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ (IPPROTO_TCP TCP_NODELAY);
setsoccopt($socket, IPPROTO_TCP, TCP_NODELAY, 1);
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¸ā§āĻāĻ¸āĻāĻĒāĻ"āĨ¤
āĻļāĻŋāĻĢāĻ āĻ ā§āĻ¯āĻžāĻ°ā§
EXPR āĻļāĻŋāĻĢāĻ āĻāĻ°ā§āĻ¨
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨
āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻŽāĻžāĻ¨āĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ āĻāĻāĻŋāĻā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ, āĻ ā§āĻ¯āĻžāĻ°ā§āĻāĻŋāĻā§ 1 āĻāĻŦāĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻā§āĻ āĻāĻ°ā§
āĻ¸āĻŦāĻāĻŋāĻā§ āĻ¨āĻŋāĻā§ āĻ¸āĻ°āĻžāĻ¨ā§ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§ āĻā§āĻ¨ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¨āĻž āĻĨāĻžāĻāĻ˛ā§, āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻŽāĻžāĻ¨ āĻ¯āĻĻāĻŋ ARRAY āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ @_ āĻ ā§āĻ¯āĻžāĻ°ā§āĻāĻŋāĻā§ āĻāĻ° āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻ¯ā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¸ā§āĻĨāĻžāĻ¨āĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻāĻ°ā§
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻāĻŦāĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ, āĻāĻŦāĻ @ARGV āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻāĻŦāĻ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§āĻ
āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻ¯ā§āĻāĻā§āĻ˛āĻŋ "āĻāĻāĻžāĻ˛ āĻ¸ā§āĻā§āĻ°āĻŋāĻ", "āĻļā§āĻ°ā§ {}", "INIT {}", "āĻā§āĻ {}" āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻˇā§āĻ āĻŋāĻ¤
"āĻāĻāĻ¨āĻŋāĻāĻā§āĻ {}", āĻāĻŦāĻ "āĻļā§āĻˇ {}" āĻāĻ āĻ¨āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, "āĻļāĻŋāĻĢā§āĻ" āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ° āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻ āĻā§āĻ¤āĻā§āĻ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻāĻžāĻā§āĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ dereferenced āĻāĻ°āĻž āĻšāĻŦā§. āĻāĻ āĻĻāĻŋāĻ
"āĻļāĻŋāĻĢā§āĻ" āĻā§ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻ āĻŋāĻ āĻāĻāĻ°āĻŖ a āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĨ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ¯āĻžāĻ°āĻž āĻāĻ° āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻžāĻā§āĻā§
āĻ°āĻšāĻ¸ā§āĻ¯āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻš āĻĒāĻžāĻ°ā§āĻ˛, āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ°āĻžāĻā§āĻ¨
āĻ¸āĻāĻā§āĻ¤ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻā§āĻŦāĻ˛ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻāĻŋāĻ¨ā§āĻā§āĻā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻ¸-āĻ:
5.014 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻ¸ā§āĻā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§ āĻĒā§āĻļ/āĻĒāĻĒ/āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻāĻžāĻ āĻāĻ°ā§ (āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ)
āĻāĻāĻžāĻĄāĻŧāĻžāĻ "āĻāĻ¨āĻļāĻŋāĻĢā§āĻ", "āĻĒā§āĻļ" āĻāĻŦāĻ "āĻĒāĻĒ" āĻĻā§āĻā§āĻ¨āĨ¤ "shift" āĻāĻŦāĻ "unshift" āĻāĻāĻ āĻāĻžāĻ āĻāĻ°ā§
āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻŦāĻžāĻŽ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤ āĻ¯āĻž "āĻĒāĻĒ" āĻāĻŦāĻ "āĻĒā§āĻļ" āĻĄāĻžāĻ¨ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤ā§ āĻāĻ°ā§āĨ¤
shmctl ID, CMD, ARG
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ V IPC āĻĢāĻžāĻāĻļāĻ¨ shmctl āĻāĻ˛ āĻāĻ°ā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻŦāĻ˛āĻ¤ā§ āĻšāĻŦā§
IPC::SysV āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¸āĻ āĻŋāĻ āĻ§ā§āĻ°ā§āĻŦāĻ āĻ¸āĻāĻā§āĻāĻž āĻĒā§āĻ¤ā§ āĻĒā§āĻ°āĻĨāĻŽā§āĨ¤ āĻ¯āĻĻāĻŋ CMD "IPC_STAT" āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ ARG āĻšāĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻ¯āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ "shmid_ds" āĻāĻžāĻ āĻžāĻŽā§āĻā§ āĻ§āĻ°ā§ āĻ°āĻžāĻāĻŦā§āĨ¤ ioctl āĻāĻ° āĻŽāĻ¤ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨:
āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ "undef"; āĻļā§āĻ¨ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ "0 āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ¤ā§āĻ¯"; āĻāĻŦāĻ āĻĒā§āĻ°āĻā§āĻ¤ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧāĨ¤ āĻĻā§āĻāĻž
āĻāĻāĻžāĻĄāĻŧāĻžāĻ perlipc-āĻ "SysV IPC" āĻāĻŦāĻ "IPC::SysV" āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "shmctl"āĨ¤
shmget āĻā§, āĻ¸āĻžāĻāĻ, āĻĒāĻ¤āĻžāĻāĻž
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ V IPC āĻĢāĻžāĻāĻļāĻ¨ shmget āĻāĻ˛ āĻāĻ°ā§āĨ¤ āĻļā§āĻ¯āĻŧāĻžāĻ° āĻāĻ°āĻž āĻŽā§āĻŽāĻ°āĻŋ āĻ¸ā§āĻāĻŽā§āĻ¨ā§āĻ āĻāĻāĻĄāĻŋ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻŦāĻžā§ˇ
āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻĒāĻ° "undef"āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ perlipc-āĻ "SysV IPC" āĻāĻŦāĻ "IPC::SysV" āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "shmget"āĨ¤
shmread ID,VAR,POS,SIZE
shmwrite ID,STRING,POS,SIZE
POS āĻĒāĻāĻŋāĻļāĻ¨ āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ System V āĻļā§āĻ¯āĻŧāĻžāĻ° āĻāĻ°āĻž āĻŽā§āĻŽāĻ°āĻŋ āĻ¸ā§āĻāĻŽā§āĻ¨ā§āĻ āĻāĻāĻĄāĻŋ āĻĒāĻĄāĻŧā§ āĻŦāĻž āĻ˛ā§āĻā§
āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§, āĻāĻ¨/āĻāĻāĻ āĻāĻĒāĻŋ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻĨā§āĻā§ āĻŦāĻŋāĻā§āĻāĻŋāĻ¨ā§āĻ¨ āĻāĻ°ā§ āĻāĻāĻžāĻ° SIZEāĨ¤ āĻĒāĻĄāĻŧāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ,
VAR āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻāĻŋ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻšāĻ¤ā§ āĻšāĻŦā§ āĻ¯āĻž āĻĄā§āĻāĻž āĻ°āĻŋāĻĄ āĻ§āĻ°ā§ āĻ°āĻžāĻāĻŦā§āĨ¤ āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ¯āĻĻāĻŋ STRINGāĻ āĻšāĻ¯āĻŧ
āĻĻā§āĻ°ā§āĻ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° SIZE āĻŦāĻžāĻāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ; āĻ¯āĻĻāĻŋ STRING āĻā§āĻŦ āĻā§āĻ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻĒā§āĻ°āĻŖ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨āĻžāĻ˛ āĻ˛ā§āĻāĻž āĻšāĻ¯āĻŧ
SIZE āĻŦāĻžāĻāĻāĨ¤ āĻ¸āĻĢāĻ˛ āĻšāĻ˛ā§ āĻ¸āĻ¤ā§āĻ¯, āĻā§āĻ˛ āĻšāĻ˛ā§ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¨āĨ¤ shmread() āĻāĻ˛āĻā§āĻāĻŋāĻ¤ āĻāĻ°ā§
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻāĻāĻžāĻĄāĻŧāĻžāĻ perlipc-āĻ "SysV IPC", "IPC::SysV", āĻāĻŦāĻ "IPC::āĻļā§āĻ¯āĻŧāĻžāĻ°āĻ¯ā§āĻā§āĻ¯" āĻĻā§āĻā§āĻ¨
CPAN āĻĨā§āĻā§ āĻŽāĻĄāĻŋāĻāĻ˛āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "shmread" āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "shmwrite"āĨ¤
āĻļāĻžāĻāĻĄāĻžāĻāĻ¨ āĻ¸āĻā§āĻ, āĻāĻŋāĻāĻžāĻŦā§
HOW āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻ¸āĻā§āĻ āĻ¸āĻāĻ¯ā§āĻ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§, āĻ¯āĻžāĻ° āĻāĻāĻ āĻāĻā§
āĻāĻāĻ āĻ¨āĻžāĻŽā§āĻ° syscall āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž.
āĻļāĻžāĻāĻĄāĻžāĻāĻ¨ (āĻ¸āĻā§āĻ, 0); # āĻāĻŽāĻŋ/āĻāĻŽāĻ°āĻž āĻĄā§āĻāĻž āĻĒāĻĄāĻŧāĻž āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§ āĻĻāĻŋāĻ¯āĻŧā§āĻāĻŋ
āĻļāĻžāĻāĻĄāĻžāĻāĻ¨ (āĻ¸āĻā§āĻ, 1); # āĻāĻŽāĻŋ/āĻāĻŽāĻ°āĻž āĻĄā§āĻāĻž āĻ˛ā§āĻāĻž āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§āĻāĻŋ
āĻļāĻžāĻāĻĄāĻžāĻāĻ¨ (āĻ¸āĻā§āĻ, 2); # āĻāĻŽāĻŋ/āĻāĻŽāĻ°āĻž āĻāĻ āĻ¸āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§ āĻĻāĻŋāĻ¯āĻŧā§āĻāĻŋ
āĻāĻāĻŋ āĻ¸āĻā§āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻ¯āĻāĻ¨ āĻāĻĒāĻ¨āĻŋ āĻ āĻ¨ā§āĻ¯ āĻĒāĻā§āĻˇāĻā§ āĻŦāĻ˛āĻ¤ā§ āĻāĻžāĻ¨ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻ˛ā§āĻāĻž āĻļā§āĻˇ āĻāĻ°ā§āĻā§āĻ¨
āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒāĻĄāĻŧāĻž āĻ¸āĻŽā§āĻĒāĻ¨ā§āĻ¨ āĻ¨āĻž, āĻŦāĻž āĻ¤āĻĻā§āĻŦāĻŋāĻĒāĻ°ā§āĻ¤. āĻāĻāĻž āĻŦāĻ¨ā§āĻ§ āĻāĻāĻāĻŋ āĻāĻ°ā§ āĻā§āĻ°āĻžāĻ˛ā§ āĻĢāĻ°ā§āĻŽ āĻāĻžāĻ°āĻŖ
āĻāĻāĻŋ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¸ā§āĻ¸ā§ āĻ¯ā§āĻā§āĻ¨ āĻāĻžāĻāĻāĻžāĻ¯ā§āĻā§āĻ¤ āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋāĻ¤ā§ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§āĻā§ āĻ¨āĻŋāĻˇā§āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°ā§āĨ¤
āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ 1 āĻĢā§āĻ°āĻ¤; āĻ¤ā§āĻ°ā§āĻāĻŋāĻ¤ā§, āĻĒā§āĻ°āĻĨāĻŽ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻāĻŋ āĻŦā§āĻ§ āĻ¨āĻž āĻšāĻ˛ā§ "undef" āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
filehandle, āĻ āĻĨāĻŦāĻž 0 āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ $ āĻ¸ā§āĻ āĻāĻ°ā§! āĻ āĻ¨ā§āĻ¯ āĻā§āĻ¨ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯āĨ¤
sin EXPR
sin EXPR āĻāĻ° āĻ¸āĻžāĻāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ (āĻ°ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ā§ āĻĒā§āĻ°āĻāĻžāĻļ āĻāĻ°āĻž āĻšāĻ¯āĻŧ)āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻ¸āĻžāĻāĻ¨ āĻ āĻĢ āĻāĻ°ā§
$_
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻ¸āĻžāĻāĻ¨ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻŋ "Math::Trig::asin" āĻĢāĻžāĻāĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻŦāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻ:
sub asin { atan2($_[0], sqrt(1 - $_[0] * $_[0])) }
āĻ¸ā§āĻ˛āĻŋāĻĒ āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻ¸
āĻā§āĻŽ
āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻāĻāĻŋāĻā§ (āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž) EXPR āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻž āĻāĻŋāĻ°āĻ¤āĻ°ā§ āĻā§āĻŽāĻžāĻ¨ā§āĻ° āĻāĻžāĻ°āĻŖ āĻ¯āĻĻāĻŋ āĻā§āĻ¨ā§ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¨āĻž āĻĨāĻžāĻā§
āĻĻā§āĻāĻ¯āĻŧāĻž āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§ āĻā§āĻŽāĻžāĻ¨ā§ āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§āĻ° āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻ¯āĻĻāĻŋ "SIGALRM" āĻāĻ° āĻŽāĻ¤ā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¤ āĻĒāĻžāĻ¯āĻŧ āĻ¤āĻŦā§ āĻŦāĻžāĻ§āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
eval {
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ $SIG{ALARM} = āĻ¸āĻžāĻŦ { āĻĄāĻžāĻ "āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ!\n" };
āĻā§āĻŽ;
};
āĻĄāĻžāĻ $@ āĻ¯āĻĻāĻŋ āĻ¨āĻž $@ eq "āĻāĻ˛āĻžāĻ°ā§āĻŽ!\n";
āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ "āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ" āĻāĻŦāĻ "āĻā§āĻŽ" āĻāĻ˛ āĻŽāĻŋāĻļā§āĻ°āĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž, āĻāĻžāĻ°āĻŖ "āĻā§āĻŽ" āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ āĻšāĻ¯āĻŧ
"āĻ ā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§āĻŽ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻŋāĻā§ āĻĒā§āĻ°āĻžāĻ¨ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ āĻ¨ā§āĻ°ā§āĻ§ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻĒā§āĻ°ā§ āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻāĻŽ āĻā§āĻŽāĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§,
āĻāĻāĻŋ āĻāĻŋāĻāĻžāĻŦā§ āĻ¸ā§āĻā§āĻ¨ā§āĻĄ āĻāĻŖāĻ¨āĻž āĻāĻ°ā§ āĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§āĨ¤ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻāĻ§ā§āĻ¨āĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°ā§āĻŖ āĻĒāĻ°āĻŋāĻŽāĻžāĻŖā§ āĻā§āĻŽāĻžāĻ¯āĻŧāĨ¤
āĻ¤āĻžāĻ°āĻž āĻ¤āĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻā§āĻŽāĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻžāĻ°āĻŖ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋ āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻ¨āĻ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¸ā§āĻ¤ āĻŽāĻžāĻ˛ā§āĻāĻŋāĻāĻžāĻ¸ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤āĨ¤
āĻāĻ āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§āĻ° āĻā§āĻ¯āĻŧā§ āĻ¸ā§āĻā§āĻˇā§āĻŽ āĻā§āĻ°āĻžāĻ¨ā§āĻ˛āĻŋāĻāĻŋ āĻŦāĻŋāĻ˛āĻŽā§āĻŦā§āĻ° āĻāĻ¨ā§āĻ¯, āĻ¸āĻŽāĻ¯āĻŧ::āĻšāĻžāĻāĻ°ā§āĻ¸ āĻŽāĻĄāĻŋāĻāĻ˛ (CPAN āĻĨā§āĻā§,
āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛ āĻĨā§āĻā§ āĻļā§āĻ°ā§ āĻāĻ°ā§ 5.8 āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻĄāĻŋāĻ¸ā§āĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻļāĻ¨ā§āĻ° āĻ āĻāĻļ) āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻ¤ā§āĻŽāĻŋ āĻā§āĻŽāĻžāĻ()āĨ¤ āĻāĻĒāĻ¨āĻŋ
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻžāĻ°-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨() āĻĒā§āĻ°āĻĨāĻŽ āĻ¤āĻŋāĻ¨āĻāĻŋ āĻā§āĻĄāĻŧā§
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤, āĻ āĻĨāĻŦāĻž āĻāĻĒāĻ¨āĻŋ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻ¤ā§ "syscall" āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻ¸ā§āĻāĻāĻžāĻāĻŽāĻžāĻ°(2) āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻāĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§āĨ¤ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlfaq8 āĻĻā§āĻā§āĻ¨āĨ¤
POSIX āĻŽāĻĄāĻŋāĻāĻ˛ā§āĻ° "āĻĒāĻ" āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋāĻ āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¸āĻā§āĻ āĻ¸āĻā§āĻ, āĻĄā§āĻŽā§āĻāĻ¨, āĻāĻžāĻāĻĒ, āĻĒā§āĻ°ā§āĻā§āĻāĻ˛
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻ¸āĻā§āĻ āĻā§āĻ˛ā§ āĻāĻŦāĻ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻ¸āĻā§āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĨ¤ āĻĄā§āĻŽā§āĻāĻ¨,
TYPE, āĻāĻŦāĻ PROTOCOL āĻāĻāĻ āĻ¨āĻžāĻŽā§āĻ° syscall āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻāĻžāĻŦā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻĒāĻ¨āĻŋ
āĻ¸āĻ āĻŋāĻ āĻ¸āĻāĻā§āĻāĻž āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°āĻ¤ā§ āĻĒā§āĻ°āĻĨāĻŽā§ "āĻ¸āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻĻā§āĻā§āĻ¨
"āĻ¸āĻā§āĻāĻ¸: āĻā§āĻ˛āĻžāĻ¯āĻŧā§āĻ¨ā§āĻ/āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻŽāĻŋāĻāĻ¨āĻŋāĻā§āĻļāĻ¨" perlipc-āĻāĨ¤
āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻā§āĻ˛ā§āĻ-āĻ āĻ¨-āĻāĻā§āĻ¸ā§āĻ āĻĒāĻ¤āĻžāĻāĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨āĻāĻžāĻ°ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻ¤ā§, āĻĒāĻ¤āĻžāĻāĻžāĻāĻŋ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻŦā§
āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻ˛āĻž āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§, $^F āĻāĻ° āĻŽāĻžāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤āĨ¤ "$^F" āĻĻā§āĻā§āĻ¨
āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°
āĻ¸āĻā§āĻāĻĒā§āĻ¯āĻŧāĻžāĻ° SOCKET1,SOCKET2,DOMAIN,TYPE,PROTOCOL
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĄā§āĻŽā§āĻ¨ā§, āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻ¸āĻā§āĻā§āĻ° āĻāĻāĻāĻŋ āĻ¨āĻžāĻŽāĻšā§āĻ¨ āĻā§āĻĄāĻŧāĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĨ¤
DOMAIN, TYPE, āĻāĻŦāĻ PROTOCOL āĻāĻāĻ āĻ¨āĻžāĻŽā§āĻ° syscall āĻāĻ° āĻŽāĻ¤ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ
āĻ¯āĻĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¸āĻĢāĻ˛ āĻšāĻ˛ā§ āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤
āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻā§āĻ˛ā§āĻ-āĻ āĻ¨-āĻāĻā§āĻ¸ā§āĻ āĻĒāĻ¤āĻžāĻāĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨āĻāĻžāĻ°ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋāĻ¤ā§, āĻĒāĻ¤āĻžāĻāĻžāĻāĻŋ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻŦā§
āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻ˛āĻž āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§, $^F āĻāĻ° āĻŽāĻžāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤āĨ¤ "$^F" āĻĻā§āĻā§āĻ¨
āĻĒāĻžāĻ°ā§āĻ˛āĻāĻžāĻ°
āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ "āĻ¸āĻā§āĻāĻĒā§āĻ¯āĻŧāĻžāĻ°" āĻāĻ° āĻĒāĻ°āĻŋāĻĒā§āĻ°ā§āĻā§āĻˇāĻŋāĻ¤ā§ "āĻĒāĻžāĻāĻĒ" āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§, āĻ¯ā§āĻāĻžāĻ¨ā§ "āĻĒāĻžāĻāĻĒ(Rdr,
Wtr)" āĻŽā§āĻ˛āĻ¤:
āĻ¸āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¸āĻā§āĻāĻĒā§āĻ¯āĻŧāĻžāĻ°(Rdr, Wtr, AF_UNIX, SOCK_STREAM, PF_UNSPEC);
āĻļāĻžāĻāĻĄāĻžāĻāĻ¨ (Rdr, 1); # āĻĒāĻžāĻ āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ° āĻ˛ā§āĻāĻž āĻ¨ā§āĻ
āĻļāĻžāĻāĻĄāĻžāĻāĻ¨ (Wtr, 0); # āĻ˛ā§āĻāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ° āĻĒāĻĄāĻŧāĻž āĻ¨ā§āĻ
āĻ¸āĻā§āĻāĻĒā§āĻ¯āĻŧāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ perlipc āĻĻā§āĻā§āĻ¨āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ 5.8 āĻāĻŦāĻ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§āĻ¤ā§ āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻāĻ°āĻŦā§
āĻ¸āĻā§āĻāĻĒā§āĻ¯āĻŧāĻžāĻ° āĻāĻāĻĒāĻŋ āĻ¸āĻā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ˛ā§āĻāĻžāĻ˛āĻšā§āĻ¸ā§āĻā§ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¸āĻā§āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¨āĻž
āĻ¸āĻā§āĻ āĻā§āĻĄāĻŧāĻž
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¸āĻā§āĻāĻĒā§āĻ¯āĻŧāĻžāĻ°"āĨ¤
āĻ¸āĻžāĻŦāĻ¨āĻžāĻŽ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¸āĻžāĻāĻžāĻ¨
āĻŦā§āĻ˛āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¸āĻžāĻāĻžāĻ¨
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¸āĻžāĻāĻžāĻ¨
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§, āĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§ āĻ¸āĻžāĻāĻžāĻ¯āĻŧ āĻāĻŦāĻ āĻ¸āĻžāĻāĻžāĻ¨ā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§
āĻĒā§āĻ°āĻ¸āĻā§āĻ, "sort()" āĻāĻ° āĻāĻāĻ°āĻŖ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤āĨ¤
āĻ¯āĻĻāĻŋ SUBNAME āĻŦāĻž BLOCK āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¤ā§āĻ˛āĻ¨āĻž āĻā§āĻ°āĻŽā§ "āĻŦāĻžāĻāĻžāĻ āĻāĻ°ā§āĻ¨"āĨ¤ āĻ¯āĻĻāĻŋ
SUBNAME āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻ¨āĻžāĻŽ āĻĻā§āĻ¯āĻŧ āĻ¯āĻž āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻāĻŽ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻā§āĻŽāĻ¨ āĻšāĻŦā§ āĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§ āĻāĻ° āĻā§āĻ¯āĻŧā§, āĻ¸āĻŽāĻžāĻ¨ āĻŦāĻž 0 āĻāĻ° āĻŦā§āĻļāĻŋ
āĻāĻĻā§āĻļ ("" āĻāĻŦāĻ "cmp" āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻā§āĻ˛āĻŋ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻ°ā§āĻāĻŋāĻ¨ā§ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°āĨ¤)
SUBNAME āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻ¨āĻžāĻŽ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻāĻ¨āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻāĻ°āĻž), āĻ¯ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻŽāĻžāĻ¨
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻā§āĻ¤ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻ¨āĻžāĻŽ (āĻŦāĻž āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸) āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ a āĻāĻ° āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ
SUBNAME, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻŦā§āĻ¨āĻžāĻŽā§, āĻāĻ¨-āĻ˛āĻžāĻāĻ¨ āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻ¯āĻĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ āĻšāĻ¯āĻŧ "($$)", āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§ˇ
@_ āĻ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸, āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯āĨ¤ āĻāĻāĻŋ āĻāĻ¨āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒāĻĄā§āĻ° āĻā§āĻ¯āĻŧā§ āĻ§ā§āĻ°
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°ā§āĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻā§āĻ˛ā§āĻŦāĻžāĻ˛ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ $a āĻāĻŦāĻ $b (āĻ¨ā§āĻā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻĻā§āĻā§āĻ¨)āĨ¤ āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§,
$a āĻāĻŦāĻ $b-āĻā§ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻā§āĻˇāĻŖāĻž āĻāĻ°āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤āĻŽā§āĻā§āĨ¤
āĻ¯āĻĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ XSUB āĻšāĻ¯āĻŧ, āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻā§ āĻ¸ā§āĻā§āĻ¯āĻžāĻā§āĻ° āĻĻāĻŋāĻā§ āĻ ā§āĻ˛ā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ,
āĻ¯ā§āĻāĻžāĻŦā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ XSUBs-āĻ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ $a āĻāĻŦāĻ $b āĻ¸ā§āĻ āĻāĻ°āĻž āĻ¨ā§āĻāĨ¤
āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻŽāĻžāĻ¨ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ.
āĻāĻĒāĻ¨āĻŋ āĻ˛ā§āĻĒ āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻŦāĻžāĻāĻžāĻ āĻŦā§āĻ˛āĻ āĻŦāĻž āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž
perlsyn āĻŦāĻž "goto" āĻ¸āĻš āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĨ¤
āĻ¯āĻāĻ¨ "āĻ˛ā§āĻā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" (āĻāĻŋāĻ¨ā§āĻ¤ā§ "āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ 'āĻ¨āĻ_āĻ āĻā§āĻˇāĻ°' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻ¨āĻ¯āĻŧ) āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧ, "āĻ˛āĻŋāĻ¸ā§āĻ āĻ¸āĻžāĻāĻžāĻ¨"
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻā§āĻ˛ā§āĻļāĻ¨ āĻ˛ā§āĻā§āĻ˛ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ LIST āĻ¸āĻžāĻāĻžāĻ¨āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻāĻžāĻ˛ āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¸āĻžāĻāĻžāĻ¨() āĻŽā§āĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻāĻĒāĻ¨āĻžāĻŽ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ, āĻ āĻ¨ā§āĻāĻāĻž āĻ˛ā§āĻĒā§āĻ° āĻāĻ¨āĻĄā§āĻā§āĻ¸ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻŽāĻ¤ā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻāĻĒāĻ¨āĻžāĻŽ. āĻ¯ā§, āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢāĻŋāĻ°ā§ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¸āĻžāĻāĻžāĻ¨()
(āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻāĻŋ "āĻĢā§āĻ°āĻ", "āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ°" āĻŦāĻž "āĻā§āĻ°ā§āĻĒ") āĻāĻ¸āĻ˛ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋāĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§
āĻŽā§āĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĨ¤ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻā§āĻĄ āĻ˛ā§āĻāĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻĄāĻŧāĻžāĻ¨ā§ āĻāĻāĻŋāĻ¤āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ 5.6 āĻāĻŦāĻ āĻĒā§āĻ°ā§āĻŦā§ āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻā§āĻāĻāĻ¸āĻ°ā§āĻ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻā§āĨ¤ āĻ¯ā§ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻāĻŋāĻ˛
āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛ āĻ¨āĻ¯āĻŧ, āĻ¤āĻžāĻ āĻĒāĻžāĻ°āĻž āĻāĻ¤ā§āĻ°ā§āĻŽā§āĻā§ āĻ¯āĻžāĻ¨ (āĻ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛ sort āĻāĻ° āĻāĻ¨āĻĒā§āĻ āĻ āĻ°ā§āĻĄāĻžāĻ° āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§
āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¯ā§ āĻ¸āĻŽāĻžāĻ¨ āĻ¤ā§āĻ˛āĻ¨āĻž. āĻ¯āĻĻāĻŋāĻ āĻā§āĻāĻāĻ¸āĻ°ā§āĻā§āĻ° āĻ°āĻžāĻ¨ āĻāĻžāĻāĻŽ āĻšāĻ˛ O(NlogN) āĻ¯āĻāĻ¨ āĻāĻĄāĻŧ āĻšāĻ¯āĻŧ
N āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§, āĻ¸āĻŽāĻ¯āĻŧ O(N**2) āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻ¤ā§āĻ°ā§āĻā§āĻ āĻāĻāĻ°āĻŖ, āĻāĻŋāĻā§ āĻāĻ¨ā§āĻ¯
āĻāĻ¨āĻĒā§āĻāĨ¤) 5.7-āĻ, āĻā§āĻāĻāĻ¸āĻ°ā§āĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛ āĻŽāĻžāĻ°ā§āĻāĻ¸āĻ°ā§āĻ āĻĻāĻŋāĻ¯āĻŧā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛
āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻ¯āĻžāĻ° āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻāĻžāĻ°āĻžāĻĒ-āĻā§āĻ¸ āĻāĻāĻ°āĻŖ āĻšāĻ˛ O(NlogN)āĨ¤ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦā§āĻā§āĻāĻŽāĻžāĻ°ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¯ā§ āĻāĻā§āĻāĻŋāĻ¤
āĻāĻŋāĻā§ āĻāĻ¨āĻĒā§āĻ, āĻāĻŋāĻā§ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§, āĻāĻ¸āĻ˛ āĻā§āĻāĻāĻ¸āĻ°ā§āĻ āĻĻā§āĻ°ā§āĻ¤ āĻāĻŋāĻ˛āĨ¤ 5.8 āĻāĻ° āĻāĻāĻāĻŋ āĻ¸āĻžāĻāĻžāĻ¨ā§ āĻāĻā§
āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻ¸ā§āĻŽāĻŋāĻ¤ āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ pragma. āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻāĻ° āĻŦāĻ°āĻ āĻā§āĻāĻ¤āĻž āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ
āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻŋāĻā§ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž, āĻ¤āĻŦā§ āĻāĻ¨āĻĒā§āĻāĻāĻŋāĻā§ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻā§āĻˇāĻŽāĻ¤āĻž
āĻŦāĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻ¸ā§āĻŦāĻžāĻ§ā§āĻ¨ āĻāĻĒāĻžāĻ¯āĻŧā§ āĻāĻāĻāĻĒā§āĻ āĻŦā§āĻļ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻšāĻŦā§. āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻĻā§āĻā§āĻ¨
pragma
āĻāĻĻāĻžāĻšāĻ°āĻŖ:
# āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻāĻāĻžāĻŦā§ āĻ¸āĻžāĻāĻžāĻ¨
@āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ = āĻŦāĻžāĻāĻžāĻ @ āĻĢāĻžāĻāĻ˛;
# āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸ā§āĻĒāĻˇā§āĻ āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻ°ā§āĻāĻŋāĻ¨ āĻ¸āĻš
@āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ = āĻŦāĻžāĻāĻžāĻ {$a cmp $b} @files;
# āĻāĻāĻ¨ āĻā§āĻ¸-āĻ¸āĻāĻŦā§āĻĻāĻ¨āĻļā§āĻ˛āĻāĻžāĻŦā§
@āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ = āĻŦāĻžāĻāĻžāĻ {fc($a) cmp fc($b)} @files;
# āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻā§āĻ°āĻŽā§
@āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ = āĻŦāĻžāĻāĻžāĻ {$b cmp $a} @files;
# āĻŦāĻžāĻāĻžāĻ āĻ¸āĻāĻā§āĻ¯āĻžāĻāĻ¤āĻāĻžāĻŦā§ āĻāĻ°ā§āĻšā§
@āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ = āĻ¸āĻžāĻāĻžāĻ¨ {$a $b} @files;
# āĻŦāĻžāĻāĻžāĻ āĻ¸āĻāĻā§āĻ¯āĻžāĻāĻ¤āĻāĻžāĻŦā§ āĻ āĻŦāĻ°ā§āĻš
@āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ = āĻ¸āĻžāĻāĻžāĻ¨ {$b $a} @files;
# āĻāĻāĻŋ āĻā§ āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻŽāĻžāĻ¨ āĻ āĻ¨ā§āĻ¸āĻžāĻ°ā§ %age āĻšā§āĻ¯āĻžāĻļāĻā§ āĻ¸āĻžāĻāĻžāĻ¯āĻŧ
# āĻāĻāĻāĻŋ āĻāĻ¨-āĻ˛āĻžāĻāĻ¨ āĻĢāĻžāĻāĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
@eldest = āĻ¸āĻžāĻāĻžāĻ¨ { $age{$b} $age{$a} } āĻā§ %age;
āĻ¸ā§āĻ¸ā§āĻĒāĻˇā§āĻ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ¨āĻžāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ # āĻ¸āĻžāĻāĻžāĻ¨
āĻ¸āĻžāĻŦ āĻŦāĻžāĻāĻ {
$age{$a} $age{$b}; # āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ
}
@sortedclass = sort byage @class;
āĻ¸āĻžāĻŦ āĻĒāĻŋāĻāĻ¨ā§āĻ° āĻĻāĻŋāĻā§ { $b cmp $a }
@āĻšā§āĻ¯āĻžāĻ°āĻŋ = qw(āĻā§āĻā§āĻ° āĻŦāĻŋāĻĄāĻŧāĻžāĻ˛ x āĻā§āĻāĻ¨ āĻāĻŦā§āĻ˛);
@āĻāĻ°ā§āĻ = qw(āĻ¯āĻžāĻ¨ āĻ§āĻžāĻāĻ¯āĻŧāĻž āĻāĻ°ā§ yz āĻļāĻžāĻ¸ā§āĻ¤āĻŋāĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻā§āĻĄāĻŧāĻžāĻ˛);
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻŦāĻžāĻāĻžāĻ @āĻšā§āĻ¯āĻžāĻ°āĻŋ;
# AbelCaincatdogx āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻŦāĻžāĻāĻžāĻ āĻĒāĻŋāĻāĻ¨ā§āĻ° āĻĻāĻŋāĻā§ @āĻšā§āĻ¯āĻžāĻ°āĻŋ;
# āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ xdogcatCainAbel
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻŦāĻžāĻāĻžāĻ @george, 'to', @harry;
# AbelAxedCainPunishedcatchaseddoggonetoxyz āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§
# āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°āĻāĻžāĻŦā§ āĻ¸āĻžāĻāĻžāĻ¨ā§ āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻ¤ā§āĻ˛āĻ¨āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸āĻžāĻāĻžāĻ¨ā§
# āĻĒā§āĻ°āĻĨāĻŽ = āĻāĻŋāĻšā§āĻ¨ā§āĻ° āĻĒāĻ°ā§ āĻĒā§āĻ°āĻĨāĻŽ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻŦāĻž
# āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ°ā§āĻāĻ°ā§āĻĄ āĻā§āĻ¸-āĻ āĻ¸āĻāĻŦā§āĻĻāĻ¨āĻļā§āĻ˛āĻāĻžāĻŦā§ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ
āĻāĻŽāĻžāĻ° @āĻ¨āĻ¤ā§āĻ¨ = āĻ¸āĻžāĻāĻžāĻ¨ {
($b =~ /=(\d+)/)[0] ($a =~ /=(\d+)/)[0]
||
fc($a) cmp fc($b)
} @āĻĒā§āĻ°āĻžāĻ¤āĻ¨;
# āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ āĻ¨ā§āĻ āĻŦā§āĻļāĻŋ āĻĻāĻā§āĻˇāĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§;
# āĻāĻŽāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻšāĻžāĻ¯āĻŧāĻ āĻ¸ā§āĻāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦ
# āĻāĻ¤āĻŋāĻ° āĻāĻ¨ā§āĻ¯
āĻāĻŽāĻžāĻ° (@āĻ¸āĻāĻā§āĻ¯āĻž, @āĻā§āĻ¯āĻžāĻĒāĻ¸);
(@āĻĒā§āĻ°āĻ¨ā§) {āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻĒā§āĻļ @nums, ( /=(\d+)/ ? $1 : undef );
push @caps, fc($_);
}
āĻāĻŽāĻžāĻ° @āĻ¨āĻ¤ā§āĻ¨ = @āĻĒā§āĻ°āĻžāĻ¨ā§[ āĻ¸āĻžāĻāĻžāĻ¨ {
$nums[$b] $nums[$a]
||
$caps[$a] cmp $caps[$b]
} 0..$#āĻĒā§āĻ°ā§āĻ¨ā§
];
# āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻā§āĻ¨ā§ āĻā§āĻŽā§āĻĒāĻ¸ āĻāĻžāĻĄāĻŧāĻžāĻ
@āĻ¨āĻ¤ā§āĻ¨ = āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { $_->[0] }
āĻ¸āĻžāĻāĻžāĻ¨ { $b->[1] $a->[1]
||
$a->[2] cmp $b->[2]
} āĻŽāĻžāĻ¨āĻāĻŋāĻ¤ā§āĻ° { [$_, /=(\d+)/, fc($_)] } @old;
# āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻā§āĻāĻžāĻāĻĒ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯ā§āĻā§āĻ¨ā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨
# āĻāĻāĻāĻŋ āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ (āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ¸āĻš)
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯;
āĻ¸āĻžāĻŦ āĻĒāĻŋāĻāĻ¨ āĻĻāĻŋāĻā§ ($$) { $__[1] cmp $__[0]; } # $a āĻāĻŦāĻ $b āĻšāĻ˛
# āĻāĻāĻžāĻ¨ā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻĒā§āĻ°āĻ§āĻžāĻ¨;
@āĻ¨āĻ¤ā§āĻ¨ = āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ¸āĻžāĻāĻžāĻ¨::āĻĒāĻŋāĻāĻ¨ āĻĻāĻŋāĻā§ @āĻĒā§āĻ°āĻžāĻ¤āĻ¨;
# āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽ āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻļā§āĻˇā§ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛āĻ¤āĻžāĻ° āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻāĻŋ
āĻ¸āĻžāĻāĻžāĻ¨ 'āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
@new = sort { substr($a, 3, 5) cmp substr($b, 3, 5) } @old;
# āĻŽāĻžāĻ°ā§āĻāĻ¸āĻ°ā§āĻā§āĻ° āĻā§āĻ° āĻāĻ°ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° (āĻĒāĻžāĻ°ā§āĻ˛ 5.8 āĻāĻ° āĻŦāĻžāĻāĻ°ā§ āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯ āĻ¨āĻ¯āĻŧ)
āĻ¸āĻžāĻāĻžāĻ¨ '_mergesort' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; āĻ¨āĻŋāĻ°ā§ā§āĻ¸āĻžāĻšāĻŋāĻ¤āĻāĻžāĻ°ā§ # āĻ¨ā§āĻ _
@new = sort { substr($a, 3, 5) cmp substr($b, 3, 5) } @old;
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž: āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŦāĻžāĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻāĻŋāĻā§āĻ¯āĻžāĻ˛ āĻ¯āĻ¤ā§āĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻŦāĻžāĻāĻžāĻ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ "find_records(@key)" āĻāĻ˛ āĻāĻ°ā§āĻ¨, āĻāĻĒāĻ¨āĻŋ
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
@contact = āĻ¸āĻžāĻāĻžāĻ¨ { $a cmp $b } find_records @key;
@āĻ¯ā§āĻāĻžāĻ¯ā§āĻ = āĻ¸āĻžāĻāĻžāĻ¨ +āĻĢāĻžāĻāĻ¨ā§āĻĄ_āĻ°ā§āĻāĻ°ā§āĻĄāĻ¸(@āĻā§);
@āĻ¯ā§āĻāĻžāĻ¯ā§āĻ = āĻ¸āĻžāĻāĻžāĻ¨ &find_records(@key);
@āĻ¯ā§āĻāĻžāĻ¯ā§āĻ = āĻ¸āĻžāĻāĻžāĻ¨(find_records(@key));
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻ¤ā§āĻ˛āĻ¨āĻž āĻ°ā§āĻāĻŋāĻ¨ āĻ¸āĻš āĻ ā§āĻ¯āĻžāĻ°ā§ @key āĻ¸āĻžāĻāĻžāĻ¤ā§ āĻāĻžāĻ¨
"find_records()" āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
@contact = āĻ¸āĻžāĻāĻžāĻ¨ { find_records() } @key;
@āĻ¯ā§āĻāĻžāĻ¯ā§āĻ = āĻ¸āĻ°ā§āĻ find_records(@key);
@āĻ¯ā§āĻāĻžāĻ¯ā§āĻ = āĻ¸āĻžāĻāĻžāĻ¨(find_records @key);
@āĻ¯ā§āĻāĻžāĻ¯ā§āĻ = āĻ¸āĻžāĻāĻžāĻ¨(find_records (@key));
āĻāĻĒāĻ¨āĻŋ āĻāĻ ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻā§āĻ¨, āĻāĻĒāĻ¨āĻŋ āĻ āĻŦāĻļā§āĻ¯āĻ āĻ¨āĻž $a āĻāĻŦāĻ $b āĻā§ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻā§āĻˇāĻŖāĻž āĻāĻ°ā§āĻ¨āĨ¤ āĻ¤āĻžāĻ°āĻž āĻĒā§āĻ¯āĻžāĻā§āĻ
āĻŦāĻŋāĻļā§āĻŦāĻŦā§āĻ¯āĻžāĻĒā§ āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ "āĻĒā§āĻ°āĻ§āĻžāĻ¨" āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻĨāĻžāĻā§āĻ¨ āĻāĻŦāĻ āĻāĻžāĻāĻĒ āĻāĻ°ā§āĻ¨
@āĻ¨āĻŋāĻŦāĻ¨ā§āĻ§ = āĻ¸āĻžāĻāĻžāĻ¨ {$b $a} @files;
āĻ¤āĻžāĻ°āĻĒāĻ° $a āĻāĻŦāĻ $b āĻšāĻ˛ $main::a āĻāĻŦāĻ $main::b (āĻŦāĻž $::a āĻāĻŦāĻ $::b), āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ
"FooPack" āĻĒā§āĻ¯āĻžāĻā§āĻ, āĻāĻāĻŋ āĻāĻžāĻāĻĒ āĻāĻ°āĻžāĻ° āĻŽāĻ¤ā§āĻ
@articles = āĻŦāĻžāĻāĻžāĻ {$FooPack::b $FooPack::a} @files;
āĻ¤ā§āĻ˛āĻ¨āĻž āĻĢāĻžāĻāĻļāĻ¨ āĻāĻāĻ°āĻŖ āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨. āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĻā§āĻ¯āĻŧ
(āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ $x[1] āĻŦāĻ˛āĻž $x[2]-āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻāĻŽ āĻāĻŦāĻ āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤āĻ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ
āĻāĻĻāĻžāĻšāĻ°āĻŖ) āĻĢāĻ˛āĻžāĻĢāĻ˛āĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻāĻžāĻŦā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤
āĻāĻžāĻ°āĻŖ "" "undef" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻ¯āĻāĻ¨ āĻā§āĻ¨ āĻāĻāĻāĻŋ āĻ āĻĒāĻžāĻ°ā§āĻ¨ā§āĻĄ "NaN" (āĻ¨āĻŽā§āĻŦāĻ° āĻ¨āĻ¯āĻŧ), āĻ¸āĻ¤āĻ°ā§āĻ āĻĨāĻžāĻā§āĻ¨
"$a $b" āĻāĻ° āĻŽāĻ¤ā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻĢāĻžāĻāĻļāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¸āĻžāĻāĻžāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¯ā§ āĻā§āĻ¨ā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻāĻŋ "NaN"āĨ¤ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻŋāĻ§āĻž āĻ¨ā§āĻ¯āĻŧ āĻ¯ā§ "NaN != NaN" āĻ¯ā§āĻā§āĻ¨āĻ āĻŦāĻžāĻĻ āĻĻāĻŋāĻ¤ā§
āĻāĻ¨āĻĒā§āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĨā§āĻā§ "NaN"āĨ¤
@result = āĻ¸āĻžāĻāĻžāĻ¨ { $a $b } grep { $_ == $_ } @input;
āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸ āĻ ā§āĻ¯āĻžāĻ°ā§, āĻ āĻĢāĻ¸ā§āĻ, āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸ āĻ ā§āĻ¯āĻžāĻ°ā§, āĻ āĻĢāĻ¸ā§āĻ, āĻĻā§āĻ°ā§āĻā§āĻ¯
āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸ āĻ ā§āĻ¯āĻžāĻ°ā§, āĻ āĻĢāĻ¸ā§āĻ
āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸ āĻ ā§āĻ¯āĻžāĻ°ā§
āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸ āĻāĻā§āĻ¸āĻĒā§āĻ°, āĻ āĻĢāĻ¸ā§āĻ, āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸ āĻāĻā§āĻ¸āĻĒā§āĻ°, āĻ āĻĢāĻ¸ā§āĻ, āĻĻā§āĻ°ā§āĻā§āĻ¯
āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸ āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°, āĻ āĻĢāĻ¸ā§āĻ
splice EXPR
āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻĨā§āĻā§ OFFSET āĻāĻŦāĻ LENGTH āĻĻā§āĻŦāĻžāĻ°āĻž āĻŽāĻ¨ā§āĻ¨ā§āĻ¤ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ āĻ¤āĻžāĻĻā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§ā§ˇ
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§, āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§āĨ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§, āĻĨā§āĻā§ āĻ¸āĻ°āĻžāĻ¨ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ ā§āĻ¯āĻžāĻ°ā§ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§, āĻ āĻĒāĻ¸āĻžāĻ°āĻŖ āĻāĻ°āĻž āĻļā§āĻˇ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ, āĻ āĻĨāĻŦāĻž āĻ¨āĻž āĻšāĻ˛ā§ "undef" āĻĻā§āĻ¯āĻŧ
āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧāĨ¤ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§ āĻŦā§āĻĻā§āĻ§āĻŋ āĻŦāĻž āĻ¸āĻā§āĻā§āĻāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻ āĻĢāĻ¸ā§āĻ āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻšāĻ¯āĻŧ
āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻļā§āĻˇ āĻĨā§āĻā§ āĻ āĻ¨ā§āĻ āĻĻā§āĻ°ā§ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ LENGTH āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧ
āĻ āĻĢāĻ¸ā§āĻ āĻĨā§āĻā§ āĻ¸āĻŦāĻāĻŋāĻā§āĨ¤ LENGTH āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻšāĻ˛ā§, āĻĨā§āĻā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧ
āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻļā§āĻˇā§ -LENGTH āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻāĻžāĻĄāĻŧāĻž āĻ āĻĢāĻ¸ā§āĻ āĻāĻāĻŋāĻ¯āĻŧā§ā§ˇ āĻ¯āĻĻāĻŋ āĻāĻāĻ¯āĻŧ āĻ āĻĢāĻ¸ā§āĻ āĻāĻŦāĻ
LENGTH āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¸āĻŦāĻāĻŋāĻā§ āĻ¸āĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ OFFSET āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻļā§āĻˇā§āĻ° āĻ āĻ¤ā§āĻ¤ āĻšāĻ¯āĻŧ āĻāĻŦāĻ a
LENGTH āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻāĻŋāĻ˛, āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻāĻžāĻ°āĻŋ āĻāĻ°ā§ āĻāĻŦāĻ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻļā§āĻˇā§ āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸ āĻāĻ°ā§āĨ¤
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¸āĻŽāĻ¤āĻž āĻ§āĻ°ā§ āĻ°āĻžāĻāĻž āĻšāĻ¯āĻŧā§āĻā§ ( āĻ§āĻ°ā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻā§āĻā§ "$#a >= $i")
āĻĒā§āĻļ(@a,$x,$y) āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸(@a,@a,0,$x,$y)
āĻĒāĻĒ(@a) āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸(@a,-1)
āĻļāĻŋāĻĢāĻ(@a) āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸(@a,0,1)
āĻāĻ¨āĻļāĻŋāĻĢā§āĻ(@a,$x,$y) āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸(@a,0,0,$x,$y)
$a[$i] = $y āĻ¸ā§āĻĒā§āĻ˛āĻŋāĻ¸(@a,$i,1,$y)
"splice" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, n-ary āĻāĻŋāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻ¤ā§:
āĻāĻĒ nary_print {
āĻāĻŽāĻžāĻ° $n = āĻļāĻŋāĻĢāĻ;
āĻ¯āĻāĻ¨ (āĻāĻŽāĻžāĻ° @next_n = splice @_, 0, $n) {
āĻŦāĻ˛ā§āĻ¨ āĻāĻ¯āĻŧā§āĻ¨ āĻāĻ°ā§āĻ¨ q{ -- }, @next_n;
}
}
nary_print(3, qw(abcdefgh));
#āĻāĻŋ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ:
# a -- b -- c
# d -- e -- f
# g -- āĻ
āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, "āĻ¸ā§āĻĒā§āĻ˛āĻŋāĻ¸" āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ° āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻ āĻā§āĻ¤āĻā§āĻ āĻ ā§āĻ¯āĻžāĻ°ā§āĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ dereferenced āĻāĻ°āĻž āĻšāĻŦā§. āĻāĻ āĻĻāĻŋāĻ
"āĻ¸ā§āĻĒā§āĻ˛āĻŋāĻ¸" āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻ āĻŋāĻ āĻāĻāĻ°āĻŖ a āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĨ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ¯āĻžāĻ°āĻž āĻāĻ° āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻžāĻā§āĻā§
āĻ°āĻšāĻ¸ā§āĻ¯āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻš āĻĒāĻžāĻ°ā§āĻ˛, āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ°āĻžāĻā§āĻ¨
āĻ¸āĻāĻā§āĻ¤ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻā§āĻŦāĻ˛ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻāĻŋāĻ¨ā§āĻā§āĻā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻ¸-āĻ:
5.014 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻ¸ā§āĻā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§ āĻĒā§āĻļ/āĻĒāĻĒ/āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻāĻžāĻ āĻāĻ°ā§ (āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ)
āĻŦāĻŋāĻāĻā§āĻ¤/āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨/,āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°,āĻ˛āĻŋāĻŽāĻŋāĻ
āĻŦāĻŋāĻāĻā§āĻ¤/āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨/, āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻ¸
āĻŦāĻŋāĻāĻā§āĻ¤ /PATTERN/
āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°āĻž
āĻ¸ā§āĻā§āĻ°āĻŋāĻ EXPR āĻā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°ā§ āĻāĻŦāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻŦāĻžā§ˇ
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻāĻžāĻ°āĨ¤
āĻ¯āĻĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° PATTERN āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, EXPR āĻĄāĻŋāĻĢāĻ˛ā§āĻ $_ āĻ¤ā§āĨ¤
EXPR-āĻ PATTERN-āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§ āĻāĻŽāĻ¨ āĻ¯ā§āĻā§āĻ¨ āĻāĻŋāĻā§āĻā§ āĻŦāĻŋāĻāĻžāĻāĻ āĻšāĻŋāĻ¸ā§āĻŦā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ āĻ¯āĻž āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°ā§
āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ¤ā§ EXPR (āĻ¯āĻžāĻā§ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ "āĻā§āĻˇā§āĻ¤ā§āĻ°") āĻ¸ā§āĻāĻž āĻāĻ° āĻ¨āĻž āĻŦāĻŋāĻāĻžāĻāĻ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤. āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻ
āĻŦāĻŋāĻāĻžāĻāĻ āĻāĻ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻĻā§āĻ°ā§āĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻŦāĻž āĻāĻŽāĻ¨āĻāĻŋ āĻā§āĻ¨ā§ āĻ āĻā§āĻˇāĻ°āĻ āĻĨāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž (the
āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ, āĻ¯āĻž āĻāĻāĻāĻŋ āĻļā§āĻ¨ā§āĻ¯-āĻĒā§āĻ°āĻ¸ā§āĻĨ āĻŽāĻŋāĻ˛)āĨ¤
āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻ§ā§āĻ°ā§āĻŦāĻ āĻšāĻ¤ā§ āĻšāĻŦā§ āĻ¨āĻž; āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§
āĻ°āĻžāĻ¨āĻāĻžāĻāĻŽā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤
āĻ¯āĻĻāĻŋ PATTERN āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§, EXPR āĻŽā§āĻ¯āĻžāĻ āĻĒāĻāĻŋāĻļāĻ¨ā§ āĻŦāĻŋāĻāĻā§āĻ¤ āĻšāĻ¯āĻŧ (āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§
āĻāĻ°āĻŋāĻ¤ā§āĻ°). āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨ (':', āĻŦāĻŋāĻāĻā§āĻ¤ ('āĻŦāĻŋ', 'āĻāĻŦāĻŋāĻ¸āĻŋ')), "\n";
āĻāĻāĻāĻĒā§āĻ 'a:c' āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻŦāĻŋāĻāĻžāĻāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ 'abc'-āĻ 'b' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻ:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨(':', āĻ¸ā§āĻĒā§āĻ˛āĻŋāĻ(', 'abc')), "\n";
āĻāĻāĻāĻĒā§āĻ 'a:b:c' āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻŦāĻŋāĻāĻžāĻāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŽā§āĻ¯āĻžāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§; āĻāĻāĻāĻžāĻŦā§, āĻāĻžāĻ˛āĻŋ
āĻ¸ā§āĻā§āĻ°āĻŋāĻ EXPR āĻā§ āĻāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
"āĻŦāĻŋāĻāĻā§āĻ¤" āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻŽā§āĻ¯āĻžāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻžāĻ˛āĻŋ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ ("//")
āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻ˛ā§, āĻ¯āĻž āĻāĻ° āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻžāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤
āĻļā§āĻˇ āĻ¸āĻĢāĻ˛ āĻŽā§āĻ¯āĻžāĻ āĻšāĻŋāĻ¸ā§āĻŦā§āĨ¤
āĻ¯āĻĻāĻŋ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ "/^/" āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋāĻā§ āĻŽāĻžāĻ˛ā§āĻāĻŋāĻ˛āĻžāĻāĻ¨ āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ° ("/^/m") āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻ¯ā§āĻšā§āĻ¤ā§ āĻāĻāĻŋ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻā§āĻŦ āĻŦā§āĻļāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤
āĻāĻ°ā§āĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, "āĻŦāĻŋāĻāĻā§āĻ¤" āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻāĻāĻ°āĻŖ āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻāĻ°ā§
āĻā§āĻ˛ āĻ āĻāĻ¸ā§āĻ° āĻ¯āĻāĻ¨ PATTERN āĻšāĻ¯āĻŧ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ āĻŦāĻž a āĻāĻā§āĻˇāĻ°āĻŋāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻāĻāĻŋ āĻāĻāĻ āĻāĻ āĻŋāĻ¤
āĻ¸ā§āĻĨāĻžāĻ¨ āĻ āĻā§āĻˇāĻ° (āĻ¯ā§āĻŽāĻ¨ ' ' āĻŦāĻž "\x20", āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¯ā§āĻŽāĻ¨ "/ /" āĻ¨āĻ¯āĻŧ)āĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻ¯ā§ āĻā§āĻ¨ā§
āĻŦāĻŋāĻāĻžāĻāĻ¨ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻā§ EXPR-āĻ āĻ āĻā§āĻ°āĻŖā§ āĻšā§āĻ¯āĻŧāĻžāĻāĻāĻ¸ā§āĻĒā§āĻ¸ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻšāĻ˛
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻŋāĻā§ "/\s+/" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ; āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻāĻ° āĻŽāĻžāĻ¨ā§ āĻšāĻ˛ āĻā§āĻ¨ āĻ¸āĻāĻ˛āĻā§āĻ¨
āĻ¸āĻžāĻĻāĻž āĻ¸ā§āĻĨāĻžāĻ¨ (āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻāĻāĻ āĻ¸ā§āĻĒā§āĻ¸ āĻ āĻā§āĻˇāĻ° āĻ¨āĻ¯āĻŧ) āĻāĻāĻāĻŋ āĻŦāĻŋāĻāĻžāĻāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻāĻ
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ "//" āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§ āĻŦāĻŋāĻļā§āĻˇ āĻāĻŋāĻāĻŋāĻ¤ā§āĻ¸āĻž āĻāĻĄāĻŧāĻžāĻ¨ā§ āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
" ", āĻāĻ° āĻĢāĻ˛ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻāĻāĻ āĻ¸ā§āĻĒā§āĻ¸ āĻ āĻā§āĻˇāĻ° āĻāĻāĻāĻŋ āĻŦāĻŋāĻāĻžāĻāĻ āĻšāĻ¤ā§ āĻĻā§āĻ¯āĻŧā§ˇ āĻāĻ° āĻāĻā§
āĻĒāĻžāĻ°ā§āĻ˛āĻ¸ āĻāĻ āĻŦāĻŋāĻļā§āĻˇ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ āĻĒā§āĻ˛ā§āĻāĻ¨ " " āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻāĻŋāĻ˛
āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻ¯ā§āĻā§āĻ¤āĻŋ, āĻĒāĻžāĻ°ā§āĻ˛ 5.18.0 āĻāĻŦāĻ āĻĒāĻ°ā§ āĻāĻ āĻŦāĻŋāĻļā§āĻˇ āĻā§āĻ¸āĻāĻŋ āĻ¯ā§ āĻā§āĻ¨ā§ āĻĻā§āĻŦāĻžāĻ°āĻž āĻā§āĻ°āĻŋāĻāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¯āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¸ā§āĻā§āĻ°āĻŋāĻ " " āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, PATTERN āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻāĻāĻāĻŋ āĻāĻāĻ āĻ¸ā§āĻĒā§āĻ¸ā§, " ", āĻĒā§āĻ°ā§āĻŦā§ āĻā§āĻ°āĻŋāĻāĻžāĻ° āĻāĻ°ā§
āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻ āĻāĻ¸ā§āĻ° āĻ āĻ¨ā§āĻāĻ°āĻŖ
āĻ¯āĻĻāĻŋ LIMIT āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻāĻ¤āĻŋāĻŦāĻžāĻāĻ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ āĻ¸āĻāĻā§āĻ¯āĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻāĻ°ā§
āĻ¯āĻž EXPR āĻŦāĻŋāĻāĻā§āĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§; āĻ āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, LIMIT āĻšāĻ˛ āĻ¸āĻ°ā§āĻŦā§āĻā§āĻ āĻĨā§āĻā§ āĻŦāĻĄāĻŧ
EXPR āĻāĻ¤āĻŦāĻžāĻ° āĻŦāĻŋāĻāĻā§āĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻāĻžāĻŦā§, LIMIT āĻŽāĻžāĻ¨ 1 āĻŽāĻžāĻ¨ā§ EXPR āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ āĻļā§āĻ¨ā§āĻ¯ āĻŦāĻžāĻ° āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°ā§āĻ¨, āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ āĻāĻāĻāĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨ (āĻ¯ā§āĻŽāĻ¨, āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ
EXPR āĻāĻ° āĻŽāĻžāĻ¨)āĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨ (':', āĻŦāĻŋāĻāĻā§āĻ¤ (//, 'abc', 1)), "\n";
āĻāĻāĻāĻĒā§āĻ 'abc' āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§, āĻāĻŦāĻ āĻāĻāĻŋ:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨ (':', āĻŦāĻŋāĻāĻā§āĻ¤ (//, 'abc', 2)), "\n";
āĻāĻāĻāĻĒā§āĻ 'a:bc' āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§, āĻāĻŦāĻ āĻāĻāĻā§āĻ˛āĻŋāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨ (':', āĻŦāĻŋāĻāĻā§āĻ¤ (//, 'abc', 3)), "\n";
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨ (':', āĻŦāĻŋāĻāĻā§āĻ¤ (//, 'abc', 4)), "\n";
āĻāĻāĻāĻĒā§āĻ 'a:b:c' āĻā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ LIMIT āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻāĻŋāĻā§ āĻāĻā§āĻāĻžāĻā§āĻ¤āĻāĻžāĻŦā§ āĻŦāĻĄāĻŧ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ; āĻ āĻ¨ā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§
āĻ¸āĻŽā§āĻāĻŦ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻāĻ¤ā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻšāĻ¯āĻŧ.
āĻ¯āĻĻāĻŋ LIMIT āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ (āĻŦāĻž, āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯āĻāĻžāĻŦā§, āĻļā§āĻ¨ā§āĻ¯), āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻŽāĻ¨āĻāĻžāĻŦā§ āĻ§āĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§āĻ¨ āĻāĻāĻŋ āĻāĻŋāĻ˛
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻ¯ā§ āĻĒāĻŋāĻāĻ¨ā§āĻ° āĻāĻžāĻ˛āĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ āĻāĻŋāĻ¨āĻ¤āĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ (āĻāĻžāĻ˛āĻŋ
āĻ¨ā§āĻ¤ā§āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻšāĻ¯āĻŧ); āĻ¯āĻĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻāĻžāĻ˛āĻŋ āĻĨāĻžāĻā§, āĻ¤āĻŦā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ
āĻĒāĻŋāĻāĻŋāĻ¯āĻŧā§ āĻĨāĻžāĻāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ (āĻāĻŦāĻ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻāĻāĻžāĻŦā§ āĻāĻŋāĻ¨āĻ¤āĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ)āĨ¤ āĻ¸ā§āĻ¤āĻ°āĻžāĻ, āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨(':', āĻŦāĻŋāĻāĻā§āĻ¤(',', 'a,b,c,,')), "\n";
āĻāĻāĻāĻĒā§āĻ 'a:b:c' āĻāĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨(':', āĻŦāĻŋāĻāĻā§āĻ¤(',', 'a,b,c,,', -1)), "\n";
āĻāĻāĻāĻĒā§āĻ 'a:b:c:::' āĻā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°ā§āĨ¤
āĻ¸āĻŽāĻ¯āĻŧ-āĻ¸āĻŽāĻžāĻ˛ā§āĻāĻ¨āĻžāĻŽā§āĻ˛āĻ āĻ ā§āĻ¯āĻžāĻĒā§āĻ˛āĻŋāĻā§āĻļāĻ¨āĻā§āĻ˛āĻŋāĻ¤ā§, āĻāĻ°āĻ āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋāĻ¤ā§ āĻŦāĻŋāĻāĻā§āĻ¤ āĻšāĻāĻ¯āĻŧāĻž āĻāĻĄāĻŧāĻžāĻ¨ā§ āĻ¸āĻžāĻ°ā§āĻĨāĻ
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ° āĻ¤ā§āĻ˛āĻ¨āĻžāĻ¯āĻŧ āĻāĻāĻāĻžāĻŦā§, āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻ¯āĻĻāĻŋ LIMIT āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ (āĻŦāĻž āĻļā§āĻ¨ā§āĻ¯), āĻ¤āĻžāĻšāĻ˛ā§
LIMIT-āĻā§ āĻāĻŽāĻ¨āĻāĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§āĻ¨ āĻāĻāĻŋ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻ¨ā§āĻ¯, LIMIT āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤āĻāĻžāĻŦā§ 3:
($āĻ˛āĻāĻāĻ¨, $passwd) = āĻŦāĻŋāĻāĻā§āĻ¤(/:/);
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ EXPR āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°āĻž āĻ¯āĻž āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°ā§ āĻ¤āĻž āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻļā§āĻ¨ā§āĻ¯ āĻā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°ā§
āĻā§āĻˇā§āĻ¤ā§āĻ°, āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ LIMIT āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻļā§āĻˇā§āĨ¤
āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻ§āĻ¨āĻžāĻ¤ā§āĻŽāĻ-āĻĒā§āĻ°āĻ¸ā§āĻĨ āĻŽāĻŋāĻ˛ āĻĨāĻžāĻā§ āĻ¤āĻāĻ¨ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻ āĻā§āĻ°āĻŖā§ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¤ā§āĻ°āĻŋ āĻšāĻ¯āĻŧā§ˇ
EXPR āĻāĻ° āĻļā§āĻ°ā§āĨ¤ āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨ (':', āĻŦāĻŋāĻāĻā§āĻ¤ (/ /, ' abc')), "\n";
āĻāĻāĻāĻĒā§āĻ ':abc' āĻā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, EXPR āĻāĻ° āĻļā§āĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻļā§āĻ¨ā§āĻ¯-āĻĒā§āĻ°āĻ¸ā§āĻĨ āĻŽā§āĻ¯āĻžāĻ
āĻāĻāĻ¨āĻ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ āĻ¨āĻž, āĻ¯āĻžāĻ¤ā§:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨ (':', āĻŦāĻŋāĻāĻā§āĻ¤(//, 'abc'));
āĻāĻāĻāĻĒā§āĻ ':a:b:c' (': :a:b:c' āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§) āĻā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°ā§āĨ¤
āĻ āĻ¨ā§āĻ¯āĻĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻāĻžāĻ˛āĻŋ āĻā§āĻ°ā§āĻ˛āĻŋāĻ āĻĢāĻŋāĻ˛ā§āĻĄ āĻ¤ā§āĻ°āĻŋ āĻšāĻ¯āĻŧ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻŽā§āĻ¯āĻžāĻ āĻĨāĻžāĻā§
EXPR-āĻāĻ° āĻļā§āĻˇ, āĻŽā§āĻ¯āĻžāĻā§āĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻļā§āĻˇā§ (āĻ āĻŦāĻļā§āĻ¯āĻ, āĻāĻāĻāĻŋ āĻļā§āĻ¨ā§āĻ¯ āĻ¸ā§āĻŽāĻž āĻ¨āĻž āĻĨāĻžāĻāĻ˛ā§
āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻā§āĻˇā§āĻ¤ā§āĻ°āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ, āĻ¯ā§āĻŽāĻ¨ āĻļā§āĻˇ āĻāĻĻāĻžāĻšāĻ°āĻŖā§)āĨ¤ āĻāĻāĻāĻžāĻŦā§:
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨(':', āĻ¸ā§āĻĒā§āĻ˛āĻŋāĻ(//, 'abc', -1)), "\n";
āĻāĻāĻāĻĒā§āĻ ':a:b:c:' āĻā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ PATTERN-āĻ āĻā§āĻ¯āĻžāĻĒāĻāĻžāĻ°āĻŋāĻ āĻā§āĻ°ā§āĻĒ āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦāĻŋāĻāĻžāĻāĻā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻāĻŋ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻā§āĻˇā§āĻ¤ā§āĻ°
āĻāĻāĻāĻŋ āĻā§āĻˇā§āĻ ā§ āĻĻā§āĻŦāĻžāĻ°āĻž āĻā§āĻ¯āĻžāĻĒāĻāĻžāĻ° āĻāĻ°āĻž āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ¤ā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻšāĻ¯āĻŧ (āĻ¯ā§ āĻā§āĻ°āĻŽā§ āĻā§āĻˇā§āĻ ā§āĻā§āĻ˛āĻŋ
āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻŦā§āĻ¯āĻžāĻ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§); āĻ¯āĻĻāĻŋ āĻā§āĻ¨ āĻā§āĻ°ā§āĻĒ āĻŽā§āĻ˛ā§ āĻ¨āĻž, āĻ¤āĻžāĻšāĻ˛ā§ āĻ¤āĻž āĻā§āĻ¯āĻžāĻĒāĻāĻžāĻ° āĻāĻ°ā§
āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "undef" āĻŽāĻžāĻ¨āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ, āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻā§āĻˇā§āĻ¤ā§āĻ°
āĻāĻ¤ā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¯āĻāĻ¨āĻ āĻāĻāĻāĻŋ āĻŦāĻŋāĻāĻžāĻāĻ āĻĨāĻžāĻā§ (āĻ āĻ°ā§āĻĨāĻžā§, āĻ¯āĻāĻ¨āĻ āĻāĻāĻāĻŋ āĻŦāĻŋāĻāĻžāĻāĻ¨ āĻāĻā§), āĻāĻŦāĻ āĻ¯ā§āĻŽāĻ¨
āĻāĻāĻāĻŋ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻāĻ°ā§ āĻ¨āĻž āĻ¸ā§āĻŽāĻžāĻ° āĻĻāĻŋāĻā§ āĻāĻŖāĻ¨āĻž āĻāĻ°ā§āĻ¨āĨ¤ āĻ¨āĻŋāĻŽā§āĻ¨ā§āĻā§āĻ¤ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ (āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯):
āĻŦāĻŋāĻāĻā§āĻ¤ (/-|,/, "1-10,20", 3)
# ('1', '10', '20')
āĻŦāĻŋāĻāĻā§āĻ¤(/(-|,)/, "1-10,20", 3)
# ('1', '-', '10', ',', '20')
āĻŦāĻŋāĻāĻā§āĻ¤ (/-|(,)/, "1-10,20", 3)
# ('1', undef, '10', ',', '20')
āĻŦāĻŋāĻāĻā§āĻ¤(/(-)|,/, "1-10,20", 3)
# ('1', '-', '10', undef, '20')
āĻŦāĻŋāĻāĻā§āĻ¤(/(-)|(,)/, "1-10,20", 3)
# ('1', '-', undef, '10', undef, ',', '20')
āĻ¸ā§āĻĒā§āĻ°āĻŋāĻ¨ā§āĻāĻĢ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
C āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ "printf" āĻāĻ¨āĻā§āĻ¨āĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
"sprintf"āĨ¤ āĻāĻ°ā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¨ā§āĻā§ āĻĻā§āĻā§āĻ¨ āĻāĻŦāĻ āĻĻā§āĻā§āĻ¨ āĻ¸ā§āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ(āĻāĻā§āĻ¸āĻāĻ¨āĻāĻŽāĻāĻā§āĻ¸) āĻŦāĻž printf,(3) āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¨ā§āĻ¤āĻŋāĻ° āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯āĨ¤
āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
# 8āĻāĻŋ āĻ āĻā§āĻ°āĻŖā§ āĻļā§āĻ¨ā§āĻ¯ āĻ¸āĻš āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻ¨āĻŽā§āĻŦāĻ°
$result = sprintf("%08d", $number);
# āĻŦā§āĻ¤ā§āĻ¤āĻžāĻāĻžāĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĻāĻļāĻŽāĻŋāĻ āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ° āĻĒāĻ°ā§ 3 āĻ¸āĻāĻā§āĻ¯āĻžāĻ¯āĻŧ
$rounded = sprintf("%.3f", $number);
āĻĒāĻžāĻ°ā§āĻ˛ āĻ¤āĻžāĻ° āĻ¨āĻŋāĻāĻ¸ā§āĻŦ "sprintf" āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻāĻŋāĻ āĻāĻ°ā§: āĻāĻāĻŋ C āĻĢāĻžāĻāĻļāĻ¨ āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻāĻ°ā§ āĻ¸ā§āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ(3), āĻāĻŋāĻ¨ā§āĻ¤ā§
āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻžāĻĄāĻŧāĻž āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¨āĻž, āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ°āĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ
āĻ¸āĻāĻļā§āĻ§āĻ āĻ āĻ¨ā§āĻŽā§āĻĻāĻŋāĻ¤āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻŽāĻ§ā§āĻ¯ā§ āĻ -āĻŽāĻžāĻ¨āĻ āĻāĻā§āĻ¸āĻā§āĻ¨āĻļāĻ¨ āĻ¸ā§āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ(3) āĻ¤āĻžāĻ
āĻĒāĻžāĻ°ā§āĻ˛ āĻĨā§āĻā§ āĻ āĻ¨ā§āĻĒāĻ˛āĻŦā§āĻ§āĨ¤
"printf" āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, "sprintf" āĻāĻĒāĻ¨āĻŋ āĻ¯āĻāĻ¨ āĻāĻāĻŋ āĻĒāĻžāĻ¸ āĻāĻ°ā§āĻ¨ āĻ¤āĻāĻ¨ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻž āĻŦā§āĻāĻžāĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻž āĻāĻ°ā§ āĻ¨āĻž
āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ ā§āĻ¯āĻžāĻ°ā§. āĻ ā§āĻ¯āĻžāĻ°ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° 0 āĻ¤āĻŽ āĻāĻĒāĻžāĻĻāĻžāĻ¨, āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻŖāĻ¨āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ ā§āĻ¯āĻžāĻ°ā§, āĻ¯āĻž āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻāĻāĻ¨āĻ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻ¨āĻ¯āĻŧāĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° "sprintf" āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻ¸āĻžāĻ°ā§āĻŦāĻāĻ¨ā§āĻ¨āĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ:
%% āĻāĻāĻāĻŋ āĻļāĻ¤āĻžāĻāĻļ āĻāĻŋāĻšā§āĻ¨
%c āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¸āĻš āĻāĻāĻāĻŋ āĻ āĻā§āĻˇāĻ°
%s āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ
%d āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŋāĻ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻĻāĻļāĻŽāĻŋāĻā§
%u āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻĻāĻļāĻŽāĻŋāĻā§
%o āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻ āĻā§āĻāĻžāĻ˛
%x āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻšā§āĻā§āĻ¸āĻžāĻĄā§āĻ¸āĻŋāĻŽā§āĻ˛ā§
āĻŦā§āĻā§āĻāĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻŦāĻ°āĻ˛āĻŋāĻĒāĻŋāĻ¤ā§ %e āĻāĻāĻāĻŋ āĻāĻžāĻ¸āĻŽāĻžāĻ¨-āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻ¸āĻāĻā§āĻ¯āĻž
%f āĻāĻāĻāĻŋ āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻāĻā§āĻ¯āĻž, āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĻāĻļāĻŽāĻŋāĻ āĻ¸ā§āĻŦāĻ°āĻ˛āĻŋāĻĒāĻŋāĻ¤ā§
%g āĻāĻāĻāĻŋ āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻāĻā§āĻ¯āĻž, %e āĻŦāĻž %f āĻ¨ā§āĻā§āĻļāĻ¨ā§
āĻāĻĒāĻ°āĻ¨ā§āĻ¤ā§, āĻĒāĻžāĻ°ā§āĻ˛ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻŦā§āĻ¯āĻžāĻĒāĻāĻāĻžāĻŦā§-āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ:
%X %x āĻāĻ° āĻŽāĻ¤, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻĄāĻŧ āĻšāĻžāĻ¤ā§āĻ° āĻ āĻā§āĻˇāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
%E āĻāĻ° āĻŽāĻ¤ā§ %e, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻšāĻžāĻ¤ā§āĻ° "E" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
%G āĻāĻ° āĻŽāĻ¤ā§ %g, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻšāĻžāĻ¤ā§āĻ° "E" āĻ¸āĻš (āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻ¯ā§āĻā§āĻ¯ āĻšāĻ¯āĻŧ)
%b āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž, āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋāĻ¤ā§
%b āĻāĻ° āĻŽāĻ¤ %b, āĻāĻŋāĻ¨ā§āĻ¤ā§ # āĻĒāĻ¤āĻžāĻāĻž āĻ¸āĻš āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻšāĻžāĻ¤ā§āĻ° "B" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
%p āĻāĻāĻāĻŋ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° (āĻšā§āĻā§āĻ¸āĻžāĻĄā§āĻ¸āĻŋāĻŽā§āĻ˛ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻŽāĻžāĻ¨ā§āĻ° āĻ āĻŋāĻāĻžāĻ¨āĻž āĻāĻāĻāĻĒā§āĻ āĻāĻ°ā§)
%n āĻŦāĻŋāĻļā§āĻˇ: *āĻ¸āĻā§āĻāĻ¯āĻŧ āĻāĻ°ā§* āĻāĻāĻ¨ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻāĻāĻĒā§āĻ āĻ¸āĻāĻā§āĻ¯āĻž
āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ¯ā§āĻā§āĻ¤āĻŋāĻ¤ā§
āĻāĻāĻāĻŋ āĻšā§āĻā§āĻ¸āĻžāĻĄā§āĻ¸āĻŋāĻŽā§āĻ˛ āĻĢā§āĻ˛ā§āĻāĻŋāĻ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ
%A āĻāĻ° āĻŽāĻ¤ %a, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻĄāĻŧ āĻšāĻžāĻ¤ā§āĻ° āĻ āĻā§āĻˇāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻ āĻŦāĻļā§āĻˇā§, āĻĒāĻļā§āĻāĻžāĻĻāĻĒāĻĻ (āĻāĻŦāĻ āĻāĻŽāĻ°āĻž "āĻ āĻā§āĻ°āĻ¸āĻ°") āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻā§āĻ˛āĻŋāĻā§ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ
āĻ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦā§āĻ¯āĻžāĻĒāĻāĻāĻžāĻŦā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°:
%ia %d āĻāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻļāĻŦā§āĻĻ
%D %ld-āĻāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻļāĻŦā§āĻĻ
%U %lu āĻāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻļāĻŦā§āĻĻ
%O %lo āĻāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻļāĻŦā§āĻĻ
%F %f āĻāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻļāĻŦā§āĻĻ
āĻ˛āĻā§āĻˇā§āĻ¯ āĻāĻ°ā§āĻ¨ āĻ¯ā§ %e, %E āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻ¤ā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻŦā§āĻā§āĻāĻžāĻ¨āĻŋāĻ āĻ¸ā§āĻŦāĻ°āĻ˛āĻŋāĻĒāĻŋāĻ¤ā§ āĻ¸ā§āĻāĻ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻ¸āĻāĻā§āĻ¯āĻž
100-āĻāĻ° āĻāĻŽ āĻ¸ā§āĻāĻā§āĻ° āĻŽāĻĄā§āĻ˛āĻžāĻ¸ āĻ¸āĻš āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ %g āĻāĻŦāĻ %G āĻšāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ-
āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻļā§āĻ˛: āĻāĻāĻŋ āĻ¤āĻŋāĻ¨ āĻŦāĻž āĻ¤āĻžāĻ° āĻāĻŽ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻļā§āĻ¨ā§āĻ¯-āĻĒā§āĻ¯āĻžāĻĄā§āĻĄ)āĨ¤ āĻ āĻ¨ā§āĻ¯ āĻāĻĨāĻžāĻ¯āĻŧ, 1.23
āĻĻāĻļ āĻĨā§āĻā§ 99 āĻ¤āĻŽ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻšāĻ¯āĻŧ "1.23e99" āĻŦāĻž "1.23e099" āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻāĻāĻžāĻŦā§ %a āĻāĻŦāĻ %A-āĻāĻ° āĻāĻ¨ā§āĻ¯:
āĻ¸ā§āĻāĻ āĻŦāĻž āĻšā§āĻā§āĻ¸āĻžāĻĄā§āĻ¸āĻŋāĻŽā§āĻ˛ āĻ¸āĻāĻā§āĻ¯āĻžāĻā§āĻ˛āĻŋ āĻāĻžāĻ¸āĻ¤ā§ āĻĒāĻžāĻ°ā§: āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§ "āĻ˛āĻ āĻĄāĻŦāĻ˛āĻ¸" āĻĒāĻžāĻ°ā§āĻ˛
āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ āĻŦāĻŋāĻāĻ˛ā§āĻĒ āĻŦāĻŋāĻ¸ā§āĻŽāĻ¯āĻŧā§āĻ° āĻāĻžāĻ°āĻŖ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§.
"%" āĻāĻŦāĻ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§, āĻāĻĒāĻ¨āĻŋ āĻāĻŋāĻā§ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§āĻ° āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻāĻ°āĻžāĨ¤ āĻā§āĻ°āĻŽā§, āĻāĻā§āĻ˛āĻŋ āĻšāĻ˛:
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻ¸ā§āĻāĻ
āĻāĻāĻāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻĒāĻ°āĻžāĻŽāĻŋāĻ¤āĻŋ āĻ¸ā§āĻāĻ, āĻ¯ā§āĻŽāĻ¨ "2$"āĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ sprintf āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻšāĻŦā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¨āĻŋāĻ¤ā§ āĻĻā§āĻ¯āĻŧ
āĻāĻĻā§āĻļā§āĻ° āĻŦāĻžāĻāĻ°ā§:
printf '%2$d %1$d', 12, 34; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "34 12"
printf '%3$d %d %1$d', 1, 2, 3; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "3 1 1"
āĻĒāĻ¤āĻžāĻāĻž
āĻāĻ āĻŦāĻž āĻāĻāĻžāĻ§āĻŋāĻ:
āĻāĻāĻāĻŋ āĻ¸ā§āĻĒā§āĻ¸ āĻ¸āĻš āĻ¸ā§āĻĒā§āĻ¸ āĻĒā§āĻ°āĻŋāĻĢāĻŋāĻā§āĻ¸ āĻ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ¸āĻāĻā§āĻ¯āĻž
+ āĻāĻāĻāĻŋ āĻĒā§āĻ˛āĻžāĻ¸ āĻāĻŋāĻšā§āĻ¨ āĻ¸āĻš āĻ -āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻĒāĻ¸āĻ°ā§āĻ
- āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŦāĻžāĻŽ-āĻāĻžāĻ¸ā§āĻāĻŋāĻĢāĻžāĻ
0 āĻļā§āĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻ¸ā§āĻĒā§āĻ¸ āĻ¨āĻ¯āĻŧ, āĻĄāĻžāĻ¨-āĻāĻžāĻ¸ā§āĻāĻŋāĻĢāĻžāĻ āĻāĻ°āĻ¤ā§
# āĻ¯ā§āĻā§āĻ¨ā§ āĻ āĻā§āĻāĻžāĻ˛ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻā§āĻ°āĻŖā§ "0" āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§āĻ¨,
"0x" āĻŦāĻž "0X" āĻ¸āĻš āĻ -āĻļā§āĻ¨ā§āĻ¯ āĻšā§āĻā§āĻ¸āĻžāĻĄā§āĻ¸āĻŋāĻŽā§āĻ˛ āĻāĻĒāĻ¸āĻ°ā§āĻ,
"0b" āĻŦāĻž "0B" āĻ¸āĻš āĻ -āĻļā§āĻ¨ā§āĻ¯ āĻŦāĻžāĻāĻ¨āĻžāĻ°āĻŋ āĻāĻĒāĻ¸āĻ°ā§āĻ
āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
printf '', 12; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 12; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 06; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 12; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 12; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 12; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 12; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 12; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻĒā§āĻ˛āĻžāĻ¸ āĻāĻŋāĻšā§āĻ¨ āĻāĻāĻŦāĻžāĻ°ā§ āĻĒāĻ¤āĻžāĻāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻāĻāĻŋ āĻĒā§āĻ˛āĻžāĻ¸ āĻāĻŋāĻšā§āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻ§āĻ¨āĻžāĻ¤ā§āĻŽāĻ āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻĒāĻ¸āĻ°ā§āĻ āĻāĻ°āĻ¤ā§āĨ¤
printf '', 12; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 12; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
āĻ¯āĻāĻ¨ %o āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°ā§ # āĻĒāĻ¤āĻžāĻāĻž āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ¤āĻāĻ¨ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻšāĻ¯āĻŧ
āĻ āĻā§āĻ°āĻŖā§ "0" āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ˛ā§ āĻŦā§āĻĻā§āĻ§āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
printf '', 5; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 5; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 0; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
āĻā§āĻā§āĻāĻ° āĻĒāĻ¤āĻžāĻāĻž
āĻāĻ āĻĒāĻ¤āĻžāĻāĻž āĻĒāĻžāĻ°ā§āĻ˛āĻā§ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻā§āĻā§āĻāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻ¤ā§ āĻŦāĻ˛ā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯āĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§
āĻŽā§āĻĄāĻŧ, āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻāĻāĻŋ āĻŦāĻŋāĻāĻžāĻāĻ (āĻāĻāĻāĻŋ āĻŦāĻŋāĻ¨ā§āĻĻā§ "." āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§) āĻ¸āĻā§āĻā§ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¯ā§āĻāĻĻāĻžāĻ¨.
āĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻŦāĻŋāĻāĻžāĻ°ā§ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻ:
printf "%vd", "AB\x{100}"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "65.66.256"
printf "āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ v%vd\n", $^V; # āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ
āĻāĻ˛āĻžāĻĻāĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋāĻā§ āĻāĻāĻžāĻ°āĻ°āĻžāĻāĻĄ āĻāĻ°āĻ¤ā§ "v" āĻāĻ° āĻāĻā§ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ°āĻāĻžāĻāĻŋāĻšā§āĻ¨ "*" āĻ°āĻžāĻā§āĻ¨
āĻ¸āĻāĻā§āĻ¯āĻž:
printf "āĻ āĻŋāĻāĻžāĻ¨āĻž āĻšāĻ˛ %*vX\n", ":", $addr; # IPv6 āĻ āĻŋāĻāĻžāĻ¨āĻž
printf "āĻŦāĻŋāĻāĻā§āĻ˛āĻŋ āĻšāĻ˛ %0*v8b\n", " ", $bits; # āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻŦāĻŋāĻāĻ¸ā§āĻā§āĻ°āĻŋāĻ
āĻ¯ā§āĻāĻĻāĻžāĻ¨ā§āĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻ-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¨āĻŽā§āĻŦāĻ°āĻāĻŋāĻ āĻāĻĒāĻ¨āĻŋ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
"*2$v" āĻāĻ° āĻŽāĻ¤ āĻāĻŋāĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§; āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
printf '%*4$vX %*4$vX %*4$vX', #3 IPv6 āĻ āĻŋāĻāĻžāĻ¨āĻž
@addr[1..3], ":";
(āĻ¸āĻ°ā§āĻŦāĻ¨āĻŋāĻŽā§āĻ¨) āĻĒā§āĻ°āĻ¸ā§āĻĨ
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°āĻļāĻ¸ā§āĻ¤ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻŽāĻžāĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻŦāĻ¸āĻŋāĻ¯āĻŧā§ āĻĒā§āĻ°āĻ¸ā§āĻĨ āĻāĻāĻžāĻ°āĻ°āĻžāĻāĻĄ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻŦāĻž āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨ ("*" āĻ¸āĻš) āĻŦāĻž āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĨā§āĻā§ (āĻ¯ā§āĻŽāĻ¨, āĻāĻ° āĻ¸āĻžāĻĨā§
"*2$"):
printf "", "a"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf "", "a"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf "", 6, "a"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', "a", 2; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf "", "long"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "" (āĻā§āĻāĻā§ āĻ¨āĻž)
āĻ¯āĻĻāĻŋ "*" āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻāĻāĻāĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻĒā§āĻ°āĻ¸ā§āĻĨ āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻāĻŋāĻ° āĻ¸āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻāĻžāĻŦ āĻ°āĻ¯āĻŧā§āĻā§ā§ˇ
"-" āĻĒāĻ¤āĻžāĻāĻž: āĻŦāĻžāĻŽ-āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻ°āĻŖāĨ¤
āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž, āĻŦāĻž āĻ¸āĻ°ā§āĻŦā§āĻā§āĻ āĻĒā§āĻ°āĻ¸ā§āĻĨ
āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž (āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯) āĻŦāĻž āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ āĻĒā§āĻ°āĻ¸ā§āĻĨ (āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°) āĻāĻāĻāĻŋ "" āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻ āĻ¨ā§āĻ¸āĻ°āĻŖāĨ¤ āĻāĻžāĻ¸āĻŽāĻžāĻ¨-āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯
"g" āĻāĻŦāĻ "G" āĻŦā§āĻ¯āĻ¤ā§āĻ¤ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻāĻā§āĻ˛āĻŋ, āĻāĻāĻŋ āĻĻāĻļāĻŽāĻŋāĻā§āĻ° āĻĄāĻžāĻ¨āĻĻāĻŋāĻā§ āĻāĻ¤āĻāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§
āĻĻā§āĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ (āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻšāĻā§āĻā§ 6)āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
# āĻāĻ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ-āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻ¸āĻžāĻĒā§āĻā§āĻˇā§
printf '', 1; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 1; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 0; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 10; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 1; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
"g" āĻāĻŦāĻ "G" āĻāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻŋ āĻĻā§āĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻ°ā§āĻŦāĻžāĻ§āĻŋāĻ āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°ā§, āĻ¸āĻš
āĻ¯āĻžāĻ°āĻž āĻĻāĻļāĻŽāĻŋāĻ āĻŦāĻŋāĻ¨ā§āĻĻā§āĻ° āĻāĻā§ āĻāĻŦāĻ āĻ¯āĻžāĻ°āĻž āĻ¤āĻžāĻ° āĻĒāĻ°ā§; āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
# āĻāĻ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ-āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĨ¤
printf '', 1; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 10; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 100; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 1; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 2; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 5; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 4; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻŦā§āĻāĻžāĻ¯āĻŧ āĻ¯ā§ āĻāĻ° āĻāĻāĻāĻĒā§āĻ
āĻ¸āĻāĻā§āĻ¯āĻž āĻ¨āĻŋāĻā§āĻ āĻāĻ āĻĒā§āĻ°āĻ¸ā§āĻĨā§ āĻļā§āĻ¨ā§āĻ¯-āĻĒā§āĻ¯āĻžāĻĄ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤, āĻ¯ā§āĻāĻžāĻ¨ā§ 0 āĻĒāĻ¤āĻžāĻāĻž āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ:
printf '', 6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 10.6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 10.6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 010.6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 10.6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 10.6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 10.6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 010.6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 10.6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋāĻā§ āĻĢāĻŋāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ āĻāĻ°ā§
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒā§āĻ°āĻ¸ā§āĻĨ:
printf '', "āĻāĻžāĻāĻāĻž"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', "āĻāĻžāĻāĻāĻž"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻāĻĒāĻ¨āĻŋ ".*" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĨā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
printf '', 6; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 6, 1; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
āĻ¯āĻĻāĻŋ "*" āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻāĻŋāĻ° āĻā§āĻ¨ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻ¨ā§āĻ āĻŦāĻ˛ā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ¸āĻŦ āĻ¸āĻŽāĻ¯āĻŧā§
printf '', 7, "āĻ¸ā§āĻā§āĻ°āĻŋāĻ"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 3, "āĻ¸ā§āĻā§āĻ°āĻŋāĻ"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 0, "āĻ¸ā§āĻā§āĻ°āĻŋāĻ"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "<>"
printf '', -1, "āĻ¸ā§āĻā§āĻ°āĻŋāĻ"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 1, 0; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
printf '', 0, 0; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "<>"
printf '', -1, 0; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ""
āĻāĻĒāĻ¨āĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻāĻā§āĻ¯āĻž āĻĨā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻž āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¨āĻž, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻāĻŋ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯
āĻ¯ā§ āĻāĻāĻŋ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻ¸āĻŽā§āĻāĻŦ āĻšāĻŦā§, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ ".*2$" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§:
printf '', 2, 1; # āĻ āĻŦā§āĻ§, āĻ¤āĻŦā§ āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻž āĻšāĻŦā§
# ""
āĻāĻ¯āĻŧāĻ¤āĻ¨
āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻŋ āĻ¸āĻāĻā§āĻ¯āĻžāĻāĻŋāĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
"l", "h", "V", "q", "L", āĻŦāĻž "ll"āĨ¤ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ ("d u o x x b i D U
O"), āĻ¸āĻāĻā§āĻ¯āĻžāĻā§āĻ˛āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻāĻāĻžāĻ° āĻ¯āĻžāĻ āĻšā§āĻ āĻ¨āĻž āĻā§āĻ¨ āĻŦāĻ˛ā§ āĻ§āĻ°ā§ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ
āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ 32 āĻŦāĻž 64 āĻŦāĻŋāĻ), āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻāĻžāĻ°āĻ°āĻžāĻāĻĄ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻĒāĻžāĻ°ā§āĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ¸āĻŋ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻāĻāĻŋ:
hh āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻā§ C āĻāĻžāĻāĻĒ "char" āĻŦāĻž "āĻāĻ¨āĻ¸āĻžāĻāĻ¨ āĻāĻ°āĻž" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°ā§āĻ¨
char" āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻŦāĻž āĻ¤āĻžāĻ° āĻĒāĻ°ā§
h āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻā§ C āĻāĻžāĻāĻĒ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°ā§āĻ¨ "āĻā§āĻ" āĻŦāĻž
"āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻ¸āĻāĻā§āĻˇāĻŋāĻĒā§āĻ¤"
j āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻā§ āĻĒāĻžāĻ°ā§āĻ˛ā§ C āĻāĻžāĻāĻĒ "intmax_t" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°ā§āĻ¨
5.14 āĻŦāĻž āĻ¤āĻžāĻ° āĻĒāĻ°ā§, āĻāĻŦāĻ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ C99 āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ°ā§āĻ° āĻ¸āĻžāĻĨā§
(āĻ āĻŦāĻšāĻŖāĻ¯ā§āĻā§āĻ¯)
l āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻā§ C āĻāĻžāĻāĻĒ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻŋ "āĻĻā§āĻ°ā§āĻ" āĻŦāĻž
"āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĻā§āĻ°ā§āĻ"
q, L, āĻŦāĻž ll āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻā§ C āĻāĻžāĻāĻĒ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°ā§ "āĻ˛āĻ āĻ˛āĻ",
"āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĻā§āĻ°ā§āĻ āĻĻā§āĻ°ā§āĻ", āĻŦāĻž "āĻāĻ¤ā§āĻ°ā§āĻā§āĻ" (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤
64-āĻŦāĻŋāĻ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž)
t āĻĒāĻžāĻ°ā§āĻ˛ā§ C āĻāĻžāĻāĻĒ "ptrdiff_t" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°ā§
5.14 āĻŦāĻž āĻĒāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ 5.14-āĻ z āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻā§ C āĻāĻžāĻāĻĒ "size_t" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°ā§āĻ¨
āĻ āĻĨāĻŦāĻž āĻĒāĻ°ā§
5.14 āĻ āĻ¨ā§āĻ¯āĻžāĻ¯āĻŧā§, āĻāĻā§āĻ˛ā§āĻ° āĻā§āĻ¨ā§āĻāĻŋāĻ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻ¨āĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ°āĻž āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ¯āĻŧ
āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻ¯āĻžāĻāĻšā§āĻ, āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž āĻĨāĻžāĻāĻ˛ā§, "printf" āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĻ° āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž
āĻā§āĻ˛āĻžāĻ¸ āĻāĻāĻāĻŋ āĻ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻĒāĻ¤āĻžāĻāĻž āĻāĻžāĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧ. āĻāĻĒāĻ¨āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ, āĻāĻāĻŋ āĻāĻ°ā§āĻ¨:
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ FATAL => "printf";
āĻāĻĒāĻ¨āĻŋ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻļā§āĻ°ā§ āĻāĻ°āĻžāĻ° āĻāĻā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¤āĻž āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻžāĻ¨āĻ¤ā§ āĻāĻžāĻ¨
āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ, āĻāĻāĻŋāĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ°āĻāĻŽ āĻāĻŋāĻā§ āĻ°āĻžāĻā§āĻ¨:
5.014 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # hh/j/t/z/ printf āĻŽāĻĄāĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯
āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻā§āĻ¯āĻŧāĻžāĻĄ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻāĻĒāĻ¨āĻŋ āĻā§āĻāĻā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
āĻāĻ¨āĻĢāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¯āĻĻāĻŋ ($Config{use64bitint} eq "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§āĻ¨"
|| $Config{longsize} >= 8) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ "āĻ¨āĻžāĻāĻ¸ āĻā§āĻ¯āĻŧāĻžāĻĄāĻ¸!\n";
}
āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ ("e f g E F G"), āĻ¸āĻāĻā§āĻ¯āĻžāĻā§āĻ˛āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻžāĻāĻ (āĻĄāĻŦāĻ˛ āĻŦāĻž āĻ˛āĻ āĻĄāĻŦāĻ˛), āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ
āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°āĻ˛ā§ "q", "L", āĻŦāĻž "ll" āĻĻāĻŋāĻ¯āĻŧā§ "āĻ˛āĻ āĻĄāĻŦāĻ˛" āĻā§āĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻ¨āĻĢāĻŋāĻāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻĻā§āĻ°ā§āĻ āĻĻā§āĻŦāĻŋāĻā§āĻŖ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻāĻŋāĻ¨āĻž āĻ¤āĻž āĻāĻĒāĻ¨āĻŋ āĻā§āĻāĻā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨:
āĻāĻ¨āĻĢāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻ˛āĻ āĻĄāĻŦāĻ˛āĻ¸\n" āĻ¯āĻĻāĻŋ $Config{d_longdbl} eq "āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤" āĻāĻ°ā§;
āĻāĻĒāĻ¨āĻŋ āĻā§āĻāĻā§ āĻĒā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻ˛ "āĻ˛āĻ āĻĄāĻŦāĻ˛" āĻā§ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻāĻžāĻ¸āĻŽāĻžāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§ āĻāĻŋāĻ¨āĻž-
Config āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻžāĻāĻ:
āĻāĻ¨āĻĢāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¯āĻĻāĻŋ ($Config{uselongdouble} eq "define") {
āĻŽā§āĻĻā§āĻ°āĻŖ "āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ āĻĻā§āĻ°ā§āĻ āĻĻā§āĻŦāĻŋāĻā§āĻŖ\n";
}
āĻāĻāĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§ āĻ˛āĻŽā§āĻŦāĻž āĻĄāĻžāĻŦāĻ˛ āĻāĻŦāĻ āĻĄāĻžāĻŦāĻ˛ āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸:
āĻāĻ¨āĻĢāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
($Config{doublesize} == $Config{longdblsize}) &&
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻĄāĻŦāĻ˛āĻ¸ āĻāĻ° āĻ˛āĻ āĻĄāĻŦāĻ˛āĻ¸\n";
āĻ¸āĻžāĻāĻ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻžāĻ¯āĻŧāĻžāĻ° "V" āĻāĻ° āĻĒāĻžāĻ°ā§āĻ˛ āĻā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ¨ āĻĒā§āĻ°āĻāĻžāĻŦ āĻ¨ā§āĻ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤
āĻāĻā§āĻ¸āĻāĻ¸ āĻā§āĻĄā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĨ¤ āĻāĻ° āĻŽāĻžāĻ¨ā§ "āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĻāĻ°ā§āĻļ āĻāĻāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ āĻŦāĻž
āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¨āĻŽā§āĻŦāĻ°", āĻ¯āĻž āĻĄāĻŋāĻĢāĻ˛ā§āĻāĨ¤
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻā§āĻ°āĻŽ
āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤, sprintf() āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻāĻ°āĻžāĻ° āĻŽāĻžāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¨ā§āĻ¯āĻŧ
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨āĨ¤ āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ˛ā§ "*" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ, āĻāĻā§āĻ˛āĻŋ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĨā§āĻā§ āĻ¸ā§āĻā§āĻ˛āĻŋ āĻ¯ā§ āĻā§āĻ°āĻŽā§ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻ¸ā§āĻāĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧā§ˇ
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ¸ā§āĻĒā§āĻ¸āĻŋāĻĢāĻŋāĻā§āĻļāĻ¨ āĻāĻā§ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻŽāĻžāĻ¨. āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋ
āĻāĻāĻāĻŋ āĻ¸ā§āĻ¸ā§āĻĒāĻˇā§āĻ āĻ¸ā§āĻāĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻāĻŋ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻā§āĻ°āĻŽāĻā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°ā§ āĻ¨āĻž
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ, āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻāĻ¨ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ¸ā§āĻāĻāĻāĻŋ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻšāĻ¤ā§
āĻ¯ā§āĻā§āĻ¤āĻŋ.
āĻ¤āĻžāĻ:
printf "", $a, $b, $c;
āĻĒā§āĻ°āĻ¸ā§āĻĨā§āĻ° āĻāĻ¨ā§āĻ¯ $a, āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ $b āĻāĻŦāĻ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§āĻ° āĻŽāĻžāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ $c āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§; āĻ¯āĻāĻ¨:
printf '', $a, $b;
āĻĒā§āĻ°āĻ¸ā§āĻĨ āĻāĻŦāĻ āĻ¨āĻŋāĻ°ā§āĻā§āĻ˛āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ $a āĻāĻŦāĻ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ā§āĻ° āĻŽāĻžāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ $b āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĨ¤
āĻāĻāĻžāĻ¨ā§ āĻāĻ°ā§ āĻāĻŋāĻā§ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻāĻā§; āĻ¸āĻā§āĻ¤āĻ¨ āĻĨāĻžāĻā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻ āĻ¸ā§āĻāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, "$"
āĻĒāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§:
printf "%2\$d %d\n", 12, 34; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻŦā§ "34 12\n"
printf "%2\$d %d %d\n", 12, 34; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻŦā§ "34 12 34\n"
printf "%3\$d %d %d\n", 12, 34, 56; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻŦā§ "56 12 34\n"
printf "%2\$*3\$d %d\n", 12, 34, 3; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻŦā§ " 34 12\n"
āĻ¯āĻĻāĻŋ "āĻ˛ā§āĻā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" ("āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ˛ā§āĻā§āĻ˛ 'āĻ¨āĻ_āĻ āĻā§āĻˇāĻ°'" āĻ¸āĻš) āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧ āĻāĻŦāĻ
POSIX::setlocale() āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻĻāĻļāĻŽāĻŋāĻ āĻŦāĻŋāĻāĻžāĻāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻ āĻā§āĻˇāĻ°
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸āĻŋāĻ¤ āĻĢā§āĻ˛ā§āĻāĻŋāĻ-āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¨āĻŽā§āĻŦāĻ°āĻā§āĻ˛āĻŋ "LC_NUMERIC" āĻ˛ā§āĻā§āĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻšāĻ¯āĻŧā§ˇ āĻĻā§āĻāĻž
perllocale āĻāĻŦāĻ POSIXāĨ¤
sqrt EXPR
āĻŦāĻ°ā§āĻ
EXPR āĻāĻ° āĻ§āĻ¨āĻžāĻ¤ā§āĻŽāĻ āĻŦāĻ°ā§āĻāĻŽā§āĻ˛ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¨āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻžāĻ āĻāĻ°ā§
āĻ -āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻ¨ā§āĻĄ āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻāĻĒāĻ¨āĻŋ "Math::Complex" āĻŽāĻĄāĻŋāĻāĻ˛ āĻ˛ā§āĻĄ āĻ¨āĻž āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻŖāĻŋāĻ¤::āĻāĻāĻŋāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ sqrt(-4); # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 2i
srand EXPR
srand
"āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄ" āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŦā§āĻ āĻ¸ā§āĻ āĻāĻ°ā§ āĻāĻŦāĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤
āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻŦāĻŋāĻ¨ā§āĻĻā§ āĻšāĻ˛ "āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄ" āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋāĻā§ "āĻŦā§āĻ" āĻāĻ°āĻž āĻ¯āĻžāĻ¤ā§ "āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄ" āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¯āĻŧ āĻāĻĒāĻ¨āĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻāĻŋāĻ¨ā§āĻ¨ āĻā§āĻ°āĻŽāĨ¤ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻĻāĻŋāĻ¯āĻŧā§ āĻĄāĻžāĻāĻž āĻšāĻ¯āĻŧ,
"srand" āĻŦā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§; āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ āĻāĻāĻŋ (āĻāĻ§āĻž-) āĻāĻ˛ā§āĻŽā§āĻ˛ā§āĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻŦā§āĻ āĻŦā§āĻā§ āĻ¨ā§āĻ¯āĻŧāĨ¤ āĻāĻŋāĻ¤āĻ°ā§
āĻāĻāĻ¯āĻŧ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§, āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, āĻāĻāĻŋ āĻŦā§āĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻ¯ā§ āĻ¸āĻāĻā§āĻ¤
āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻā§āĻŦāĻ˛ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻāĻŋāĻ¨ā§āĻā§āĻā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻ¸-āĻ:
5.014 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ srand āĻŦā§āĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ¯āĻĻāĻŋ "srand()" āĻā§ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻŦāĻ˛āĻž āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻāĻžāĻĄāĻŧāĻžāĻ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤āĻāĻžāĻŦā§ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ
"āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄ" āĻ āĻĒāĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻāĻ¯āĻŧā§āĻ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§ āĻāĻā§
āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ "srand" āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¸āĻŽā§āĻāĻŦāĻ¤. āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻŽāĻžāĻ¨āĻ¯ā§āĻā§āĻ¯ āĻā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ¨ā§āĻ¯ āĻšāĻ¯āĻŧ
āĻĢāĻ˛āĻžāĻĢāĻ˛, āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻŦāĻž āĻĄāĻŋāĻŦāĻžāĻāĻŋāĻāĻ¯āĻŧā§āĻ° āĻāĻ¨ā§āĻ¯āĨ¤ āĻ¸ā§āĻāĻžāĻ¨ā§, āĻāĻĒāĻ¨āĻŋ "srand($seed)" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻāĻ° āĻ¸āĻžāĻĨā§
āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻāĻāĻ $āĻŦā§āĻāĨ¤ āĻāĻ°ā§āĻāĻāĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻĒāĻ¨āĻŋ a āĻāĻ° āĻĒāĻ°ā§ "srand()" āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
"āĻĢāĻ°ā§āĻ()" āĻ¸āĻ¨ā§āĻ¤āĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋ āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻĒāĻŋāĻ¤āĻžāĻŽāĻžāĻ¤āĻžāĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻŦā§āĻā§āĻ° āĻŽāĻžāĻ¨ āĻāĻžāĻ āĻāĻ°ā§ (āĻāĻŦāĻ
āĻĢāĻ˛āĻ¸ā§āĻŦāĻ°ā§āĻĒ āĻāĻā§ āĻ āĻĒāĻ°āĻā§)āĨ¤
Do āĻ¨āĻž "srand()" āĻāĻ˛ āĻāĻ°ā§āĻ¨ (āĻ āĻ°ā§āĻĨāĻžā§, āĻāĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻžāĻĄāĻŧāĻž) āĻĒā§āĻ°āĻ¤āĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ¯āĻŧ āĻāĻāĻžāĻ§āĻŋāĻāĻŦāĻžāĻ°āĨ¤ āĻĻā§āĻ¯
āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻ¨āĻŽā§āĻŦāĻ° āĻā§āĻ¨āĻžāĻ°ā§āĻāĻ°ā§āĻ° āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻāĻ¨āĻā§āĻ°āĻĒāĻŋ āĻĨāĻžāĻāĻž āĻāĻāĻŋāĻ¤
āĻ¯ā§āĻā§āĻ¨ āĻŦā§āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¤āĻžāĻ āĻāĻ¸āĻ˛ā§ āĻāĻŦāĻžāĻ° "srand()" āĻāĻ˛ āĻāĻ°āĻž āĻšāĻā§āĻā§ āĻšāĻžāĻ°āĻžāĻ¯āĻŧ āĻāĻ˛ā§āĻŽā§āĻ˛ā§āĻ¤āĻž
"srand" āĻāĻ° āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻ¨ā§āĻ¯āĻŧ āĻāĻŦāĻ āĻā§āĻĒāĻāĻžāĻĒ āĻĻāĻļāĻŽāĻŋāĻāĻā§ āĻāĻžāĻāĻāĻžāĻ āĻāĻ°āĻŦā§
āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻ° āĻŽāĻžāĻ¨ā§ "srand(42)" āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĻā§āĻ¯āĻŧ
"srand(42.1)"āĨ¤ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻĨāĻžāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯, āĻ¸āĻ°ā§āĻŦāĻĻāĻž āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž "srand" āĻĒāĻžāĻ¸ āĻāĻ°ā§āĻ¨āĨ¤
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻŦā§āĻā§āĻ° āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻž āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻāĻā§
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ°āĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ¸āĻŽāĻ¯āĻŧā§ āĻŦā§āĻ¯āĻžāĻĒāĻāĻāĻžāĻŦā§ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŽāĻ¨ā§āĻŦāĻ¯āĻŧāĨ¤ āĻāĻāĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻāĻāĻāĻŋ āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻāĻĒāĻ¸ā§āĻ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨, āĻāĻŦāĻ āĻ¯āĻĻāĻŋ āĻā§āĻ¨āĻ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻĨāĻžāĻā§, āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻŦā§āĻāĻāĻŋ āĻ˛āĻ āĻāĻ°ā§āĻ¨
āĻ¯ā§āĻāĻŋ āĻāĻžāĻ˛āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ āĻ¯āĻžāĻ¤ā§ āĻāĻāĻŋ āĻĒāĻ°ā§ āĻāĻāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻĒā§āĻ¨āĻ°ā§āĻ¤ā§āĻĒāĻžāĻĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
"āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄ()" is āĻ¨āĻž āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻā§āĻ°āĻžāĻĢāĻŋāĻāĻāĻžāĻŦā§ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ. āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋāĻ¤ āĻ¨āĻž āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°āĻž on it in āĻ¨āĻŋāĻ°āĻžāĻĒāĻ¤ā§āĻ¤āĻž-
āĻ¸āĻāĻŦā§āĻĻāĻ¨āĻļā§āĻ˛ āĻĒāĻ°āĻŋāĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻ¤ā§āĨ¤ āĻāĻ āĻ˛ā§āĻāĻž āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤, āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻ¤ā§āĻ¤ā§āĻ¯āĻŧ āĻĒāĻā§āĻˇā§āĻ° CPAN āĻŽāĻĄāĻŋāĻāĻ˛ āĻ āĻĢāĻžāĻ° āĻāĻ°ā§
āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻ¸āĻāĻā§āĻ¯āĻž āĻā§āĻ¨āĻžāĻ°ā§āĻāĻ° āĻ¤āĻžāĻĻā§āĻ° āĻ˛ā§āĻāĻāĻĻā§āĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻā§āĻ°āĻŋāĻĒā§āĻā§āĻā§āĻ°āĻžāĻĢāĻŋāĻāĻāĻžāĻŦā§ āĻ¸ā§āĻ°āĻā§āĻˇāĻŋāĻ¤,
āĻ¸āĻš: āĻĄā§āĻāĻž::āĻāĻ¨āĻā§āĻ°āĻĒāĻŋ, āĻā§āĻ°āĻŋāĻĒā§āĻ:: āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ, āĻŽā§āĻ¯āĻžāĻĨ:: āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ:: āĻ¸āĻŋāĻāĻŋāĻāĻ°, āĻāĻŦāĻ āĻŽā§āĻ¯āĻžāĻĨ:: āĻā§āĻ°ā§āĻ˛āĻŋ āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĨ¤
stat FILEHANDLE
stat EXPR
stat DIRHANDLE
āĻ°āĻžāĻˇā§āĻā§āĻ°
āĻāĻāĻāĻŋ 13-āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ° āĻ¤āĻĨā§āĻ¯ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻšāĻ¯āĻŧ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻā§āĻ˛āĻž
FILEHANDLE āĻŦāĻž DIRHANDLE āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§, āĻ āĻĨāĻŦāĻž EXPR āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻžāĻŽāĻāĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻāĻāĻŋ $_ (āĻ¨āĻž
"_"!) "stat" āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ˛ā§ āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ:
($dev,$ino,$mode,$nlink,$uid,$gid,$rdev,$size,
$atime,$mtime,$ctime,$blksize,$blocks)
= stat($filename);
āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻĒā§āĻ°āĻāĻžāĻ°ā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻ¯āĻŧā§ˇ āĻāĻāĻžāĻ¨ā§ āĻāĻ° āĻ āĻ°ā§āĻĨ āĻ°āĻ¯āĻŧā§āĻā§
āĻā§āĻˇā§āĻ¤ā§āĻ°:
āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° 0 āĻĄā§āĻ āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻ¨āĻŽā§āĻŦāĻ°
1 āĻāĻ¨ā§ āĻāĻ¨ā§āĻĄ āĻ¨āĻŽā§āĻŦāĻ°
2 āĻŽā§āĻĄ āĻĢāĻžāĻāĻ˛ āĻŽā§āĻĄ (āĻĒā§āĻ°āĻāĻžāĻ° āĻāĻŦāĻ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ)
āĻĢāĻžāĻāĻ˛ā§ (āĻšāĻžāĻ°ā§āĻĄ) āĻ˛āĻŋāĻā§āĻā§āĻ° 3 nlink āĻ¸āĻāĻā§āĻ¯āĻž
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŽāĻžāĻ˛āĻŋāĻā§āĻ° 4 uid āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻāĻĄāĻŋ
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŽāĻžāĻ˛āĻŋāĻā§āĻ° 5 āĻāĻŋāĻāĻāĻĄāĻŋ āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻā§āĻ°ā§āĻĒ āĻāĻāĻĄāĻŋ
6 rdev āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻļāĻ¨āĻžāĻā§āĻ¤āĻāĻžāĻ°ā§ (āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŦāĻŋāĻļā§āĻˇ āĻĢāĻžāĻāĻ˛)
7 āĻ¸āĻžāĻāĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŽā§āĻ āĻ¸āĻžāĻāĻ, āĻŦāĻžāĻāĻā§
āĻ¯ā§āĻā§āĻ° āĻĒāĻ° āĻĨā§āĻā§ āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§ 8 āĻŦāĻžāĻ° āĻļā§āĻˇ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ
āĻ¯ā§āĻā§āĻ° āĻĒāĻ° āĻĨā§āĻā§ āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§ 9 mtime āĻļā§āĻˇ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ
10 ctime āĻāĻ¨ā§āĻĄ āĻ¯ā§āĻā§āĻ° āĻĒāĻ° āĻĨā§āĻā§ āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§ āĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§ (*)
āĻ¸āĻžāĻĨā§ āĻāĻ¨ā§āĻāĻžāĻ°āĻ ā§āĻ¯āĻžāĻā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻžāĻāĻā§ 11 blksize āĻĒāĻāĻ¨ā§āĻĻā§āĻ° I/O āĻāĻāĻžāĻ°
āĻĢāĻžāĻāĻ˛ (āĻĢāĻžāĻāĻ˛ āĻĨā§āĻā§ āĻĢāĻžāĻāĻ˛ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§)
12 āĻŦā§āĻ˛āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ-āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻŦā§āĻ˛āĻā§āĻ° āĻĒā§āĻ°āĻā§āĻ¤ āĻ¸āĻāĻā§āĻ¯āĻž āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻĄāĻŋāĻ¸ā§āĻā§ (āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻŦāĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻ¯āĻŧ, āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ 512 āĻŦāĻžāĻāĻ)
(āĻ¯ā§āĻāĻāĻŋ āĻāĻŋāĻ˛ 00:00 āĻāĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ°ā§ 1, 1970 GMT āĻāĨ¤)
(*) āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĒā§āĻ°āĻāĻžāĻ°ā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤ āĻāĻ˛ā§āĻ˛ā§āĻāĻ¯ā§āĻā§āĻ¯āĻāĻžāĻŦā§, ctime āĻā§āĻˇā§āĻ¤ā§āĻ° āĻšāĻ˛
āĻ āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĨ¤ āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋ āĻāĻāĻāĻŋ "āĻ¸ā§āĻˇā§āĻāĻŋāĻ° āĻ¸āĻŽāĻ¯āĻŧ" āĻāĻļāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¨āĻž; āĻĻā§āĻā§āĻ¨ "āĻĢāĻžāĻāĻ˛
āĻāĻŦāĻ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ" āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§āĨ¤
āĻ¯āĻĻāĻŋ "āĻ¸ā§āĻā§āĻ¯āĻžāĻ" āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻĄāĻžāĻ°āĻ˛āĻžāĻāĻ¨ āĻ¸āĻŽāĻ¨ā§āĻŦāĻŋāĻ¤ āĻŦāĻŋāĻļā§āĻˇ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻā§āĻ¨ā§ āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻ¨ā§āĻ
āĻ¸āĻŽā§āĻĒāĻ¨ā§āĻ¨ āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ°ā§āĻŦāĻļā§āĻˇ "stat", "lstat", āĻŦāĻž āĻĨā§āĻā§ āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻāĻžāĻ āĻžāĻŽā§āĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§
āĻĢāĻžāĻāĻ˛āĻā§āĻ¸ā§āĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
āĻ¯āĻĻāĻŋ (-x $file && (($d) = stat(_)) && $d
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "$āĻĢāĻžāĻāĻ˛ āĻšāĻ˛ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻā§āĻŦāĻ˛ NFS āĻĢāĻžāĻāĻ˛\n";
}
(āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸ā§āĻ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻāĻžāĻ āĻāĻ°ā§ āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻŋāĻāĻžāĻāĻ¸ āĻ¨āĻŽā§āĻŦāĻ° NFS-āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻāĨ¤)
āĻ¯ā§āĻšā§āĻ¤ā§ āĻŽā§āĻĄā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ§āĻ°āĻ¨ āĻāĻŦāĻ āĻāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻāĻāĻ¯āĻŧāĻ āĻ°āĻ¯āĻŧā§āĻā§, āĻ¤āĻžāĻ āĻāĻĒāĻ¨āĻžāĻ° āĻŽā§āĻā§āĻļ āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤
āĻĢāĻžāĻāĻ˛ āĻāĻžāĻāĻĒ āĻ āĻāĻļ āĻāĻŦāĻ (s)printf āĻāĻāĻāĻŋ "%o" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻĻā§āĻāĻ¤ā§ āĻāĻžāĻ¨
āĻ āĻ¨ā§āĻŽāĻ¤āĻŋāĨ¤
$mode = (stat($filename))[2];
printf "āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻšāĻ˛ %04o\n", $mode & 07777;
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§, "āĻ¸ā§āĻā§āĻ¯āĻžāĻ" āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯ āĻŦāĻž āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻāĻŦāĻ,
āĻ¸āĻĢāĻ˛ āĻšāĻ˛ā§, āĻŦāĻŋāĻļā§āĻˇ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ "_" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻ¤āĻĨā§āĻ¯ āĻ¸ā§āĻ āĻāĻ°ā§āĨ¤
āĻĢāĻžāĻāĻ˛::āĻ¸ā§āĻā§āĻ¯āĻžāĻ āĻŽāĻĄāĻŋāĻāĻ˛ āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻŋāĻ§āĻžāĻāĻ¨āĻ, āĻŦāĻžāĻ-āĻ¨āĻžāĻŽ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻŽā§āĻāĻžāĻ¨āĻŋāĻāĻŽ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§:
File::stat āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
$sb = stat($filename);
printf "āĻĢāĻžāĻāĻ˛ āĻšāĻ˛ %s, āĻ¸āĻžāĻāĻ āĻšāĻ˛ %s, perm %04o, mtime %s\n",
$filename, $sb->āĻ¸āĻžāĻāĻ, $sb->āĻŽā§āĻĄ āĻāĻŦāĻ 07777,
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ $sb->mtime;
āĻāĻĒāĻ¨āĻŋ āĻĨā§āĻā§ āĻ¸āĻŋāĻŽā§āĻŦāĻ˛āĻŋāĻ āĻŽā§āĻĄ āĻ§ā§āĻ°ā§āĻŦāĻ ("S_IF*") āĻāĻŦāĻ āĻĢāĻžāĻāĻļāĻ¨ ("S_IS*") āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
Fcntl āĻŽāĻĄāĻŋāĻāĻ˛:
Fcntl ':mode' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
$mode = (stat($filename))[2];
$user_rwx ââ= ($mode & S_IRWXU) >> 6;
$group_read = ($mode & S_IRGRP) >> 3;
$other_execute = $mode & S_IXOTH;
printf "āĻ āĻ¨ā§āĻŽāĻ¤āĻŋāĻā§āĻ˛āĻŋ āĻšāĻ˛ %04o\n", S_IMODE($mode), "\n";
$is_setuid = $mode & S_ISUID;
$is_directory = S_ISDIR($mode);
āĻāĻĒāĻ¨āĻŋ "-u" āĻāĻŦāĻ "-d" āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻļā§āĻˇ āĻĻā§āĻāĻŋ āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ
"S_IF*" āĻ§ā§āĻ°ā§āĻŦāĻāĻā§āĻ˛āĻŋ āĻšāĻ˛:
# āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ: āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§, āĻā§āĻˇā§āĻ ā§, āĻ āĻ¨ā§āĻ¯āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻĄāĻŧā§āĻ¨, āĻ˛āĻŋāĻā§āĻ¨, āĻāĻžāĻ˛āĻžāĻ¨āĨ¤
S_IRWXU S_IRUSR S_IWUSR S_IXUSR
S_IRWXG S_IRGRP S_IWGRP S_IXGRP
S_IRWXO S_IROTH S_IWOTH S_IXOTH
# āĻ¸ā§āĻā§āĻāĻĄ/āĻ¸ā§āĻāĻāĻŋāĻĄ/āĻ¸ā§āĻāĻŋāĻāĻŋāĻ¨ā§āĻ¸/āĻ¸ā§āĻ āĻā§āĻā§āĻ¸āĻāĨ¤
# āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻāĻā§āĻ˛ā§āĻ° āĻ¸āĻ āĻŋāĻ āĻ āĻ°ā§āĻĨ āĻšāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ-āĻ¨āĻŋāĻ°ā§āĻāĻ°āĨ¤
S_ISUID S_ISGID S_ISVTX S_ISTXT
# āĻ¨āĻĨāĻŋāĻ° āĻ§āĻ°āĻŖ. āĻ āĻāĻ¤ā§āĻ¯āĻž āĻ¸āĻŦ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻž
# āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĨ¤
S_IFREG S_IFDIR S_IFLNK S_IFBLK S_IFCHR
S_IFIFO S_IFSOCK S_IFWHT S_ENFMT
# āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤āĻā§āĻ˛āĻŋ S_IRUSR-āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ āĻāĻĒāĻ¨āĻžāĻŽ,
# S_IWUSR, āĻāĻŦāĻ S_IXUSRāĨ¤
S_IREAD S_IWRITE S_IEXEC
āĻāĻŦāĻ "S_IF*" āĻĢāĻžāĻāĻļāĻ¨āĻā§āĻ˛āĻŋ āĻšāĻ˛
S_IMODE($mode) $mode-āĻāĻ° āĻ āĻāĻļ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ°āĻ¯āĻŧā§āĻā§
āĻŦāĻŋāĻ āĻāĻŦāĻ setuid/setgid/āĻ¸ā§āĻāĻŋāĻāĻŋ āĻŦāĻŋāĻ
S_IFMT($mode) $mode-āĻāĻ° āĻ āĻāĻļ āĻ¯ā§āĻāĻžāĻ¨ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ§āĻ°āĻ¨ āĻ°āĻ¯āĻŧā§āĻā§
āĻ¯āĻž āĻĻāĻŋāĻ¯āĻŧā§ āĻŦāĻŋāĻ-āĻāĻ¨ā§āĻĄā§āĻĄ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ)
S_IFREG āĻŦāĻž āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻĢāĻžāĻāĻļāĻ¨ āĻ¸āĻš
# āĻ āĻĒāĻžāĻ°ā§āĻāĻ° -f, -d, -l, -b, -c, -p, āĻāĻŦāĻ -S.
S_ISREG($mode) S_ISDIR($mode) S_ISLNK($mode)
S_ISBLK($mode) S_ISCHR($mode) S_ISFIFO($mode) S_ISSOCK($mode)
# āĻā§āĻ¨ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ -āĻāĻā§āĻ¸ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻāĻžāĻāĻ¨ā§āĻāĻžāĻ°āĻĒāĻžāĻ°ā§āĻ āĻ¨āĻ¯āĻŧ, āĻ¤āĻŦā§ āĻĒā§āĻ°āĻĨāĻŽāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯
# -āĻāĻŋ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯āĨ¤ ENFMT āĻŽāĻžāĻ¨ā§
# āĻ°ā§āĻāĻ°ā§āĻĄ āĻĢā§āĻ˛āĻāĻŋāĻ āĻāĻ¨āĻĢā§āĻ°ā§āĻ¸āĻŽā§āĻ¨ā§āĻ, āĻāĻāĻāĻŋ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ-āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĨ¤
S_ISENFMT($mode) S_ISWHT($mode)
āĻāĻĒāĻ¨āĻžāĻ° āĻ¨ā§āĻāĻŋāĻ āĻĻā§āĻā§āĻ¨ chmod(2) āĻāĻŦāĻ āĻ°āĻžāĻˇā§āĻā§āĻ°(2) "S__*" āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻŦāĻŋāĻļāĻĻ āĻŦāĻŋāĻŦāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨
āĻ§ā§āĻ°ā§āĻŦāĻ āĻĒāĻŋāĻāĻ¨ā§ āĻ˛āĻā§āĻˇā§āĻ¯ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻ˛āĻŋāĻā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋ āĻ¤āĻĨā§āĻ¯ āĻĒā§āĻ¤ā§
āĻ˛āĻŋāĻā§āĻ, "lstat" āĻĢāĻžāĻāĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¸ā§āĻā§āĻ¯āĻžāĻ"āĨ¤
VARLIST āĻ°āĻžāĻā§āĻ¯
āĻ°āĻžāĻā§āĻ¯ā§āĻ° āĻĒā§āĻ°āĻāĻžāĻ° VARLIST
āĻ°āĻžāĻā§āĻ¯ VARLIST : ATTRS
āĻ¸ā§āĻā§āĻ āĻāĻžāĻāĻĒ āĻāĻžāĻ°ā§āĻ˛āĻŋāĻ¸ā§āĻ: ATTRS
"state" āĻāĻāĻāĻŋ lexically scoped āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻā§āĻˇāĻŖāĻž āĻāĻ°ā§, āĻ āĻŋāĻ "my" āĻāĻ° āĻŽāĻ¤āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻ¯āĻžāĻ°āĻž
āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻāĻāĻ¨āĻ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻ°āĻŽā§āĻ āĻāĻ°āĻž āĻšāĻŦā§ āĻ¨āĻž, āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§
āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻ¤āĻžāĻĻā§āĻ° āĻā§āĻ°āĻž āĻŦā§āĻ˛āĻ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°āĻžāĻ¨ā§ āĻšāĻ˛ā§ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ "āĻĒāĻžāĻ°āĻ¸āĻŋāĻ¸ā§āĻā§āĻ¨ā§āĻ āĻĒā§āĻ°āĻžāĻāĻā§āĻ" āĻĻā§āĻā§āĻ¨
āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻžāĻŦā§ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛"āĨ¤
āĻ¯āĻĻāĻŋ āĻāĻāĻžāĻ§āĻŋāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻŦāĻ¨ā§āĻ§āĻ¨ā§āĻ¤ā§ āĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻž āĻāĻŦāĻļā§āĻ¯āĻāĨ¤ āĻ¸āĻā§āĻā§ āĻāĻāĻāĻŋ
āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻž, "undef" āĻāĻāĻāĻŋ āĻĄāĻžāĻŽāĻŋ āĻ¸ā§āĻĨāĻžāĻ¨āĻ§āĻžāĻ°āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ¯āĻžāĻāĻšā§āĻ, āĻ¯ā§āĻšā§āĻ¤ā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻ¸ā§āĻā§āĻ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻāĻ°āĻŽā§āĻ āĻāĻ°āĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻ¸āĻŽā§āĻāĻŦ āĻ¨āĻ¯āĻŧ
āĻā§āĻ¨ āĻāĻĻā§āĻĻā§āĻļā§āĻ¯ āĻĒāĻ°āĻŋāĻŦā§āĻļāĻ¨ āĻāĻ°āĻž.
"state" āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§āĻ˛āĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¤āĻāĻ¨āĻ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻāĻ¨ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ "state"" pragma āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧ,
āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻāĻŋ "CORE::state" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ˛ā§āĻāĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĻā§āĻā§āĻ¨. āĻĒāĻ°ā§āĻ¯āĻžāĻ¯āĻŧāĻā§āĻ°āĻŽā§,
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻ¯ā§āĻā§ "v5.10 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻŦāĻž āĻ¤āĻžāĻ° āĻĒāĻ°ā§ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨āĨ¤
SCALAR āĻ āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻāĻ°ā§āĻ¨
āĻ āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨
āĻ āĻ¨ā§āĻ āĻāĻŋāĻā§ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻļāĻžāĻ¯āĻŧ SCALAR ($_ āĻ¯āĻĻāĻŋ āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¨āĻž āĻĨāĻžāĻā§) āĻ āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨ āĻāĻ°āĻ¤ā§ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨āĻāĻŋ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤ āĻāĻāĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻŦāĻž āĻ¨āĻžāĻ āĻĒāĻžāĻ°ā§
āĻ¸āĻŽāĻ¯āĻŧ, āĻāĻĒāĻ¨āĻŋ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻā§āĻ¨ āĻĒā§āĻ°āĻā§āĻ¤āĻŋ āĻāĻŦāĻ āĻ¨āĻŋāĻĻāĻ°ā§āĻļāĻ¨ āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§ āĻāĻŦāĻ
āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻž āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŽāĻ§ā§āĻ¯ā§ āĻ āĻā§āĻˇāĻ° āĻĢā§āĻ°āĻŋāĻā§āĻ¯āĻŧā§āĻ¨ā§āĻ¸āĻŋ āĻŦāĻŋāĻ¤āĻ°āĻŖ; āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻāĻžāĻ¨
āĻā§āĻ¨āĻāĻŋ āĻĻā§āĻ°ā§āĻ¤ āĻ¤āĻž āĻĻā§āĻāĻ¤ā§ āĻāĻāĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻŦāĻ āĻāĻžāĻĄāĻŧāĻž āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻ¤ā§āĨ¤ āĻ¯āĻžāĻ°āĻž loops āĻ¯ā§
āĻ āĻ¨ā§āĻ āĻā§āĻ āĻ§ā§āĻ°ā§āĻŦāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ āĻāĻ°ā§āĻ¨ (āĻāĻ°āĻ āĻāĻāĻŋāĻ˛ āĻ§ā§āĻ°ā§āĻŦāĻ āĻ āĻāĻļ āĻ¸āĻš
āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨) āĻ¸āĻŦāĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻāĻĒāĻā§āĻ¤ āĻšāĻŦā§āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 5.16 āĻĨā§āĻā§ āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻ¨ā§-āĻ āĻĒ āĻšāĻ¯āĻŧā§āĻā§, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§āĻ° āĻ°āĻŋāĻ˛āĻŋāĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĨ¤
("āĻ āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨" āĻ¯ā§āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§ āĻ¤āĻž āĻšāĻ˛: āĻ¸ā§āĻā§āĻ°āĻŋāĻ-āĻāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻ˛āĻŋāĻā§āĻ āĻāĻ°āĻž āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ āĻāĻŽāĻ°āĻž āĻāĻžāĻ¨āĻŋ, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¯ā§āĻāĻžāĻ¨ā§ āĻ¸āĻŽāĻ¸ā§āĻ¤ 'k' āĻ āĻā§āĻˇāĻ° āĻ°āĻ¯āĻŧā§āĻā§āĨ¤ āĻĨā§āĻā§
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻ¸ā§āĻā§āĻ°āĻŋāĻ, āĻāĻŋāĻā§ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻŋāĻ āĻĢā§āĻ°āĻŋāĻā§āĻ¯āĻŧā§āĻ¨ā§āĻ¸āĻŋ āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§, āĻŦāĻŋāĻ°āĻ˛ āĻ āĻā§āĻˇāĻ° āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻŋāĻā§ āĻ¸āĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻāĻŦāĻ āĻāĻāĻ°ā§āĻāĻŋ āĻĒāĻžāĻ ā§āĻ¯ āĻĨā§āĻā§ āĻ¤ā§āĻ°āĻŋ āĻā§āĻŦāĻŋāĻ˛āĨ¤ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ āĻāĻžāĻ¯āĻŧāĻāĻž āĻ¯ā§
āĻāĻ "āĻŦāĻŋāĻ°āĻ˛" āĻ āĻā§āĻˇāĻ°āĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤)
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ˛ā§āĻĒ āĻ°āĻ¯āĻŧā§āĻā§ āĻ¯āĻž āĻ¯ā§āĻā§āĻ¨ā§ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻāĻā§ āĻāĻ¨āĻĄā§āĻā§āĻ¸ āĻā§āĻĒāĻžāĻĻāĻ¨āĻāĻžāĻ°ā§ āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻ¸āĻ¨ā§āĻ¨āĻŋāĻŦā§āĻļ āĻāĻ°āĻžāĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒā§āĻ¯āĻžāĻāĻžāĻ°ā§āĻ¨ āĻ§āĻžāĻ°āĻŖāĻāĻžāĻ°ā§:
āĻ¯āĻāĻ¨ (<>) {
āĻ āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ".IX foo\n" āĻ¯āĻĻāĻŋ /\bfoo\b/;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ ".IX āĻŦāĻžāĻ°\n" āĻ¯āĻĻāĻŋ /\bbar\b/;
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ ".IX blurfl\n" āĻ¯āĻĻāĻŋ /\bblurfl\b/;
#...
āĻāĻžāĻĒāĻž;
}
"/\bfoo\b/" āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° $_ āĻ¤ā§ "f" āĻĨāĻžāĻāĻž āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ āĻĻā§āĻāĻž āĻšāĻŦā§,
āĻāĻžāĻ°āĻŖ "f" "o" āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻŦāĻŋāĻ°āĻ˛āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻāĻžāĻŦā§, āĻĒā§āĻ¯āĻžāĻĨāĻ˛āĻāĻŋāĻāĻžāĻ˛ āĻāĻžāĻĄāĻŧāĻž āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻāĻ¯āĻŧ
āĻŽāĻžāĻŽāĻ˛āĻž āĻāĻāĻŽāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°āĻļā§āĻ¨ āĻšāĻ˛ āĻāĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻ¯āĻ¤āĻāĻž āĻ¸āĻŽāĻ¯āĻŧ āĻ˛ā§āĻā§āĻā§ āĻ¤āĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻžāĻāĻāĻžāĻ¯āĻŧ āĻāĻŋāĻ¨āĻž
āĻĒā§āĻ°āĻĨāĻŽ āĻ¸ā§āĻĨāĻžāĻ¨ā§ āĻ˛āĻŋāĻā§āĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž.
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋ āĻā§āĻāĻāĻ¤ā§ āĻšāĻ¯āĻŧ āĻ¯āĻž āĻāĻĒāĻ¨āĻŋ āĻ°āĻžāĻ¨āĻāĻžāĻāĻŽ āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤ āĻāĻžāĻ¨ā§āĻ¨ āĻ¨āĻž, āĻāĻĒāĻ¨āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻŦāĻ "āĻāĻāĻžāĻ˛" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻ˛ā§āĻĒ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĻ¨ āĻ¯āĻž āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒā§āĻ¨āĻ°āĻžāĻ¯āĻŧ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻāĻ°āĻž āĻāĻĄāĻŧāĻžāĻ¤ā§
āĻ¨āĻŋāĻĻāĻ°ā§āĻļāĻ¨ āĻ¸āĻŦ āĻ¸āĻŽāĻ¯āĻŧāĨ¤ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻ¨āĻĒā§āĻ āĻāĻ°āĻ¤ā§ $/ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻ¸āĻžāĻĨā§
āĻ°ā§āĻāĻ°ā§āĻĄ āĻāĻ°ā§āĻ¨, āĻāĻāĻŋ āĻŦā§āĻļ āĻĻā§āĻ°ā§āĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻļāĻ āĻŦāĻŋāĻļā§āĻˇ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻā§āĻ˛āĻŋāĻ° āĻā§āĻ¯āĻŧā§ āĻĻā§āĻ°ā§āĻ¤ fgrep(1).
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻļāĻŦā§āĻĻāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž (@words) āĻāĻŦāĻ āĻŽā§āĻĻā§āĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž (@files) āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ āĻāĻ°ā§ā§ˇ
āĻāĻāĻāĻŋ āĻŽāĻŋāĻ˛ āĻ°āĻ¯āĻŧā§āĻā§ āĻāĻŽāĻ¨ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻ¨āĻžāĻŽ āĻŦā§āĻ° āĻāĻ°ā§āĻ¨:
$search = 'āĻ¯āĻāĻ¨ (<>) { āĻ āĻ§ā§āĻ¯āĻ¯āĻŧāĻ¨;';
foreach $word (@words) {
$search.= "++\$seen{\$ARGV} āĻ¯āĻĻāĻŋ /\\b$word\\b/;\n";
}
$search. = "}";
@ARGV = @āĻĢāĻžāĻāĻ˛āĻ¸;
undef $/;
eval $search; # āĻāĻ āĻāĻŋā§āĻāĻžāĻ°
$/ = "\n"; # āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻāĻ¨āĻĒā§āĻ āĻĄāĻŋāĻ˛āĻŋāĻŽāĻŋāĻāĻžāĻ°ā§ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻĻāĻŋāĻ¨
foreach $file (āĻ¸āĻ°ā§āĻ āĻā§(% āĻĻā§āĻāĻž)) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $file, "\n";
}
āĻāĻĒ-āĻ¨āĻžāĻŽ āĻŦā§āĻ˛āĻ
āĻāĻĒ-āĻ¨āĻžāĻŽ (āĻĒā§āĻ°ā§āĻā§) āĻŦā§āĻ˛āĻ
āĻāĻĒ-āĻ¨āĻžāĻŽ: ATTRS āĻŦā§āĻ˛āĻ
āĻāĻĒ āĻ¨āĻžāĻŽ (āĻĒā§āĻ°ā§āĻā§): ATTRS āĻŦā§āĻ˛āĻ
āĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ¸āĻāĻā§āĻāĻž, āĻāĻāĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻĢāĻžāĻāĻļāĻ¨ āĻ¨āĻ¯āĻŧ āĻĒā§āĻ°āĻ¤āĻŋ se. āĻāĻāĻāĻŋ āĻŦā§āĻ˛āĻ āĻāĻžāĻĄāĻŧāĻž āĻāĻāĻž āĻ āĻŋāĻ
āĻāĻāĻāĻŋ āĻĢāĻ°ā§āĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻā§āĻˇāĻŖāĻžāĨ¤ āĻāĻāĻāĻŋ NAME āĻāĻžāĻĄāĻŧāĻž, āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦā§āĻ¨āĻžāĻŽā§ āĻĢāĻžāĻāĻļāĻ¨ āĻā§āĻˇāĻŖāĻž, āĻ¤āĻžāĻ
āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ: āĻŦāĻ¨ā§āĻ§ā§āĻ° āĻā§āĻĄ āĻ°ā§āĻĢ āĻāĻāĻŽāĻžāĻ¤ā§āĻ° āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻāĻŦāĻ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlsub āĻāĻŦāĻ perlref āĻĻā§āĻā§āĻ¨; āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĻā§āĻā§āĻ¨
āĻāĻŦāĻ āĻ ā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻ::āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ° āĻ ā§āĻ¯āĻžāĻā§āĻ°āĻŋāĻŦāĻŋāĻāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻ¤āĻĨā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯āĨ¤
__SUB__
āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻā§āĻā§āĻ¨ āĻ¯āĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻŦāĻž āĻŦāĻžāĻāĻ°ā§ "undef"
āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ā§āĻ°āĨ¤
āĻāĻāĻāĻŋ āĻ°ā§āĻā§āĻā§āĻ¸ āĻā§āĻĄ āĻŦā§āĻ˛āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ "__SUB__" āĻāĻ° āĻāĻāĻ°āĻŖ (āĻ¯ā§āĻŽāĻ¨ "/(?{...})/") āĻŦāĻŋāĻˇāĻ¯āĻŧ
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§āĨ¤
āĻāĻ āĻā§āĻā§āĻ¨āĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "v5.16 use" āĻŦāĻž "current_sub" āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻĒāĻ˛āĻŦā§āĻ§āĨ¤ āĻĻā§āĻāĻž
āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĨ¤
āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ° āĻāĻā§āĻ¸āĻĒā§āĻ°, āĻ āĻĢāĻ¸ā§āĻ, āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨
āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ° āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°, āĻ āĻĢāĻ¸ā§āĻ, āĻĻā§āĻ°ā§āĻā§āĻ¯
āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ° āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°, āĻ āĻĢāĻ¸ā§āĻ
EXPR āĻĨā§āĻā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŦā§āĻ° āĻāĻ°ā§ āĻāĻŦāĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻ āĻā§āĻˇāĻ°āĻāĻŋ āĻ āĻĢāĻ¸ā§āĻ āĻāĻŋāĻ°ā§āĻ¤ā§ āĻ°āĻ¯āĻŧā§āĻā§āĨ¤
āĻ āĻĢāĻ¸ā§āĻ āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻšāĻ˛ā§, āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻļā§āĻˇ āĻĨā§āĻā§ āĻ āĻ¨ā§āĻ āĻĒāĻŋāĻāĻ¨ā§ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ LENGTH āĻšāĻ¯āĻŧ
āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻļā§āĻˇā§ āĻ¸āĻŦāĻāĻŋāĻā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ LENGTH āĻāĻŖāĻžāĻ¤ā§āĻŽāĻ āĻšāĻ¯āĻŧ,
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻļā§āĻˇ āĻŦāĻ¨ā§āĻ§ āĻ¯ā§ āĻ āĻ¨ā§āĻ āĻ āĻā§āĻˇāĻ° āĻā§āĻĄāĻŧā§.
my $s = "āĻāĻžāĻ˛ā§ āĻŦāĻŋāĻĄāĻŧāĻžāĻ˛ āĻ¸āĻŦā§āĻ āĻāĻžāĻā§ āĻāĻ°ā§āĻšāĻŖ āĻāĻ°ā§āĻā§";
āĻāĻŽāĻžāĻ° $color = substr $s, 4, 5; # āĻāĻžāĻ˛ā§
my $middle = substr $s, 4, -11; # āĻāĻžāĻ˛ā§ āĻŦāĻŋāĻĄāĻŧāĻžāĻ˛ āĻāĻ°ā§āĻšāĻŖ āĻāĻ°ā§āĻā§
my $end = substr $s, 14; #āĻ¸āĻŦā§āĻ āĻāĻžāĻā§ āĻāĻ āĻ˛āĻžāĻŽ
my $tail = substr $s, -4; # āĻāĻžāĻ
my $z = substr $s, -4, 2; # tr
āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ substr() āĻāĻāĻāĻŋ lvalue āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§, āĻ¯ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ EXPR āĻ¨āĻŋāĻā§āĻ āĻāĻāĻāĻŋ āĻšāĻ¤ā§ āĻšāĻŦā§
āĻŽā§āĻ˛ā§āĻ¯ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ LENGTH-āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻā§āĻ āĻāĻŋāĻā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§āĻ¨, āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻ¸āĻā§āĻā§āĻāĻŋāĻ¤ āĻšāĻŦā§ āĻāĻŦāĻ āĻ¯āĻĻāĻŋ
āĻāĻĒāĻ¨āĻŋ LENGTH āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻĻā§āĻ°ā§āĻ āĻāĻŋāĻā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§āĻ¨, āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻāĻŋ āĻŽāĻŋāĻāĻŽāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻĻā§āĻ§āĻŋ āĻĒāĻžāĻŦā§āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋ
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻāĻ āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻ°āĻžāĻā§āĻ¨, āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ¯āĻžāĻĄ āĻŦāĻž āĻāĻĒāĻ¨āĻžāĻ° āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻžāĻāĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
"sprintf"āĨ¤
āĻ¯āĻĻāĻŋ āĻ āĻĢāĻ¸ā§āĻ āĻāĻŦāĻ LENGTH āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§ āĻ¯āĻž āĻāĻāĻļāĻŋāĻāĻāĻžāĻŦā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻĨāĻžāĻā§, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ°
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ āĻāĻļ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ. āĻ¯āĻĻāĻŋ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻāĻāĻ¯āĻŧ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤ā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻĨāĻžāĻā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻ substr() āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĨ¤ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ
lvalue, āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§ āĻ¯āĻž āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻāĻžāĻŦā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻĨāĻžāĻā§ āĻāĻāĻāĻŋ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻāĻžāĻ¨ā§ āĻ¸ā§āĻŽāĻžāĻ¨āĻž āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻāĻ°āĻŖ āĻĻā§āĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
my $name = 'fred';
substr($name, 4) = 'dy'; # $āĻ¨āĻžāĻŽ āĻāĻāĻ¨ 'āĻĢā§āĻ°ā§āĻĄāĻŋ'
āĻāĻŽāĻžāĻ° $null = substr $name, 6, 2; # āĻĢā§āĻ°āĻ¤ "" (āĻā§āĻ¨ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¨ā§āĻ)
āĻāĻŽāĻžāĻ° $oops = substr $name, 7; # āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¸āĻš undef āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
substr($name, 7) = 'āĻŦā§āĻ¯āĻŦāĻ§āĻžāĻ¨'; # āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻŦāĻŋāĻāĻ˛ā§āĻĒ substr() āĻāĻāĻāĻŋ lvalue āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
ā§ĒāĻ°ā§āĻĨ āĻ¯ā§āĻā§āĻ¤āĻŋāĨ¤ āĻāĻāĻŋ āĻāĻĒāĻ¨āĻžāĻā§ EXPR āĻāĻ° āĻ āĻāĻļāĻā§āĻ˛āĻŋ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻŦāĻ āĻ¯āĻž āĻāĻŋāĻ˛ āĻ¤āĻž āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§ āĻĻā§āĻ¯āĻŧā§ˇ
āĻ¸ā§āĻāĻžāĻ¨ā§ āĻāĻā§ āĻāĻāĻāĻŋ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨, āĻ āĻŋāĻ āĻ¯ā§āĻŽāĻ¨ āĻāĻĒāĻ¨āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻ¸ā§āĻĒā§āĻ˛āĻŋāĻ¸().
my $s = "āĻāĻžāĻ˛ā§ āĻŦāĻŋāĻĄāĻŧāĻžāĻ˛ āĻ¸āĻŦā§āĻ āĻāĻžāĻā§ āĻāĻ°ā§āĻšāĻŖ āĻāĻ°ā§āĻā§";
my $z = substr $s, 14, 7, "jumped from"; # āĻāĻ°ā§āĻšāĻŖ
# $s āĻāĻāĻ¨ "āĻāĻžāĻ˛ā§ āĻŦāĻŋāĻĄāĻŧāĻžāĻ˛ āĻ¸āĻŦā§āĻ āĻāĻžāĻ āĻĨā§āĻā§ āĻ˛āĻžāĻĢ āĻĻāĻŋāĻ¯āĻŧā§āĻā§"
āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ lvalue āĻāĻ° āĻ¤āĻŋāĻ¨-āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĻā§ substr() āĻŦā§āĻ°ā§āĻāĻžāĻ° āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻ¨
'āĻŽā§āĻ¯āĻžāĻāĻŋāĻ āĻŦā§āĻ˛ā§āĻ'; āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻžāĻ° āĻāĻāĻŋāĻā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻšāĻ˛ā§, āĻāĻāĻŋ āĻāĻ¸āĻ˛āĻāĻŋāĻ° āĻā§āĻ¨ āĻ āĻāĻļāĻāĻŋ āĻŽāĻ¨ā§ āĻ°āĻžāĻā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻšāĻā§āĻā§; āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ¸ā§āĻŦāĻ°ā§āĻĒ:
$x = '1234';
(substr($x,1,2)) {āĻāĻ° āĻāĻ¨ā§āĻ¯
$_ = 'a'; āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $x,"\n"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 1a4
$_ = 'xyz'; āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $x,"\n"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 1xyz4
$x = '56789';
$_ = 'pq'; āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $x,"\n"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 5pq9
}
āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻā§āĻ° āĻ¸āĻžāĻĨā§, āĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻļā§āĻˇ āĻĨā§āĻā§ āĻ¤āĻžāĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻŽāĻ¨ā§ āĻ°āĻžāĻā§ āĻ¯āĻāĻ¨
āĻ˛āĻā§āĻˇā§āĻ¯ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¸āĻāĻļā§āĻ§āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§:
$x = '1234';
(substr($x, -3, 2)) {āĻāĻ° āĻāĻ¨ā§āĻ¯
$_ = 'a'; āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $x,"\n"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 1a4, āĻāĻĒāĻ°ā§āĻ° āĻŽāĻ¤
$x = 'abcdefg';
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $_,"\n"; # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻ
}
āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ 5.10 āĻāĻ° āĻāĻā§, āĻāĻāĻāĻŋ lvalue āĻāĻāĻžāĻ§āĻŋāĻāĻŦāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻāĻŋāĻ˛
āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ 5.16 āĻāĻ° āĻāĻā§, āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ āĻ¸āĻš āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻŋāĻ˛āĨ¤
symlink OLDFILE,NEWFILE
āĻĒā§āĻ°āĻžāĻ¨ā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻĒā§āĻ°āĻ¤ā§āĻā§āĻāĻžāĻŦā§ āĻ˛āĻŋāĻā§āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§āĨ¤ āĻāĻ¨ā§āĻ¯ 1 āĻĢā§āĻ°āĻ¤
āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯, āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ 0āĨ¤ āĻ¸āĻŋāĻŽā§āĻŦāĻ˛āĻŋāĻ āĻ˛āĻŋāĻā§āĻāĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¨āĻž āĻāĻŽāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, āĻāĻāĻāĻŋ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§, eval āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨:
$symlink_exists = eval { symlink("",""); 1};
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¸āĻŋāĻŽāĻ˛āĻŋāĻāĻ"āĨ¤
syscal NUMBER, LIST
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻāĻ˛, āĻĒāĻžāĻ¸
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ā§āĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ āĻŦāĻļāĻŋāĻˇā§āĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĨ¤ āĻ¯āĻĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻāĻāĻāĻŋ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ¨āĻŋāĻŽā§āĻ¨āĻ°ā§āĻĒ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ: āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻšāĻ¯āĻŧ,
āĻ¯ā§āĻā§āĻ¤āĻŋ āĻāĻāĻāĻŋ int āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧ. āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻšāĻ¯āĻŧ, āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŽāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻ āĻĒāĻžāĻ¸ āĻšāĻ¯āĻŧ.
āĻāĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻĻāĻžāĻ¯āĻŧāĻŦāĻĻā§āĻ§ āĻ¯ā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻā§āĻ¨āĻāĻŋ āĻā§āĻ°āĻšāĻŖ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¯āĻĨā§āĻˇā§āĻ āĻĻā§āĻ°ā§āĻ āĻĒā§āĻ°āĻžāĻ-āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§
āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¯āĻž āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ āĻ˛ā§āĻāĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻā§āĻˇāĻ°āĻŋāĻ (āĻŦāĻž āĻ āĻ¨ā§āĻ¯) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°āĻŦā§āĻ¨ āĻ¨āĻž
āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻ āĻ¨āĻ¯ā§āĻā§āĻ¯ āĻ¸ā§āĻā§āĻ°āĻŋāĻ) "syscall" āĻāĻ° āĻāĻāĻāĻŋ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻžāĻ°āĻŖ āĻĒāĻžāĻ°ā§āĻ˛āĻā§ āĻ§āĻ°ā§ āĻ¨āĻŋāĻ¤ā§ āĻšāĻŦā§ āĻ¯ā§ āĻā§āĻ¨ā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ˛ā§āĻāĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§. āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻāĻā§āĻˇāĻ°āĻŋāĻ āĻ¨āĻž āĻšāĻ˛ā§
āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻĒā§āĻ°āĻ¸āĻā§āĻā§ āĻāĻāĻ¨āĻ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ, āĻāĻĒāĻ¨āĻžāĻā§ āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻžāĻĨā§ 0 āĻ¯ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¤āĻžāĻĻā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻŽāĻ¤ āĻĻā§āĻāĻ¤ā§ āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻāĻŋ "syswrite" āĻĢāĻžāĻāĻļāĻ¨ āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻāĻ°ā§ (āĻŦāĻž vice
āĻŦāĻŋāĻĒāĻ°ā§āĻ¤):
āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ 'syscall.ph'; # h2ph āĻāĻžāĻ˛āĻžāĻ¨ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
$s = "āĻšāĻžāĻ āĻāĻā§\n";
syscall(&SYS_write, fileno(STDOUT), $s, length $s);
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻāĻ˛ā§ āĻŽāĻžāĻ¤ā§āĻ° 14āĻāĻŋ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§, āĻ¯āĻž
āĻ āĻ¨ā§āĻļā§āĻ˛āĻ¨ āĻāĻ°āĻž āĻāĻāĻŋāĻ¤ (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤) āĻ¯āĻĨā§āĻˇā§āĻāĨ¤
Syscall āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¯ā§ āĻŽāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ āĻ¸ā§āĻāĻŋāĻā§ āĻāĻ˛ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ
āĻāĻ˛ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧ, "syscall" "-1" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ $ āĻ¸ā§āĻ āĻāĻ°ā§! (āĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ)āĨ¤ āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛ āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨
āĻĒāĻžāĻ°ā§āĻ¨ āĻŦā§āĻ§āĻāĻžāĻŦā§ "-1" āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¨āĨ¤ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻ˛āĻā§āĻ˛āĻŋ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻ¸āĻ āĻŋāĻ āĻāĻĒāĻžāĻ¯āĻŧ āĻšāĻ˛ "$!=0" āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž
āĻāĻ˛ āĻāĻ°āĻžāĻ° āĻāĻā§, āĻ¤āĻžāĻ°āĻĒāĻ° $ āĻāĻ° āĻŽāĻžāĻ¨ āĻā§āĻ āĻāĻ°ā§āĻ¨! āĻ¯āĻĻāĻŋ "syscall" "-1" āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
"syscall(&SYS_pipe)" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻā§: āĻāĻāĻŋ āĻĒāĻĄāĻŧāĻžāĻ° āĻĢāĻžāĻāĻ˛ āĻ¨āĻŽā§āĻŦāĻ° āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻĒāĻžāĻāĻĒā§āĻ° āĻļā§āĻˇā§ āĻāĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĢāĻžāĻāĻ˛ āĻ¨āĻŽā§āĻŦāĻ° āĻĒā§āĻ¨āĻ°ā§āĻĻā§āĻ§āĻžāĻ° āĻāĻ°āĻžāĻ° āĻā§āĻ¨ āĻāĻĒāĻžāĻ¯āĻŧ āĻ¨ā§āĻ
āĻ āĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻžāĻ¨ā§āĻ¤. āĻāĻĒāĻ¨āĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "āĻĒāĻžāĻāĻĒ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "syscall"āĨ¤
sysopen FILEHANDLE,FILENAME,MODE
sysopen FILEHANDLE,FILENAME,MODE,PERMS
āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻā§āĻ˛ā§ āĻ¯āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ FILENAME āĻĻā§āĻŦāĻžāĻ°āĻž āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻŦāĻ āĻāĻāĻŋāĻā§ FILEHANDLE āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻāĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§ā§ˇ
āĻ¯āĻĻāĻŋ FILEHANDLE āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻšāĻ¯āĻŧ, āĻ¤āĻŦā§ āĻāĻ° āĻŽāĻžāĻ¨āĻāĻŋ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦā§āĻ¯āĻŦāĻšā§āĻ¤ āĻšāĻ¯āĻŧ; āĻāĻāĻāĻŋ
āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻĒāĻ¯ā§āĻā§āĻ¤āĻāĻžāĻŦā§ āĻ āĻā§āĻāĻžāĻāĻāĻŋāĻĢāĻžāĻ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻāĻ āĻĢāĻžāĻāĻļāĻ¨ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻāĻ˛
āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻā§āĻ˛āĻž(2) FILENAME, MODE, āĻāĻŦāĻ PERMS āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻ¸āĻš āĻĢāĻžāĻāĻļāĻ¨āĨ¤
āĻ¸āĻžāĻĢāĻ˛ā§āĻ¯ā§āĻ° āĻāĻĒāĻ° āĻ¸āĻ¤ā§āĻ¯ āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻĨāĻžāĻ¯āĻŧ "undef" āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤
āĻŽā§āĻĄ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ°ā§āĻ° āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻŽāĻžāĻ¨ āĻāĻŦāĻ āĻĒāĻ¤āĻžāĻāĻž āĻŦāĻŋāĻāĻā§āĻ˛āĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ-āĻ¨āĻŋāĻ°ā§āĻāĻ°; āĻ¤āĻžāĻ°āĻž
āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻŽāĻĄāĻŋāĻāĻ˛ "Fcntl" āĻāĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻāĻĒāĻ˛āĻŦā§āĻ§āĨ¤ āĻāĻĒāĻ¨āĻžāĻ° āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĻā§āĻā§āĻ¨
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻā§āĻ˛āĻž(2) āĻā§āĻ¨ āĻŽāĻžāĻ¨ āĻāĻŦāĻ āĻĒāĻ¤āĻžāĻāĻž āĻŦāĻŋāĻ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻāĻā§ āĻ¤āĻž āĻĻā§āĻāĻ¤ā§ syscall āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻĒāĻžāĻ°ā§āĻ¨
"|"-āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻŦā§āĻļ āĻāĻ¯āĻŧā§āĻāĻāĻŋ āĻĒāĻ¤āĻžāĻāĻž āĻāĻāĻ¤ā§āĻ°āĻŋāĻ¤ āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻŋāĻā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŽāĻžāĻ¨ āĻšāĻ˛ "O_RDONLY" āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ°-āĻĒāĻ āĻ¨ āĻŽā§āĻĄā§ āĻā§āĻ˛āĻžāĻ° āĻāĻ¨ā§āĻ¯,
āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ˛ā§āĻāĻžāĻ° āĻŽā§āĻĄā§ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻžāĻ° āĻāĻ¨ā§āĻ¯ "O_WRONLY" āĻāĻŦāĻ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻžāĻ° āĻāĻ¨ā§āĻ¯ "O_RDWR"
āĻ°āĻŋāĻĄ-āĻ°āĻžāĻāĻ āĻŽā§āĻĄā§āĨ¤
āĻāĻ¤āĻŋāĻšāĻžāĻ¸āĻŋāĻ āĻāĻžāĻ°āĻŖā§, āĻāĻŋāĻā§ āĻŽāĻžāĻ¨ āĻĒāĻžāĻ°ā§āĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻžāĻ āĻāĻ°ā§: 0
āĻŽāĻžāĻ¨ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻĒāĻ āĻ¨āĻ¯ā§āĻā§āĻ¯, 1 āĻŽāĻžāĻ¨ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ°-āĻ˛ā§āĻāĻž āĻāĻŦāĻ 2 āĻŽāĻžāĻ¨ā§ āĻĒāĻ āĻ¨/āĻ˛ā§āĻāĻžāĨ¤ āĻāĻŽāĻ°āĻž āĻāĻžāĻ¨āĻŋ āĻ¯ā§ āĻāĻ
āĻŽāĻžāĻ¨ āĻāĻā§ āĻ¨āĻž OS/390 āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻŦāĻ Macintosh-āĻ āĻāĻžāĻ āĻāĻ°ā§āĻ¨; āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¨āĻž
āĻ¤āĻžāĻĻā§āĻ° āĻ¨āĻ¤ā§āĻ¨ āĻā§āĻĄā§āĨ¤
āĻ¯āĻĻāĻŋ FILENAME āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻžāĻŽā§āĻ° āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨āĻž āĻĨāĻžāĻā§ āĻāĻŦāĻ "āĻāĻĒā§āĻ¨" āĻāĻ˛ āĻāĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°ā§ (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤
āĻāĻžāĻ°āĻŖ āĻŽā§āĻĄā§ "O_CREAT" āĻĒāĻ¤āĻžāĻāĻž āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻĨāĻžāĻā§), āĻ¤āĻžāĻšāĻ˛ā§ PERMS-āĻāĻ° āĻŽāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§
āĻ¨āĻ¤ā§āĻ¨ āĻ¤ā§āĻ°āĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋāĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ PERMS āĻ¯ā§āĻā§āĻ¤āĻŋāĻāĻŋāĻā§ "sysopen" āĻ āĻŦāĻžāĻĻ āĻĻā§āĻ¨,
āĻĒāĻžāĻ°ā§āĻ˛ āĻ āĻā§āĻāĻžāĻ˛ āĻŽāĻžāĻ¨ 0666 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻāĻ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ āĻā§āĻāĻžāĻ˛ā§ āĻšāĻāĻ¯āĻŧāĻž āĻĻāĻ°āĻāĻžāĻ° āĻāĻŦāĻ
āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ "āĻāĻŽāĻžāĻ¸ā§āĻ" āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤āĨ¤
āĻ āĻ¨ā§āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ "O_EXCL" āĻĒāĻ¤āĻžāĻāĻž āĻāĻā§āĻ¸āĻā§āĻ˛ā§āĻ¸āĻŋāĻ āĻŽā§āĻĄā§ āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ˛āĻŦā§āĻ§āĨ¤
āĻāĻ āĻ¨āĻž locking: exclusiveness āĻŽāĻžāĻ¨ā§ āĻāĻāĻžāĻ¨ā§ āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻā§ āĻĨā§āĻā§āĻ āĻĨāĻžāĻā§,
sysopen() āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧ "O_EXCL" āĻ¨ā§āĻāĻāĻ¯āĻŧāĻžāĻ°ā§āĻ āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻāĻžāĻ āĻ¨āĻžāĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻāĻŦāĻ āĻāĻ° āĻā§āĻ¨ā§ āĻĒā§āĻ°āĻāĻžāĻŦ āĻ¨ā§āĻā§ˇ
āĻ¯āĻĻāĻŋ āĻ¨āĻž "O_CREAT" āĻĒāĻ¤āĻžāĻāĻžāĻ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ "O_CREAT|O_EXCL" āĻ¸ā§āĻ āĻāĻ°āĻž āĻĢāĻžāĻāĻ˛āĻāĻŋāĻā§ āĻāĻāĻāĻžāĻ¯āĻŧā§ˇ
āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻ˛āĻŋāĻā§āĻ āĻšāĻ˛ā§ āĻā§āĻ˛āĻž āĻĨā§āĻā§āĨ¤ āĻāĻāĻž āĻĒā§āĻ°āĻ¤ā§āĻā§ āĻŦāĻŋāĻ°ā§āĻĻā§āĻ§ā§ āĻ°āĻā§āĻˇāĻž āĻāĻ°ā§ āĻ¨āĻž
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĒāĻžāĻĨā§ āĻ˛āĻŋāĻā§āĻāĨ¤
āĻāĻāĻ¨āĻ āĻāĻāĻ¨āĻ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻĢāĻžāĻāĻ˛ āĻāĻžāĻāĻāĻžāĻ āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨. āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
"O_TRUNC" āĻĒāĻ¤āĻžāĻāĻžāĨ¤ "O_RDONLY" āĻāĻ° āĻ¸āĻžāĻĨā§ "O_TRUNC" āĻāĻ° āĻāĻāĻ°āĻŖ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ā§ˇ
"āĻ¸āĻŋāĻ¸ā§āĻĒā§āĻ¨" āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ 0644 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ˛ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻŦ āĻāĻŽāĻ āĻāĻāĻŋāĻ¤, āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻĻā§āĻ°ā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻāĻāĻŋ āĻāĻ°ā§ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋāĻŽā§āĻ˛āĻ āĻāĻŽāĻžāĻ¸ā§āĻā§āĻ° āĻŦāĻŋāĻāĻ˛ā§āĻĒāĨ¤ āĻāĻāĻž āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻžāĻ˛āĨ¤ āĻĻā§āĻā§āĻ¨
perlfunc(1) āĻāĻ āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻāĻ°āĻ āĻāĻžāĻ¨āĻ¤ā§ "umask" āĻ āĻĒā§āĻ°āĻŦā§āĻļ āĻāĻ°ā§āĻ¨āĨ¤
āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ "sysopen" āĻāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§ fdopen() āĻ¸āĻŋ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻĢāĻžāĻāĻļāĻ¨āĨ¤ āĻ āĻ¨ā§āĻ āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§,
fdopen() āĻ¯āĻāĻ¨ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻŽāĻžāĻ¨, āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ 255 āĻ āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ°ā§ āĻ¤āĻāĻ¨ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻŦāĻ˛ā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤āĨ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻ¯āĻĻāĻŋ āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻŖāĻ¨āĻžāĻāĻžāĻ°ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻ¯āĻŧ āĻ¤āĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻāĻĨāĻž āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§āĻ¨ POSIX::open()
āĻĢāĻžāĻāĻļāĻ¨.
āĻĢāĻžāĻāĻ˛ āĻā§āĻ˛āĻžāĻ° āĻāĻāĻāĻŋ āĻ¸āĻĻāĻ¯āĻŧ, āĻŽā§āĻĻā§ āĻŦā§āĻ¯āĻžāĻā§āĻ¯āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlopentut āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¸āĻŋāĻ¸ā§āĻĒā§āĻ¨"āĨ¤
sysread āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻ āĻĢāĻ¸ā§āĻ
sysread āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻĻā§āĻ°ā§āĻā§āĻ¯
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĨā§āĻā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ SCALAR-āĻ āĻĄā§āĻāĻžāĻ° LENGTH āĻŦāĻžāĻāĻ āĻĒāĻĄāĻŧāĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§
FILEHANDLE, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻĒāĻĄāĻŧāĻž(2)āĨ¤ āĻāĻāĻŋ āĻŦāĻžāĻĢāĻžāĻ°āĻĄ āĻāĻāĻāĻā§ āĻŦāĻžāĻāĻĒāĻžāĻ¸ āĻāĻ°ā§, āĻ¤āĻžāĻ āĻāĻāĻŋāĻā§ āĻ āĻ¨ā§āĻ¯ā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻļāĻžāĻā§āĻā§
āĻ°āĻŋāĻĄ, "āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ", "āĻ˛āĻŋāĻāĻ¤ā§", "āĻā§āĻāĻ", "āĻŦāĻ˛ā§", āĻŦāĻž "eof" āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻ° āĻāĻžāĻ°āĻŖ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛āĻŋāĻ āĻŦāĻž stdio āĻ¸ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĄā§āĻāĻž āĻŦāĻžāĻĢāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§ āĻŦāĻžāĻāĻā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻĒāĻĄāĻŧā§āĻ¨, āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇā§ 0, āĻŦāĻž undef āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĨāĻžāĻā§ (āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ $! āĻāĻāĻžāĻĄāĻŧāĻžāĻ
āĻ¸ā§āĻ)āĨ¤ SCALAR āĻŦāĻĄāĻŧ āĻŦāĻž āĻ¸āĻā§āĻā§āĻāĻŋāĻ¤ āĻšāĻŦā§ āĻ¯āĻžāĻ¤ā§ āĻļā§āĻˇ āĻŦāĻžāĻāĻāĻāĻŋ āĻāĻ¸āĻ˛ā§ āĻļā§āĻˇ āĻšāĻ¯āĻŧ
āĻĒāĻĄāĻŧāĻžāĻ° āĻĒāĻ° āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§āĻ° āĻŦāĻžāĻāĻāĨ¤
āĻāĻāĻāĻŋ āĻ āĻĢāĻ¸ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻĒāĻ āĻŋāĻ¤ āĻĄā§āĻāĻžāĻā§ āĻ āĻ¨ā§āĻ¯ āĻ¸ā§āĻā§āĻ°āĻŋāĻ-āĻāĻ° āĻāĻŋāĻā§ āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ āĻ°āĻžāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯
āĻļā§āĻ°ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ āĻ āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻ āĻā§āĻˇāĻ°ā§āĻ° āĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻļā§āĻˇ āĻĨā§āĻā§ āĻĒāĻŋāĻāĻ¨ā§āĻ° āĻĻāĻŋāĻā§ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻā§āĻā§āĨ¤ āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻŦāĻĄāĻŧ āĻāĻāĻāĻŋ āĻāĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ
SCALAR āĻāĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻĢāĻ˛ā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋāĻā§ "\0" āĻĻāĻŋāĻ¯āĻŧā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ā§āĻ¯āĻŧ āĻāĻāĻžāĻ°ā§ āĻĒā§āĻ¯āĻžāĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ°āĻŋāĻĄā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¯ā§āĻā§āĻ¤ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻā§ āĻŦāĻžāĻāĻāĨ¤
āĻāĻŽāĻ¨ āĻāĻŋāĻā§ āĻ¨ā§āĻ syseof() āĻĢāĻžāĻāĻļāĻ¨, āĻ¯āĻž āĻ āĻŋāĻ āĻāĻā§, āĻ¯ā§āĻšā§āĻ¤ā§ eof() āĻĄāĻŋāĻāĻžāĻāĻ¸ā§ āĻāĻžāĻ˛ āĻāĻžāĻ āĻāĻ°ā§ āĻ¨āĻž
āĻĢāĻžāĻāĻ˛ (āĻ¯ā§āĻŽāĻ¨ ttys) āĻ¯āĻžāĻāĻšā§āĻāĨ¤ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ sysread() āĻāĻŦāĻ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨āĻŋāĻ¤ā§ 0 āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨
āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻĒāĻ¨ā§āĻ¨ āĻāĻ°ā§āĻā§āĻ¨ āĻāĻŋāĻ¨āĻž.
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋāĻā§ ":utf8" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¤āĻŦā§ āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋ āĻĒāĻĄāĻŧāĻž āĻšāĻ¯āĻŧ
āĻŦāĻžāĻāĻā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ (āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻ āĻĢāĻ¸ā§āĻ āĻāĻŦāĻ āĻāĻ° āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ sysread() āĻāĻāĻ¨āĻŋāĻā§āĻĄā§ āĻāĻā§
āĻāĻ°āĻŋāĻ¤ā§āĻ°). ": āĻāĻ¨āĻā§āĻĄāĻŋāĻ(...)" āĻ¸ā§āĻ¤āĻ°āĻāĻŋ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤āĻāĻžāĻŦā§ ": utf8" āĻ¸ā§āĻ¤āĻ°āĻāĻŋ āĻĒā§āĻ°āĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĨ¤ āĻĻā§āĻāĻž
"āĻŦāĻŋāĻ¨āĻŽā§āĻĄ", "āĻāĻĒā§āĻ¨", āĻāĻŦāĻ "āĻāĻĒā§āĻ¨" āĻĒā§āĻ°āĻžāĻāĻŽāĻž, āĻāĻĒā§āĻ¨āĨ¤
sysseek āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨, āĻ¯ā§āĻāĻžāĻ¨ā§
FILEHANDLE āĻāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻŦāĻžāĻāĻā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ¸ā§āĻ āĻāĻ°ā§ āĻā§āĻāĻ(2)āĨ¤ FILEHANDLE āĻāĻāĻāĻŋ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻā§āĻ¸āĻĒā§āĻ°ā§āĻļāĻ¨ āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻĻā§āĻ¯āĻŧāĨ¤ WHENCE āĻāĻ° āĻŽāĻžāĻ¨ 0
POSITION-āĻ āĻ¨āĻ¤ā§āĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§; 1 āĻāĻāĻŋ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻĒā§āĻ˛āĻžāĻ¸ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§
āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨; āĻāĻŦāĻ 2 āĻāĻāĻŋāĻā§ EOF āĻĒā§āĻ˛āĻžāĻ¸ āĻĒāĻāĻŋāĻļāĻ¨ā§ āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§, āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻāĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ in āĻŦāĻžāĻāĻ: āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻ āĻāĻ°āĻž āĻĨāĻžāĻā§ (āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖ ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ(utf8)" I/O āĻ¸ā§āĻ¤āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§), āĻŦāĻ˛ā§āĻ¨ () āĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻŦā§,
āĻ āĻā§āĻˇāĻ° āĻ āĻĢāĻ¸ā§āĻ āĻ¨āĻ¯āĻŧ (āĻāĻžāĻ°āĻŖ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ˛ā§ āĻ¤āĻž āĻ°ā§āĻ¨ā§āĻĄāĻžāĻ° āĻšāĻŦā§ sysseek() āĻ āĻā§āĻ°āĻšāĻŖāĻ¯ā§āĻā§āĻ¯āĻāĻžāĻŦā§
āĻ§ā§āĻ°)āĨ¤
sysseek() āĻ¸ā§āĻŦāĻžāĻāĻžāĻŦāĻŋāĻ āĻŦāĻžāĻĢāĻžāĻ° IO āĻŦāĻžāĻāĻĒāĻžāĻ¸ āĻāĻ°ā§, āĻ¤āĻžāĻ "sysread" āĻāĻžāĻĄāĻŧāĻž āĻ āĻ¨ā§āĻ¯ āĻ°āĻŋāĻĄā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻŋ āĻŽāĻŋāĻļā§āĻ°āĻŋāĻ¤ āĻāĻ°āĻž
(āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ "<>" āĻŦāĻž āĻĒāĻĄāĻŧā§āĻ¨ ()) "āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ", "āĻ˛āĻŋāĻā§āĻ¨", "āĻā§āĻāĻ", "āĻŦāĻ˛ā§", āĻŦāĻž "eof" āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻŋāĻšā§āĻŦāĻ˛āĻ¤āĻžāĻ¯āĻŧāĨ¤
WHENCE āĻāĻ° āĻāĻ¨ā§āĻ¯, āĻāĻĒāĻ¨āĻŋ "SEEK_SET", "SEEK_CUR", āĻāĻŦāĻ "SEEK_END" āĻ§ā§āĻ°ā§āĻŦāĻāĻā§āĻ˛āĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
(āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§, āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨, āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇ) Fcntl āĻŽāĻĄāĻŋāĻāĻ˛ āĻĨā§āĻā§āĨ¤ āĻŦā§āĻ¯āĻžāĻŦāĻšāĻžāĻ°
āĻ§ā§āĻ°ā§āĻŦāĻāĻā§āĻ˛āĻŋāĻ 0, 1, āĻāĻŦāĻ 2 āĻāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°āĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ
āĻāĻāĻāĻŋ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻ˛" āĻĢāĻžāĻāĻļāĻ¨ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§āĻ¨:
Fcntl 'SEEK_CUR' āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻāĻĒ-āĻ¸āĻŋāĻ¸ā§āĻā§āĻ˛ { sysseek($_[0], 0, SEEK_CUR) }
āĻ¨āĻ¤ā§āĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨, āĻŦāĻž āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻāĻĒāĻ° āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻļā§āĻ¨ā§āĻ¯ā§āĻ° āĻāĻāĻāĻŋ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĢāĻŋāĻ°ā§ "0 āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻ¤ā§āĻ¯"; āĻāĻāĻāĻžāĻŦā§ "sysseek" āĻ¸āĻĢāĻ˛āĻ¤āĻž āĻāĻŦāĻ āĻŽāĻŋāĻĨā§āĻ¯āĻžāĻ° āĻāĻĒāĻ° āĻ¸āĻ¤ā§āĻ¯ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻāĻĒāĻ°, āĻ¤āĻŦā§āĻ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻ¨āĻ āĻ¸āĻšāĻā§āĻ āĻ¨āĻ¤ā§āĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ¤āĻžāĻ˛āĻŋāĻāĻž
"exec LIST" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ āĻŋāĻ āĻāĻāĻ āĻāĻŋāĻ¨āĻŋāĻ¸ āĻāĻ°ā§, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ āĻĒā§āĻ°āĻĨāĻŽā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ
āĻĒāĻŋāĻ¤āĻžāĻŽāĻžāĻ¤āĻžāĻ° āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻĨā§āĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĨ¤ āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖ
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻāĻā§āĻ¯āĻžāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻžāĻ§āĻŋāĻ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĨāĻžāĻāĻ˛ā§
LIST, āĻ āĻĨāĻŦāĻž āĻ¯āĻĻāĻŋ LIST āĻāĻāĻžāĻ§āĻŋāĻ āĻŽāĻžāĻ¨ āĻ¸āĻš āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻļā§āĻ°ā§ āĻāĻ°ā§
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻŦāĻžāĻā§ āĻ āĻāĻļ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻ¸āĻš āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĨ¤ āĻāĻā§ āĻ¯āĻĻāĻŋ
āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ, āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻāĻŋ āĻļā§āĻ˛ āĻŽā§āĻāĻžāĻā§āĻ¯āĻžāĻ°ā§āĻā§āĻāĻžāĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻ¯āĻĻāĻŋ
āĻ¯ā§āĻā§āĻ¨āĻ āĻāĻā§, āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻļā§āĻ˛ā§ āĻĒāĻžāĻ āĻžāĻ¨ā§ āĻšāĻ¯āĻŧ
(āĻāĻ "/ āĻŦāĻŋāĻ¨ / SH -c" āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧ) āĻ¯āĻĻāĻŋ āĻĨāĻžāĻā§
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§ āĻā§āĻ¨ āĻļā§āĻ˛ āĻŽā§āĻāĻžāĻā§āĻ¯āĻžāĻ°ā§āĻā§āĻāĻžāĻ° āĻ¨ā§āĻ, āĻāĻāĻŋ āĻļāĻŦā§āĻĻā§ āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻŦāĻ āĻ¸āĻ°āĻžāĻ¸āĻ°āĻŋ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
"execvp", āĻ¯āĻž āĻāĻ°āĻ āĻĻāĻā§āĻˇāĨ¤ āĻāĻāĻ¨ā§āĻĄā§āĻā§, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ¤āĻžāĻ˛āĻŋāĻāĻž" āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸
āĻ¨āĻŋāĻ°ā§āĻāĻ°āĻ¯ā§āĻā§āĻ¯āĻāĻžāĻŦā§ āĻļā§āĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻšāĻŦā§; "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¤āĻžāĻ˛āĻŋāĻāĻž", āĻāĻŽāĻ¨āĻāĻŋ āĻāĻāĻžāĻ§āĻŋāĻ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¸āĻš,
āĻĒā§āĻ°āĻĨāĻŽ āĻ¸ā§āĻĒāĻ¨ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ˛ā§ āĻļā§āĻ˛ā§ āĻĢāĻŋāĻ°ā§ āĻ¯āĻžāĻŦā§āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ āĻ¯ā§ āĻā§āĻ¨ā§ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻā§ āĻāĻāĻāĻĒā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻā§āĻ˛āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĢāĻžāĻāĻ˛ āĻĢā§āĻ˛āĻžāĻļ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŦā§
āĻāĻāĻāĻŋ āĻāĻžāĻāĻāĻžāĻāĻžāĻŽāĻ āĻāĻ°ā§āĻ¨, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻŋāĻā§ āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻžāĻ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻ āĻĻā§āĻā§āĻ¨)āĨ¤ āĻšāĻ¤ā§
āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ, āĻāĻĒāĻ¨āĻžāĻā§ $| āĻ¸ā§āĻ āĻāĻ°āĻ¤ā§ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ (āĻāĻāĻ°ā§āĻāĻŋāĻ¤ā§ $AUTOFLUSH) āĻ āĻĨāĻŦāĻž "autoflush()" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻāĻ˛ āĻāĻ°ā§āĻ¨
āĻ¯ā§ āĻā§āĻ¨ā§ āĻā§āĻ˛āĻž āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§ "IO::Handle" āĻāĻ°āĨ¤
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻ¨ āĻŽāĻžāĻ¨ āĻšāĻ˛ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻž āĻ¯āĻž "āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨" āĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢāĻŋāĻ°ā§ āĻāĻ¸ā§āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋ
āĻĒā§āĻ°āĻā§āĻ¤ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻŽāĻžāĻ¨ āĻĒāĻžāĻ¨, āĻāĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĄāĻžāĻ¨āĻĻāĻŋāĻā§ āĻ¸āĻ°āĻžāĻ¨ (āĻ¨ā§āĻā§ āĻĻā§āĻā§āĻ¨)āĨ¤ āĻāĻāĻžāĻĄāĻŧāĻžāĻ "exec" āĻĻā§āĻā§āĻ¨āĨ¤ āĻāĻ
is āĻ¨āĻž āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĨā§āĻā§ āĻāĻāĻāĻĒā§āĻ āĻā§āĻ¯āĻžāĻĒāĻāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨; āĻ¯ā§ āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻŋāĻ¤
āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŦā§āĻ¯āĻžāĻāĻāĻŋāĻā§āĻ¸ āĻŦāĻž "qx//" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻ¯ā§āĻŽāĻ¨āĻāĻŋ perlop-āĻ "`STRING`" āĻ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻ° āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨
-1 āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻļā§āĻ°ā§ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻŦāĻž āĻāĻ° āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨(2) āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛
(āĻāĻžāĻ°āĻŖā§ $ āĻĒāĻ°āĻŋāĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°ā§āĻ¨)āĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ" (āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻ āĻŦāĻŋāĻ) āĻ¤ā§āĻ°ā§āĻāĻŋāĻ¤ā§ āĻŽāĻžāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻāĻžāĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŦāĻžāĻ° āĻĻā§āĻā§āĻ¨
āĻ āĻā§āĻĄāĻŋ āĻĒā§āĻ°āĻžāĻāĻŽāĻž āĻ
"exec" āĻāĻ° āĻŽāĻ¤ā§, "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ" āĻāĻĒāĻ¨āĻžāĻā§ āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻ¨āĻžāĻŽ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻŦāĻ˛āĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
"āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽ āĻ¤āĻžāĻ˛āĻŋāĻāĻž" āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸āĨ¤ āĻāĻŦāĻžāĻ°, "exec" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¯ā§āĻšā§āĻ¤ā§ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ" āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ "SIGINT" āĻāĻŦāĻ "SIGQUIT" āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ
āĻāĻ āĻ¸āĻāĻā§āĻ¤ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤āĻŋāĻ° āĻĒāĻ°ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻšāĻ¯āĻŧā§ āĻ¯āĻžāĻŦā§ āĻŦāĻ˛ā§ āĻāĻļāĻž āĻāĻ°ā§āĻ¨ āĻāĻĒāĻ¨āĻžāĻā§ āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ā§āĻ° āĻāĻĒāĻ° āĻāĻŋāĻ¤ā§āĻ¤āĻŋ āĻāĻ°ā§ āĻ¨āĻŋāĻā§āĻ āĻ¤āĻž āĻāĻ°āĻ¤ā§āĨ¤
@args = ("command", "arg1", "arg2");
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ(@args) == 0
āĻ¨āĻžāĻāĻŋ āĻĄāĻžāĻ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ @āĻāĻ°ā§āĻāĻ¸ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§āĻā§: $?"
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻŽā§āĻ¯āĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ˛āĻŋ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ" āĻāĻ° āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻž āĻĒāĻ°āĻŋāĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨ āĻ¤āĻŦā§ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻ¸āĻŦ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
$ āĻĒāĻ°āĻŋāĻĻāĻ°ā§āĻļāĻ¨ āĻāĻ°ā§ āĻŦā§āĻ¯āĻ°ā§āĻĨāĻ¤āĻžāĻ° āĻŽā§āĻĄ? āĻāĻāĻžāĻ° āĻŽāĻ¤:
āĻ¯āĻĻāĻŋ ($? == -1) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ "āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻ āĻāĻ°āĻ¤ā§ āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ¯āĻŧā§āĻā§: $!\n";
}
elsif ($? & 127) {
printf "āĻļāĻŋāĻļā§ āĻŽāĻžāĻ°āĻž āĻā§āĻā§ %d āĻ¸āĻāĻā§āĻ¤, %s coredump\n"
($? & 127), ($? & 128) ? 'āĻ¸āĻš' : 'āĻāĻžāĻĄāĻŧāĻž';
}
āĻ āĻ¨ā§āĻ¯ {
printf "āĻļāĻŋāĻļā§ %d\n āĻŽāĻžāĻ¨ āĻ¸āĻš āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°ā§āĻā§", $? >> 8;
}
āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻžāĻŦā§, āĻāĻĒāĻ¨āĻŋ "W*()" āĻāĻ° āĻ¸āĻžāĻĨā§ "${^CHILD_ERROR_NATIVE}" āĻāĻ° āĻŽāĻžāĻ¨ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
POSIX āĻŽāĻĄāĻŋāĻāĻ˛ āĻĨā§āĻā§ āĻāĻ˛āĨ¤
āĻ¯āĻāĻ¨ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ" āĻāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻā§āĻ˛āĻŋ āĻļā§āĻ˛, āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻāĻŦāĻ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ°ā§āĻā§āĻˇāĻāĻžāĻŦā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻā§āĻĄ āĻ¤āĻžāĻ° quirks āĻ¸āĻžāĻĒā§āĻā§āĻˇā§. āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlop āĻāĻŦāĻ "exec"-āĻ "`STRING`" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¯ā§āĻšā§āĻ¤ā§ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ" āĻāĻāĻāĻŋ "āĻĢāĻ°ā§āĻ" āĻāĻŦāĻ "āĻ āĻĒā§āĻā§āĻˇāĻž" āĻāĻ°ā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ "SIGCHLD" āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°āĻā§ āĻĒā§āĻ°āĻāĻžāĻŦāĻŋāĻ¤ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻĻā§āĻāĻž
āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlipc.
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ"āĨ¤
syswrite āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻ āĻĢāĻ¸ā§āĻ
syswrite āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻĻā§āĻ°ā§āĻā§āĻ¯
syswrite FILEHANDLE,Scalar
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ SCALAR āĻĨā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§ āĻĄā§āĻāĻžāĻ° LENGTH āĻŦāĻžāĻāĻ āĻ˛ā§āĻāĻžāĻ° āĻĒā§āĻ°āĻā§āĻˇā§āĻāĻž
FILEHANDLE, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ˛ā§āĻāĻž(2)āĨ¤ āĻ¯āĻĻāĻŋ LENGTH āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ¨āĻž āĻĨāĻžāĻā§, āĻĒā§āĻ°ā§ SCALAR āĻ˛āĻŋāĻā§āĨ¤ āĻāĻāĻž
āĻŦāĻžāĻĢāĻžāĻ° āĻāĻ°āĻž IO āĻā§ āĻŦāĻžāĻāĻĒāĻžāĻ¸ āĻāĻ°ā§, āĻ¤āĻžāĻ āĻāĻāĻŋāĻā§ āĻ°āĻŋāĻĄā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻļā§āĻ°āĻŋāĻ¤ āĻāĻ°āĻž (sysread() āĻŦā§āĻ¯āĻ¤ā§āĻ¤), "āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ",
"āĻ˛āĻŋāĻā§āĻ¨", "āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨", "āĻŦāĻ˛ā§", āĻŦāĻž "eof" āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻ° āĻāĻžāĻ°āĻŖ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻāĻžāĻ°āĻŖ perlio āĻāĻŦāĻ stdio
āĻ¸ā§āĻ¤āĻ°āĻā§āĻ˛āĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĄā§āĻāĻž āĻŦāĻžāĻĢāĻžāĻ° āĻāĻ°ā§āĨ¤ āĻĒā§āĻ°āĻā§āĻ¤āĻĒāĻā§āĻˇā§ āĻ˛āĻŋāĻāĻŋāĻ¤ āĻŦāĻžāĻāĻ āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§, āĻŦāĻž "undef"
āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻāĻŋāĻ˛ (āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ errno āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ $! āĻ¸ā§āĻ āĻāĻ°āĻž āĻāĻā§)āĨ¤ āĻ¯āĻĻāĻŋ LENGTH
āĻ āĻĢāĻ¸ā§āĻ-āĻāĻ° āĻĒāĻ°ā§ SCALAR-āĻ āĻāĻĒāĻ˛āĻā§āĻ¯ āĻĄā§āĻāĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¯āĻ¤āĻāĻž āĻĄā§āĻāĻž
āĻ¯ā§āĻŽāĻ¨ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ˛ā§āĻāĻž āĻšāĻŦā§āĨ¤
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻāĻŋāĻā§ āĻ āĻāĻļ āĻĨā§āĻā§ āĻĄāĻžāĻāĻž āĻ˛ā§āĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ āĻĢāĻ¸ā§āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻļā§āĻ°ā§āĻ¤ā§. āĻāĻāĻāĻŋ āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ āĻ˛ā§āĻāĻžāĻā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§ āĻ¯āĻž āĻ āĻ¨ā§āĻ āĻ āĻā§āĻˇāĻ° āĻāĻŖāĻ¨āĻž āĻāĻ°ā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻļā§āĻˇ āĻĨā§āĻā§ āĻĒāĻŋāĻāĻ¨ā§āĻ° āĻĻāĻŋāĻā§ SCALAR āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻļā§āĻ¨ā§āĻ¯ āĻšāĻ˛ā§, āĻāĻĒāĻ¨āĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
0 āĻāĻ° āĻ āĻĢāĻ¸ā§āĻ
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĻŽā§āĻ˛āĻ: āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋ ":utf8" āĻāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ UTF-8 āĻ āĻāĻ¨āĻā§āĻĄ āĻāĻ°āĻž āĻāĻāĻ¨āĻŋāĻā§āĻĄ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋ āĻšāĻ˛
āĻŦāĻžāĻāĻā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻ˛āĻŋāĻāĻŋāĻ¤, āĻāĻŦāĻ āĻāĻ° LENGTH, āĻ āĻĢāĻ¸ā§āĻ āĻāĻŦāĻ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ syswrite() āĻšāĻ¯āĻŧ
(UTF8-āĻāĻ¨āĻā§āĻĄā§āĻĄ āĻāĻāĻ¨āĻŋāĻā§āĻĄ) āĻ āĻā§āĻˇāĻ°ā§āĨ¤ ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ(...)" āĻ¸ā§āĻ¤āĻ°āĻāĻŋ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤āĻāĻžāĻŦā§
": utf8" āĻ¸ā§āĻ¤āĻ° āĻĒā§āĻ°āĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĨ¤ āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻāĻžāĻŦā§, āĻ¯āĻĻāĻŋ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋ āĻāĻāĻāĻŋ āĻĻāĻŋāĻ¯āĻŧā§ āĻāĻŋāĻšā§āĻ¨āĻŋāĻ¤ āĻ¨āĻž āĻšāĻ¯āĻŧ
āĻāĻ¨āĻā§āĻĄāĻŋāĻ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ 255 āĻāĻ° āĻāĻĒāĻ°ā§ āĻā§āĻĄ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻ āĻ¸āĻš āĻ āĻā§āĻˇāĻ° āĻ˛ā§āĻāĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻ¨, āĻāĻāĻāĻŋ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§
āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ "āĻŦāĻŋāĻ¨āĻŽā§āĻĄ", "āĻāĻĒā§āĻ¨" āĻāĻŦāĻ "āĻāĻĒā§āĻ¨" āĻĒā§āĻ°āĻžāĻāĻŽāĻž, āĻāĻĒā§āĻ¨ āĻĻā§āĻā§āĻ¨āĨ¤
FILEHANDLE āĻā§ āĻŦāĻ˛ā§āĻ¨
āĻŦāĻ˛āĻž
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ in āĻŦāĻžāĻāĻ FILEHANDLE āĻāĻ° āĻāĻ¨ā§āĻ¯, āĻŦāĻž -1 āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯āĨ¤ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻāĻŋ āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻ¯āĻžāĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻā§āĻ¤ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ FILEHANDLE
āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯ā§ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻļā§āĻˇ āĻĒāĻ āĻŋāĻ¤ āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ in āĻŦāĻžāĻāĻ: āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻāĻŋ āĻ āĻā§āĻˇāĻ°āĻā§āĻ˛āĻŋāĻ¤ā§ āĻāĻžāĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻ āĻāĻ°āĻž āĻĨāĻžāĻā§ (āĻāĻ° āĻāĻ¨ā§āĻ¯
āĻāĻĻāĻžāĻšāĻ°āĻŖ ":āĻāĻ¨āĻā§āĻĄāĻŋāĻ(utf8)" āĻāĻĒā§āĻ¨ āĻ˛ā§āĻ¯āĻŧāĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§), āĻŦāĻ˛ā§āĻ¨ () āĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ āĻĢāĻŋāĻ°āĻŋāĻ¯āĻŧā§ āĻĻā§āĻŦā§,
āĻ āĻā§āĻˇāĻ° āĻ āĻĢāĻ¸ā§āĻ āĻ¨āĻ¯āĻŧ (āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻ°ā§āĻ¨ā§āĻĄāĻžāĻ° āĻāĻ°āĻŦā§ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ () āĻāĻŦāĻ āĻŦāĻ˛ā§āĻ¨ () āĻŦāĻ°āĻ āĻ§ā§āĻ°)āĨ¤
āĻāĻ° āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻŦāĻ˛ā§āĻ¨ () āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻ¸ā§āĻā§āĻ°āĻŋāĻŽāĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ STDIN āĻāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§
āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ: āĻāĻāĻŋ -1 āĻŦāĻž āĻ āĻ¨ā§āĻ¯ āĻāĻŋāĻā§ āĻĢāĻŋāĻ°ā§ āĻāĻ¸āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻŦāĻ˛ā§āĻ¨ () āĻĒāĻžāĻāĻĒ, āĻĢāĻŋāĻĢā§āĻ¸ āĻāĻŦāĻ
āĻ¸āĻā§āĻ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ -1 āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤
āĻā§āĻ¨ "āĻ¸āĻŋāĻ¸ā§āĻā§āĻ˛" āĻĢāĻžāĻāĻļāĻ¨ āĻ¨ā§āĻāĨ¤ āĻāĻ° āĻāĻ¨ā§āĻ¯ "sysseek(FH, 0, 1)" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž āĻŦāĻ˛ā§āĻ¨ () (āĻŦāĻž āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻŦāĻžāĻĢāĻžāĻ° āĻāĻ°āĻž I/O āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨) āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§ āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻžāĻ˛āĻŋāĻ¤ sysread(), syswrite(), āĻŦāĻž sysseek(). āĻ¯āĻžāĻ°āĻž āĻĢāĻžāĻāĻļāĻ¨ āĻāĻĒā§āĻā§āĻˇāĻž
āĻŦāĻžāĻĢāĻžāĻ°āĻŋāĻ, āĻ¯āĻāĻ¨ āĻŦāĻ˛ā§āĻ¨ () āĻ¨āĻž.
DIRHANDLE āĻā§ āĻŦāĻ˛āĻž
DIRHANDLE-āĻ "readdir" āĻ°ā§āĻāĻŋāĻ¨ā§āĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻĻā§āĻāĻžāĻ¯āĻŧāĨ¤ āĻŽāĻžāĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ¤ā§ āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻ¤ā§ "seekdir" āĻā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ "telldir" āĻāĻā§
āĻ¸āĻāĻļā§āĻ˛āĻŋāĻˇā§āĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋāĻ° āĻŽāĻ¤ā§ āĻ¸āĻŽā§āĻāĻžāĻŦā§āĻ¯ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻāĻŽāĻĒā§āĻ¯āĻžāĻāĻļāĻ¨ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻāĻ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž
āĻ°ā§āĻāĻŋāĻ¨āĨ¤
āĻāĻžāĻ variable,CLASSNAME,LIST
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻ āĻļā§āĻ°ā§āĻŖā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛āĻā§ āĻāĻŦāĻĻā§āĻ§ āĻāĻ°ā§ āĻ¯āĻž āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻŦā§
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻāĻ¨ā§āĻ¯. VARIABLE āĻšāĻ˛ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻ¨āĻžāĻŽ āĻŽāĻ¨ā§āĻ¤ā§āĻ°āĨ¤ CLASSNAME āĻšāĻ˛ā§ˇ
āĻ¸āĻ āĻŋāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻŦāĻ¸ā§āĻ¤ā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻļā§āĻ°ā§āĻŖā§āĻ° āĻ¨āĻžāĻŽāĨ¤ āĻā§āĻ¨ āĻ āĻ¤āĻŋāĻ°āĻŋāĻā§āĻ¤ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ
āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ° āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻ¯āĻŧ (āĻ āĻ°ā§āĻĨāĻžā§ "TIESCALAR",
"TIEHANDLE", "TIEARRAY", āĻŦāĻž "TIEHASH")āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ āĻ¯ā§āĻŽāĻ¨ āĻĒāĻžāĻ°ā§ āĻ¯ā§āĻā§āĻ¤āĻŋ
C-āĻāĻ° "dbm_open()" āĻĢāĻžāĻāĻļāĻ¨ā§ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻāĻ¨āĻ¸ā§āĻā§āĻ°āĻžāĻā§āĻāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻŦāĻ¸ā§āĻ¤ā§āĻāĻŋ
āĻāĻāĻžāĻĄāĻŧāĻžāĻ "āĻāĻžāĻ" āĻĢāĻžāĻāĻļāĻ¨ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯āĻž āĻāĻĒāĻ¨āĻŋ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĻ˛ā§ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻšāĻŦā§
CLASSNAME-āĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ "āĻā§" āĻāĻŦāĻ "āĻŽāĻžāĻ¨" āĻāĻ° āĻŽāĻ¤ā§ āĻĢāĻžāĻāĻļāĻ¨āĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻŋāĻļāĻžāĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻŦāĻĄāĻŧ āĻŦāĻ¸ā§āĻ¤ā§, āĻ¯ā§āĻŽāĻ¨ DBM āĻĢāĻžāĻāĻ˛āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻ°āĻ¤ā§ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻĢāĻžāĻāĻļāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻāĻ¨ā§āĻĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻĒāĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖ:
# āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻāĻ āĻāĻ¤āĻŋāĻšāĻžāĻ¸ āĻĢāĻžāĻāĻ˛ āĻ āĻĢāĻ¸ā§āĻ
NDBM_File āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻāĻžāĻ (%HIST, 'NDBM_File', '/usr/lib/news/history', 1, 0);
āĻ¯āĻāĻ¨ (($key,$val) = āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ %HIST) {
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ $key, ' = ', āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ('L',$val), "\n";
}
untie(%HIST);
āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĨāĻžāĻāĻž āĻāĻāĻŋāĻ¤:
TIEHASH āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻ¨āĻžāĻŽ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻāĻ, āĻā§ āĻāĻ¨ā§āĻ¨
āĻāĻ, āĻā§, āĻŽāĻžāĻ¨ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻ¨
āĻāĻāĻŋ āĻŽā§āĻā§āĻ¨, āĻā§
āĻāĻāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻāĻ, āĻā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨
āĻĒā§āĻ°āĻĨāĻŽ āĻāĻ
āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§ āĻāĻ, āĻļā§āĻˇ āĻā§
āĻāĻ āĻ¸ā§āĻāĻ˛āĻžāĻ°
āĻāĻ āĻ§ā§āĻŦāĻāĻ¸
āĻāĻāĻŋ āĻŽā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĨāĻžāĻāĻž āĻāĻāĻŋāĻ¤:
TIEARRAY āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻ¨āĻžāĻŽ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻāĻ, āĻā§ āĻāĻ¨ā§āĻ¨
āĻāĻ, āĻā§, āĻŽāĻžāĻ¨ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻ¨
āĻāĻāĻŋ āĻāĻ¨ā§āĻ¨
āĻāĻāĻŋ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻ¨, āĻāĻŖāĻ¨āĻž āĻāĻ°ā§āĻ¨
āĻāĻāĻŋ āĻĒāĻ°āĻŋāĻˇā§āĻāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻāĻ āĻ§āĻžāĻā§āĻāĻž, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻāĻ POP
āĻāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨
āĻāĻ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻ¨āĻļāĻŋāĻĢāĻ
āĻāĻ, āĻ āĻĢāĻ¸ā§āĻ, āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¸ā§āĻĒā§āĻ˛āĻžāĻāĻ¸ āĻāĻ°ā§āĻ¨
āĻāĻāĻŋ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°ā§āĻ¨, āĻāĻŖāĻ¨āĻž āĻāĻ°ā§āĻ¨
āĻāĻāĻŋ āĻŽā§āĻā§āĻ¨, āĻā§
āĻāĻ, āĻā§ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨
āĻāĻ āĻ§ā§āĻŦāĻāĻ¸
āĻāĻāĻŋ āĻŽā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĨāĻžāĻāĻž āĻāĻāĻŋāĻ¤:
TIEHANDLE āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻ¨āĻžāĻŽ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻāĻāĻŋ āĻĒāĻĄāĻŧā§āĻ¨, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻ āĻĢāĻ¸ā§āĻ
āĻāĻ READLINE
āĻāĻ GETC
āĻāĻāĻŋ āĻ˛āĻŋāĻā§āĻ¨, āĻ¸ā§āĻā§āĻ˛āĻžāĻ°, āĻĻā§āĻ°ā§āĻā§āĻ¯, āĻ āĻĢāĻ¸ā§āĻ
āĻāĻāĻŋ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻāĻ°ā§āĻ¨
āĻāĻāĻŋ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĻ¨, āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
BINMODE āĻāĻ
EOF āĻāĻ
āĻāĻ āĻĢāĻžāĻāĻ˛ā§āĻ¨ā§
āĻāĻ, āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨, āĻā§āĻĨāĻž āĻĨā§āĻā§ āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ°ā§āĻ¨
āĻāĻāĻž āĻŦāĻ˛ā§āĻ¨
āĻāĻāĻŋ āĻā§āĻ˛ā§āĻ¨, āĻŽā§āĻĄ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻāĻāĻŋ āĻŦāĻ¨ā§āĻ§ āĻāĻ°ā§āĻ¨
āĻāĻ āĻ§ā§āĻŦāĻāĻ¸
āĻāĻāĻŋ āĻŽā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĻāĻžāĻ°ā§ āĻāĻāĻāĻŋ āĻļā§āĻ°ā§āĻŖā§āĻ° āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĨāĻžāĻāĻž āĻāĻāĻŋāĻ¤:
TIESCALAR āĻā§āĻ˛āĻžāĻ¸ā§āĻ° āĻ¨āĻžāĻŽ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻāĻāĻŋ āĻāĻ¨ā§āĻ¨,
āĻāĻ, āĻŽāĻžāĻ¨ āĻ¸āĻāĻ°āĻā§āĻˇāĻŖ āĻāĻ°ā§āĻ¨
āĻāĻ āĻ§ā§āĻŦāĻāĻ¸
āĻāĻāĻŋ āĻŽā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨
āĻāĻĒāĻ°ā§ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻŋāĻ¤ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻžāĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻ¨ā§āĻāĨ¤ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻāĻŋ, āĻāĻžāĻ āĻĻā§āĻā§āĻ¨::āĻšā§āĻ¯āĻžāĻļ,
āĻāĻžāĻ::āĻ ā§āĻ¯āĻžāĻ°ā§, āĻāĻžāĻ::āĻ¸ā§āĻā§āĻ¯āĻžāĻ˛āĻžāĻ° āĻāĻŦāĻ āĻāĻžāĻ::āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĨ¤
"dbmopen" āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, "āĻāĻžāĻ" āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻŽāĻĄāĻŋāĻāĻ˛ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻŦāĻž "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨" āĻāĻ°āĻŦā§ āĻ¨āĻž; āĻāĻĒāĻ¨āĻŋ
āĻ¨āĻŋāĻā§āĻā§ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻāĻāĻŋ āĻāĻ°āĻ¤ā§ āĻšāĻŦā§āĨ¤ DB_File āĻŦāĻž āĻĻā§āĻā§āĻ¨ āĻāĻ¨āĻĢāĻŋāĻ āĻāĻāĻ°ā§āĻˇāĻŖā§āĻ¯āĻŧ āĻāĻ¨ā§āĻ¯ āĻŽāĻĄāĻŋāĻāĻ˛
"āĻāĻžāĻ" āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨āĨ¤
āĻāĻ°āĻ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĻā§āĻā§āĻ¨ perltie, "tied variable"āĨ¤
āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻŦāĻžāĻāĻ§āĻž
āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻ¨āĻŋāĻšāĻŋāĻ¤ āĻŦāĻ¸ā§āĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ (āĻāĻāĻ āĻŽāĻžāĻ¨ āĻ¯āĻž āĻāĻŋāĻ˛
āĻŽā§āĻ˛āĻ¤ "āĻāĻžāĻ" āĻāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¯āĻž āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§ āĻāĻŦāĻĻā§āĻ§ āĻāĻ°ā§āĨ¤) āĻĢā§āĻ°āĻ¤ āĻāĻ¸ā§
āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻ¯āĻĻāĻŋ VARIABLE āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻŦāĻĻā§āĻ§ āĻ¨āĻž āĻšāĻ¯āĻŧāĨ¤
āĻ¸āĻŽāĻ¯āĻŧ
āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻ¯ā§ āĻ¸āĻŽāĻ¯āĻŧ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°ā§ āĻ¸ā§āĻ āĻĨā§āĻā§ āĻ¨āĻ¨-āĻ˛āĻŋāĻĒ āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¯ā§āĻ, "gmtime" āĻāĻŦāĻ "āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ" āĻāĻžāĻāĻ¯āĻŧāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻĒāĻ¯ā§āĻā§āĻ¤āĨ¤ āĻ āĻ§āĻŋāĻāĻžāĻāĻļ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§
āĻ¯ā§āĻ āĻšāĻ˛ 00:00:00 UTC, āĻāĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ°ā§ 1, 1970; āĻāĻāĻāĻŋ āĻŦāĻŋāĻļāĻŋāĻˇā§āĻ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻšāĻā§āĻā§ āĻŽā§āĻ¯āĻžāĻ āĻāĻāĻ¸ āĻā§āĻ˛āĻžāĻ¸āĻŋāĻ
āĻ¯āĻž 00:00:00, 1 āĻāĻžāĻ¨ā§āĻ¯āĻŧāĻžāĻ°ā§, 1904 āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻ¸āĻŽāĻ¯āĻŧ āĻ āĻā§āĻāĻ˛ā§ āĻ¤āĻžāĻ° āĻ¯ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻāĻ āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§āĻ° āĻā§āĻ¯āĻŧā§ āĻāĻžāĻ˛ā§ āĻā§āĻ°āĻžāĻ¨ā§āĻ˛āĻžāĻ°āĻŋāĻāĻŋāĻ¤ā§ āĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻ°āĻŋāĻŽāĻžāĻĒā§āĻ° āĻāĻ¨ā§āĻ¯, āĻ¸āĻŽāĻ¯āĻŧ::āĻšāĻžāĻāĻ°ā§āĻ¸ āĻŽāĻĄāĻŋāĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻĒāĻžāĻ°ā§āĻ˛ 5.8 āĻĨā§āĻā§ (āĻŦāĻž āĻ¤āĻžāĻ° āĻāĻā§ CPAN āĻĨā§āĻā§), āĻ āĻĨāĻŦāĻž, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻĨāĻžāĻā§ āĻĻāĻŋāĻ¨ āĻĒā§āĻ¤ā§ āĻ¸āĻŽāĻ¯āĻŧ(2), āĻāĻĒāĻ¨āĻŋ
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° "syscall" āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻ¤ā§ āĻ¸āĻā§āĻˇāĻŽ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlfaq8 āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¤āĻžāĻ°āĻŋāĻ āĻāĻŦāĻ āĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ CPAN-āĻ āĻ āĻ¨ā§āĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻŽāĻĄāĻŋāĻāĻ˛ āĻĻā§āĻā§āĻ¨āĨ¤ āĻāĻāĻāĻŋ āĻāĻ¨ā§āĻ¯
āĻŦā§āĻ¯āĻžāĻĒāĻ āĻ¤āĻžāĻ°āĻŋāĻ āĻāĻŦāĻ āĻ¸āĻŽāĻ¯āĻŧā§āĻ° āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻ¨āĻž āĻ¤āĻžāĻ°āĻŋāĻā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŽāĻĄāĻŋāĻāĻ˛ā§ āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦāĻžāĻ°
āĻāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻ¸ā§āĻā§āĻ¨ā§āĻĄā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§ āĻāĻŦāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ āĻāĻāĻāĻŋ āĻāĻžāĻ°-āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻŦāĻ āĻāĻ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻ¯ā§āĻā§āĻ¨ āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻļāĻŋāĻļā§āĨ¤
($user,$system,$cuser,$csystem) = āĻŦāĻžāĻ°;
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§, "times" $user āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻļāĻŋāĻļā§āĻĻā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻ¸āĻŽāĻžāĻĒā§āĻ¤ āĻļāĻŋāĻļā§āĻĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ.
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ¸āĻŽāĻ¯āĻŧ"āĨ¤
tr///
āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻ°ā§āĻŖā§āĻāĻ°āĻŖ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĨ¤ "y///" āĻāĻ° āĻŽāĻ¤ā§āĻāĨ¤ perlop āĻ "āĻā§āĻ-āĻ˛āĻžāĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°" āĻĻā§āĻā§āĻ¨āĨ¤
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛, āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻā§āĻāĻā§ āĻĻāĻŋāĻ¨
EXPR, āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻāĻžāĻāĻž
FILEHANDLE-āĻ āĻā§āĻ˛āĻž āĻĢāĻžāĻāĻ˛āĻāĻŋāĻā§, āĻŦāĻž EXPR āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻžāĻŽāĻāĻ°āĻŖ āĻāĻ°āĻž, āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĻā§āĻ°ā§āĻā§āĻ¯ā§ āĻā§āĻ āĻāĻ°ā§ā§ˇ
āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻā§āĻāĻā§ āĻĢā§āĻ˛āĻž āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻ¨āĻž āĻšāĻ˛ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ āĻ¸āĻ¤ā§āĻ¯ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ¸āĻĢāĻ˛, āĻ¤ā§āĻ°ā§āĻāĻŋāĻ° āĻāĻĒāĻ° "undef"āĨ¤
LENGTH āĻĢāĻžāĻāĻ˛ā§āĻ° āĻĻā§āĻ°ā§āĻā§āĻ¯ā§āĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋ āĻšāĻ˛ā§ āĻāĻāĻ°āĻŖāĻāĻŋ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤āĨ¤
FILEHANDLE āĻāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻ°āĻžāĻāĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻ āĻ¨ā§āĻ¸āĻ¨ā§āĻ§āĻžāĻ¨ āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻāĻžāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻĢāĻžāĻāĻ˛ā§ āĻ˛ā§āĻāĻžāĻ° āĻāĻā§āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻā§āĻ°āĻžāĻā§āĻā§āĻ"āĨ¤
uc EXPR
uc EXPR āĻāĻ° āĻāĻāĻāĻŋ āĻŦāĻĄāĻŧ āĻšāĻžāĻ¤ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĢāĻžāĻāĻļāĻ¨ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻ¨
āĻĄāĻŦāĻ˛-āĻāĻĻā§āĻ§ā§āĻ¤ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻ¤ā§ "\U" āĻāĻ¸ā§āĻā§āĻĒāĨ¤ āĻāĻāĻŋ āĻāĻžāĻāĻā§āĻ˛āĻā§āĻ¸ āĻŽā§āĻ¯āĻžāĻĒāĻŋāĻ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§ āĻ¨āĻž
āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻ āĻā§āĻˇāĻ°āĨ¤ āĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ "ucfirst" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ°ā§āĻ¯āĻžāĻāĻŽāĻžāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻāĻāĻāĻžāĻŦā§ āĻāĻāĻ°āĻŖ āĻāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ˛ā§āĻā§āĻ˛ā§, āĻ¯ā§āĻŽāĻ¨ "lc"
āĻāĻā§āĨ¤
ucfirst EXPR
ucfirst
āĻŦāĻĄāĻŧ āĻšāĻžāĻ¤ā§āĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻ āĻā§āĻˇāĻ° āĻ¸āĻš EXPR-āĻāĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ (āĻāĻžāĻāĻā§āĻ˛āĻā§āĻ¸-āĻ
āĻāĻāĻ¨āĻŋāĻā§āĻĄ)āĨ¤ āĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĢāĻžāĻāĻļāĻ¨ āĻ¯āĻž "\u" āĻāĻ¸ā§āĻā§āĻĒāĻā§ āĻĄāĻŦāĻ˛-āĻāĻĻā§āĻ§ā§āĻ¤āĻŋāĻ¤ā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°ā§
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĨ¤
āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨āĻāĻŋ āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻĒā§āĻ°ā§āĻ¯āĻžāĻāĻŽāĻžāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻāĻāĻāĻžāĻŦā§ āĻāĻāĻ°āĻŖ āĻāĻ°ā§, āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ˛ā§āĻā§āĻ˛ā§, āĻ¯ā§āĻŽāĻ¨ "lc"
āĻāĻā§āĨ¤
umask EXPR
āĻāĻŽāĻ¸ā§āĻ
āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻŽāĻžāĻ¸ā§āĻāĻā§ EXPR āĻ¤ā§ āĻ¸ā§āĻ āĻāĻ°ā§ āĻāĻŦāĻ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ EXPR āĻšāĻ¯āĻŧ
āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧā§āĻā§, āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻāĻŽāĻžāĻ¸ā§āĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ "rwxr-x---" āĻ¤āĻŋāĻ¨āĻāĻŋ āĻŦāĻŋāĻā§āĻ° āĻ¤āĻŋāĻ¨āĻāĻŋ āĻ¸ā§āĻ āĻŦāĻž āĻ¤āĻŋāĻ¨āĻāĻŋ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻĒāĻ¸ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻšāĻ¯āĻŧ
āĻ āĻā§āĻāĻžāĻ˛ āĻ¸āĻāĻā§āĻ¯āĻž: 0750 (āĻĒā§āĻ°āĻ§āĻžāĻ¨ 0 āĻ āĻā§āĻāĻžāĻ˛ āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¨āĻ¯āĻŧ)āĨ¤ āĻĻā§āĻ¯
"umask" āĻŽāĻžāĻ¨ āĻšāĻ˛ āĻāĻŽāĻ¨ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻ¯āĻž āĻ āĻā§āĻˇāĻŽ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻŦāĻŋāĻā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻāĻ°ā§āĨ¤ āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ
(āĻŦāĻž "āĻŽā§āĻĄ") āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻāĻĒāĻ¨āĻŋ āĻĒāĻžāĻ¸ āĻāĻ°ā§āĻ¨ "mkdir" āĻŦāĻž "sysopen" āĻāĻĒāĻ¨āĻžāĻ° āĻāĻŽāĻžāĻ¸ā§āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻ āĻāĻŽāĻ¨āĻāĻŋ
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ 0777 āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻ¸āĻš āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ "sysopen" āĻā§ āĻŦāĻ˛ā§āĻ¨, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻŽāĻžāĻ¸ā§āĻ 0022 āĻšāĻ¯āĻŧ,
āĻ¤āĻžāĻšāĻ˛ā§ āĻĢāĻžāĻāĻ˛āĻāĻŋ āĻāĻ¸āĻ˛ā§ 0755 āĻĒāĻžāĻ°āĻŽāĻŋāĻļāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° "āĻāĻŽāĻžāĻ¸ā§āĻ" āĻšāĻ¤ā§
0027 (āĻā§āĻ°ā§āĻĒ āĻ˛āĻŋāĻāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž; āĻ āĻ¨ā§āĻ¯āĻ°āĻž āĻĒāĻĄāĻŧāĻ¤ā§, āĻ˛āĻŋāĻāĻ¤ā§ āĻŦāĻž āĻāĻžāĻ˛āĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¨āĻž), āĻ¤āĻžāĻ°āĻĒāĻ° "āĻ¸āĻŋāĻ¸ā§āĻĒā§āĻ¨" āĻĒāĻžāĻ¸ āĻāĻ°āĻž
0666 āĻŽā§āĻĄ 0640 āĻ¸āĻš āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§ (āĻāĻžāĻ°āĻŖ "0666 &~ 027" āĻšāĻ˛ 0640)āĨ¤
āĻāĻāĻžāĻ¨ā§ āĻāĻŋāĻā§ āĻĒāĻ°āĻžāĻŽāĻ°ā§āĻļ āĻ°āĻ¯āĻŧā§āĻā§: āĻ¨āĻŋāĻ¯āĻŧāĻŽāĻŋāĻ¤ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻ¨ā§āĻ¯ 0666 āĻāĻ° āĻāĻāĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻŽā§āĻĄ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°ā§āĻ¨ ("sysopen" āĻ)
āĻāĻŦāĻ 0777 āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋāĻ° āĻāĻ¨ā§āĻ¯ ("mkdir"-āĻ) āĻāĻŦāĻ āĻāĻā§āĻ¸āĻŋāĻāĻŋāĻāĻā§āĻŦāĻ˛ āĻĢāĻžāĻāĻ˛āĨ¤ āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻĻā§āĻ¯āĻŧ
āĻĒāĻāĻ¨ā§āĻĻā§āĻ° āĻ¸ā§āĻŦāĻžāĻ§ā§āĻ¨āĻ¤āĻž: āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ°āĻž āĻ¸ā§āĻ°āĻā§āĻˇāĻŋāĻ¤ āĻĢāĻžāĻāĻ˛ āĻāĻžāĻ¯āĻŧ, āĻ¤āĻžāĻ°āĻž āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻŽāĻžāĻ¸ā§āĻ āĻŦā§āĻā§ āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§
022, 027, āĻāĻŽāĻ¨āĻāĻŋ 077 āĻāĻ° āĻŦāĻŋāĻļā§āĻˇāĻāĻžāĻŦā§ āĻ āĻ¸āĻžāĻŽāĻžāĻāĻŋāĻ āĻŽā§āĻā§āĻļāĨ¤ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽāĻā§āĻ˛āĻŋ āĻā§āĻŦ āĻāĻŽāĻ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤
āĻ¯āĻĻāĻŋ āĻāĻāĻ¨āĻ āĻ¨ā§āĻ¤āĻŋāĻāĻ¤ āĻ¸āĻŋāĻĻā§āĻ§āĻžāĻ¨ā§āĻ¤ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ āĻ¤āĻŦā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻāĻĒāĻ° āĻā§āĻĄāĻŧā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻžāĻ˛āĨ¤ āĻāĻ° āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻšāĻ˛ āĻ¯āĻāĻ¨
āĻ˛ā§āĻāĻž āĻĢāĻžāĻāĻ˛ āĻ¯āĻž āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻāĻ¤ āĻ°āĻžāĻāĻž āĻāĻāĻŋāĻ¤: āĻŽā§āĻāĻ˛ ââāĻĢāĻžāĻāĻ˛, āĻāĻ¯āĻŧā§āĻŦ āĻŦā§āĻ°āĻžāĻāĻāĻžāĻ° āĻā§āĻāĻŋāĻ, .rhosts
āĻĢāĻžāĻāĻ˛, āĻāĻŦāĻ āĻ¤āĻžāĻāĨ¤
If āĻāĻŽāĻ¸ā§āĻ(2) āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž āĻāĻŦāĻ āĻāĻĒāĻ¨āĻŋ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻā§āĻ¨
āĻāĻ¨ā§āĻ¨āĻ¤ āĻ¨āĻŋāĻā§āĻā§ (āĻ¯ā§āĻŽāĻ¨, "(EXPR & 0700) > 0"), āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻŽāĻ¸ā§āĻ(2) āĻ¨āĻ¯āĻŧ
āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŦāĻ āĻāĻĒāĻ¨āĻŋ āĻ¨āĻŋāĻā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻ¸ā§āĻŽāĻžāĻŦāĻĻā§āĻ§ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻā§āĻ¨ āĻ¨āĻž, "undef" āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻāĻŽāĻžāĻ¸ā§āĻ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž, āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻ āĻā§āĻāĻžāĻ˛ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ; āĻāĻāĻāĻž āĻ¨āĻž āĻ āĻā§āĻāĻžāĻ˛ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ
āĻ āĻā§āĻ āĻāĻāĻžāĻĄāĻŧāĻžāĻ "oct" āĻĻā§āĻā§āĻ¨, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĨāĻžāĻā§āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻāĻŽāĻžāĻ¸ā§āĻ"āĨ¤
undef EXPR
undef
EXPR āĻāĻ° āĻŽāĻžāĻ¨āĻā§ āĻ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°ā§, āĻ¯āĻž āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻāĻŋ lvalue āĻšāĻ¤ā§ āĻšāĻŦā§āĨ¤ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻāĻāĻāĻŋ
āĻ ā§āĻ¯āĻžāĻ°ā§ ("@" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§), āĻāĻāĻāĻŋ āĻšā§āĻ¯āĻžāĻļ ("%" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§), āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ ("&" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§), āĻŦāĻž āĻāĻāĻāĻŋ āĻāĻžāĻāĻĒāĻā§āĻ˛ā§āĻŦ (āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§)
"*")āĨ¤ "undef $hash{$key}" āĻŦāĻ˛āĻž āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻāĻĒāĻ¨āĻŋ āĻ¯āĻž āĻāĻļāĻž āĻāĻ°ā§āĻ¨ āĻ¤āĻž āĻāĻ°āĻŦā§ āĻ¨āĻž
āĻĒā§āĻ°ā§āĻŦāĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ āĻŦāĻž DBM āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻŽāĻžāĻ¨, āĻ¤āĻžāĻ āĻāĻāĻŋ āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž; "āĻŽā§āĻā§āĻ¨" āĻĻā§āĻā§āĻ¨āĨ¤ āĻ¸āĻ°ā§āĻŦāĻĻāĻž
āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻĒāĻ¨āĻŋ EXPR āĻŦāĻžāĻĻ āĻĻāĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨, āĻāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻāĻŋāĻā§āĻ āĻ¨ā§āĻ
undefined, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻ¨āĻ āĻāĻāĻāĻŋ āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻĒāĻžāĻŦā§āĻ¨ āĻ¯āĻž āĻāĻĒāĻ¨āĻŋ, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻĨā§āĻā§, āĻāĻāĻāĻŋ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛āĻā§ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§āĻ¨, āĻŦāĻž āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻ°āĻžāĻŽāĻŋāĻāĻžāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻžāĻ¸ āĻāĻ°ā§āĻ¨āĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
undef $foo;
undef $bar{'blurfl'}; # āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°ā§āĻ¨: $bar{'blurfl'} āĻŽā§āĻā§āĻ¨;
undef @ary;
undef % āĻšā§āĻ¯āĻžāĻļ;
undef &mysub;
undef *xyz; # $xyz, @xyz, %xyz, &xyz, āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻ§ā§āĻŦāĻāĻ¸ āĻāĻ°ā§āĨ¤
āĻĢāĻŋāĻ°ā§āĻ¨ (wantarray? (undef, $errmsg): undef) āĻ¯āĻĻāĻŋ $they_blew_it;
undef, undef, undef, 0.25 āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨ āĻāĻ°ā§āĻ¨;
($a, $b, undef, $c) = &foo; # āĻĢāĻŋāĻ°ā§ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¤ā§āĻ¤ā§āĻ¯āĻŧ āĻŽāĻžāĻ¨ āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨
āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻāĻāĻ¨āĻžāĻ°āĻŋ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°, āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻ¨āĻ¯āĻŧāĨ¤
LIST āĻāĻ¨āĻ˛āĻŋāĻā§āĻ āĻāĻ°ā§āĻ¨
āĻ˛āĻŋāĻā§āĻāĻŽā§āĻā§āĻ¤
āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽā§āĻā§ āĻĻā§āĻ¯āĻŧāĨ¤ āĻ¸āĻĢāĻ˛ āĻšāĻ˛ā§, āĻāĻāĻŋ āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻŦā§āĻ¯āĻ°ā§āĻĨ āĻšāĻ˛ā§, āĻāĻāĻŋ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ āĻāĻŦāĻ $ āĻ¸ā§āĻ āĻāĻ°ā§! (āĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋ):
my $unlinked = unlink 'a', 'b', 'c';
@goners āĻ˛āĻŋāĻā§āĻāĻŽā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨;
āĻāĻ¨āĻ˛āĻŋāĻā§āĻ āĻā§āĻ˛ā§āĻŦ "*.bak";
āĻ¤ā§āĻ°ā§āĻāĻŋāĻ¤ā§, "āĻāĻ¨āĻ˛āĻŋāĻā§āĻ" āĻāĻĒāĻ¨āĻžāĻā§ āĻŦāĻ˛āĻŦā§ āĻ¨āĻž āĻā§āĻ¨ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻāĻāĻŋ āĻ¸āĻ°āĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĻŋā§ˇ āĻ¯āĻĻāĻŋ āĻ¤ā§āĻŽāĻŋ āĻāĻžāĻ
āĻāĻĒāĻ¨āĻŋ āĻā§āĻ¨ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋ āĻ¸āĻ°āĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĻ¨āĻŋ āĻ¤āĻž āĻāĻžāĻ¨ā§āĻ¨, āĻāĻāĻŦāĻžāĻ°ā§ āĻ¤āĻžāĻĻā§āĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°ā§āĻ¨:
āĻāĻŽāĻžāĻ° $āĻĢāĻžāĻāĻ˛ ( @goners ) {
$file āĻ˛āĻŋāĻā§āĻāĻŽā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨ āĻŦāĻž āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ "$file āĻāĻ¨āĻ˛āĻŋāĻā§āĻ āĻāĻ°āĻž āĻ¯āĻžāĻ¯āĻŧāĻ¨āĻŋ: $!";
}
āĻĻā§āĻ°āĻˇā§āĻāĻŦā§āĻ¯: "āĻāĻ¨āĻ˛āĻŋāĻā§āĻ" āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŦā§ āĻ¨āĻž āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻāĻĒāĻ¨āĻŋ āĻ¸ā§āĻĒāĻžāĻ° āĻāĻāĻāĻžāĻ° āĻāĻŦāĻ
-U āĻĒāĻ¤āĻžāĻāĻž āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°āĻž āĻšāĻ¯āĻŧ. āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻāĻ āĻļāĻ°ā§āĻ¤ āĻĒā§āĻ°āĻŖ āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°āĻž āĻ¯ā§
āĻāĻāĻāĻŋ āĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻāĻ¨āĻ˛āĻŋāĻā§āĻ āĻāĻ°āĻž āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§āĻ° āĻā§āĻˇāĻ¤āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ āĻŦāĻļā§āĻˇā§, "āĻāĻ¨āĻ˛āĻŋāĻā§āĻ" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻ āĻ¨ ââāĻĄāĻŋāĻ°ā§āĻā§āĻāĻ°āĻŋ āĻ āĻ¨ā§āĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻŋāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻ¸āĻŽāĻ°ā§āĻĨāĻŋāĻ¤ āĻ¨āĻ¯āĻŧāĨ¤ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "rmdir" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, "āĻāĻ¨āĻ˛āĻŋāĻā§āĻ" $_ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ, EXPR āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§āĻ¨
āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§āĻ¨
"āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ" "āĻĒā§āĻ¯āĻžāĻ" āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻāĻ°ā§: āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¨ā§āĻ¯āĻŧ āĻāĻŦāĻ āĻāĻāĻŋāĻā§ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°ā§
āĻŽā§āĻ˛ā§āĻ¯āĻŦā§āĻ§ā§āĻ° (āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻā§, āĻāĻāĻŋ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ¤ā§āĻĒāĻžāĻĻāĻŋāĻ¤ āĻĒā§āĻ°āĻĨāĻŽ āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤)
āĻ¯āĻĻāĻŋ EXPR āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ, $_ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ āĻāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻā§āĻŽāĻŋāĻāĻž āĻāĻ¨ā§āĻ¯ perlpacktut āĻĻā§āĻā§āĻ¨
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨
āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻ āĻāĻļā§ āĻŦāĻŋāĻāĻā§āĻ¤āĨ¤ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻŖā§āĻĄ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ
āĻāĻ˛āĻžāĻĻāĻžāĻāĻžāĻŦā§ āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨āĨ¤ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤, āĻšāĻ¯āĻŧ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ "āĻĒā§āĻ¯āĻžāĻ" āĻāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛, āĻ āĻĨāĻŦāĻž
āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻ āĻā§āĻˇāĻ° āĻā§āĻ¨ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻāĻāĻŋ C āĻāĻ āĻ¨ āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ§āĻŋāĻ¤ā§āĻŦ āĻāĻ°ā§āĨ¤
āĻā§āĻŽāĻĒā§āĻ˛ā§āĻā§āĻ° "āĻĒā§āĻ¯āĻžāĻ" āĻĢāĻžāĻāĻļāĻ¨ā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ°āĻ¯āĻŧā§āĻā§ā§ˇ āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻ¯ā§
āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ°ā§:
āĻ¸āĻžāĻŦ āĻ¸āĻžāĻŦāĻ¸ā§āĻā§āĻ° {
āĻāĻŽāĻžāĻ°($āĻāĻŋ,$āĻā§āĻĨāĻžāĻ¯āĻŧ,$āĻāĻ¤) = @_;
āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ ("x$ āĻā§āĻĨāĻžāĻ¯āĻŧ a$ āĻāĻ¤", $ āĻāĻŋ);
}
āĻāĻŦāĻ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻā§
āĻ¸āĻžāĻŦ āĻ āĻ°ā§āĻĄāĻŋāĻ¨āĻžāĻ˛ { āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("W",$__[0]); } # āĻāĻĻā§āĻļ () āĻāĻ° āĻŽāĻ¤ā§
āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻāĻ¯āĻŧāĻž āĻā§āĻˇā§āĻ¤ā§āĻ° āĻāĻžāĻĄāĻŧāĻžāĻ āĻĒā§āĻ¯āĻžāĻ(), āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ % āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻāĻĒāĻ¸āĻ°ā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨ āĻĒā§āĻ°āĻ¤āĻŋ
āĻāĻā§āĻāĻŋāĻ¤ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻāĻžāĻ¨ - āĻāĻāĻā§āĻŽā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻāĻāĻā§āĻŽāĻā§āĻ˛āĻŋāĻ° āĻŦāĻŋāĻ āĻā§āĻāĻ¸āĻžāĻŽ
āĻ¨āĻŋāĻā§āĻĻā§āĻ°. āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻāĻāĻāĻŋ 16-āĻŦāĻŋāĻ āĻā§āĻāĻ¸āĻžāĻŽāĨ¤ āĻ¸āĻžāĻāĻā§āĻ¯āĻŋāĻ āĻ¯ā§āĻāĻĢāĻ˛ āĻĻā§āĻŦāĻžāĻ°āĻž āĻā§āĻāĻ¸āĻžāĻŽ āĻāĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻŽāĻžāĻ¨ (āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§āĻ° āĻāĻ¨ā§āĻ¯ "ord($char)" āĻāĻ° āĻ¯ā§āĻāĻĢāĻ˛ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ; āĻŦāĻŋāĻā§āĻ° āĻāĻ¨ā§āĻ¯
āĻļā§āĻ¨ā§āĻ¯ āĻāĻŦāĻ āĻāĻā§āĻ° āĻ¯ā§āĻāĻĢāĻ˛ āĻā§āĻˇā§āĻ¤ā§āĻ°)āĨ¤
āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤āĻā§āĻ˛āĻŋ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻŋ āĻ¯ā§āĻ āĻĒā§āĻ°ā§āĻā§āĻ°āĻžāĻŽā§āĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻŖāĻ¨āĻž āĻāĻ°ā§:
$āĻā§āĻāĻ¸āĻžāĻŽ = āĻāĻ° {
āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ $/; # āĻ¸ā§āĻ˛āĻžāĻ°ā§āĻĒ!
āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ ("%32W*",<>) % 65535;
};
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤āĻāĻŋ āĻĻāĻā§āĻˇāĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻŦāĻŋāĻ āĻā§āĻā§āĻāĻ°ā§ āĻ¸ā§āĻ āĻŦāĻŋāĻā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻŖāĻ¨āĻž āĻāĻ°ā§:
$setbits = āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("%32b*", $selectmask);
"p" āĻāĻŦāĻ "P" āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻ¯āĻ¤ā§āĻ¨ āĻ¸āĻšāĻāĻžāĻ°ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤ āĻ¯ā§āĻšā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻā§āĻ āĻāĻ°āĻžāĻ° āĻā§āĻ¨ āĻāĻĒāĻžāĻ¯āĻŧ āĻ¨ā§āĻ
"unpack()"-āĻ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻŽāĻžāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻŦā§āĻ§ āĻŽā§āĻŽāĻ°āĻŋ āĻ āĻŦāĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯āĻĒā§āĻ°ā§āĻŖ āĻāĻŋāĻ¨āĻž, āĻĒāĻžāĻ¸āĻŋāĻ
āĻāĻāĻāĻŋ āĻĒāĻ¯āĻŧā§āĻ¨ā§āĻāĻžāĻ° āĻŽāĻžāĻ¨ āĻ¯āĻž āĻŦā§āĻ§ āĻŦāĻ˛ā§ āĻĒāĻ°āĻŋāĻāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ āĻ¤āĻžāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¯āĻ¯āĻŧ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻ°āĻŋāĻŖāĻ¤āĻŋāĨ¤
āĻ¯āĻĻāĻŋ āĻāĻ°āĻ āĻĒā§āĻ¯āĻžāĻ āĻā§āĻĄ āĻĨāĻžāĻā§ āĻŦāĻž āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻā§āĻˇā§āĻ¤ā§āĻ° āĻŦāĻž āĻāĻāĻāĻŋ āĻā§āĻ°ā§āĻĒā§āĻ° āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻŦāĻĄāĻŧ āĻšāĻ¯āĻŧ
āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻ āĻŦāĻļāĻŋāĻˇā§āĻāĻžāĻāĻļ āĻ¯āĻž āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻĻā§āĻ¯āĻŧ āĻ¤āĻžāĻ° āĻā§āĻ¯āĻŧā§, āĻĢāĻ˛āĻžāĻĢāĻ˛āĻāĻŋ āĻāĻžāĻ˛āĻāĻžāĻŦā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻ¨āĻ¯āĻŧ:
āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋ āĻāĻŖāĻ¨āĻž āĻšā§āĻ°āĻžāĻ¸ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ āĻĨāĻŦāĻž "āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ()" āĻāĻžāĻ˛āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŦāĻž āĻļā§āĻ¨ā§āĻ¯ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§,
āĻ āĻĨāĻŦāĻž āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻŦāĻžāĻĄāĻŧāĻžāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻāĻ°āĻž āĻāĻā§āĻ° āĻā§āĻ¯āĻŧā§ āĻĻā§āĻ°ā§āĻ āĻšāĻ¯āĻŧ
āĻā§āĻŽāĻĒā§āĻ˛ā§āĻ, āĻ¸ā§āĻ āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻ āĻŦāĻļāĻŋāĻˇā§āĻāĻžāĻāĻļ āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻāĻ°āĻ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻāĻŦāĻ āĻ¨ā§āĻā§āĻ° āĻāĻ¨ā§āĻ¯ "āĻĒā§āĻ¯āĻžāĻ" āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻ¨āĻļāĻŋāĻĢā§āĻ āĻ ā§āĻ¯āĻžāĻ°ā§, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻāĻ¨āĻļāĻŋāĻĢā§āĻ āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ°, āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻāĻāĻāĻŋ "āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨" āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻāĻ°ā§āĨ¤ āĻ āĻĨāĻŦāĻž āĻāĻāĻāĻŋ "āĻ§āĻžāĻā§āĻāĻž" āĻŦāĻŋāĻĒāĻ°ā§āĻ¤, āĻāĻĒāĻ¨āĻŋ āĻāĻŋāĻāĻžāĻŦā§ āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°ā§
āĻāĻāĻžāĻ° āĻĻāĻŋāĻā§ āĻĻā§āĻ. āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻ¸āĻžāĻŽāĻ¨ā§ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻŋāĻĒā§āĻ¨ā§āĻĄ āĻāĻ°ā§ āĻāĻŦāĻ āĻāĻ° āĻ¨āĻ¤ā§āĻ¨ āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§
āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨āĨ¤
unshift(@ARGV, '-e') āĻ¯āĻĻāĻŋ āĻ¨āĻž $ARGV[0] =~ /^-/;
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖ āĻĒā§āĻ°ā§āĻŦā§ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻāĻāĻāĻŋ āĻ¸āĻŽāĻ¯āĻŧā§ āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ¨āĻ¯āĻŧ, āĻ¤āĻžāĻ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻā§āĻ˛āĻŋ
āĻāĻāĻ āĻā§āĻ°āĻŽā§ āĻĨāĻžāĻā§āĻ¨āĨ¤ āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ āĻāĻ°āĻ¤ā§ "āĻŦāĻŋāĻĒāĻ°ā§āĻ¤" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, "āĻāĻ¨āĻļāĻŋāĻĢā§āĻ" āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻāĻā§āĻ¸āĻĒāĻŋāĻāĻ° āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻ āĻā§āĻ¤āĻā§āĻ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻāĻžāĻā§āĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ dereferenced āĻāĻ°āĻž āĻšāĻŦā§. āĻāĻ āĻĻāĻŋāĻ
"āĻāĻ¨āĻļāĻŋāĻĢā§āĻ" āĻā§ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻŦāĻ˛ā§ āĻŽāĻ¨ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻ āĻŋāĻ āĻāĻāĻ°āĻŖ a āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĨ¤
āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ¯āĻžāĻ°āĻž āĻāĻ° āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻžāĻā§āĻā§
āĻ°āĻšāĻ¸ā§āĻ¯āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻš āĻĒāĻžāĻ°ā§āĻ˛, āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ°āĻžāĻā§āĻ¨
āĻ¸āĻāĻā§āĻ¤ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻā§āĻŦāĻ˛ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻāĻŋāĻ¨ā§āĻā§āĻā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻ¸-āĻ:
5.014 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻ¸ā§āĻā§āĻ¯āĻžāĻ˛āĻžāĻ°ā§ āĻĒā§āĻļ/āĻĒāĻĒ/āĻāĻ¤ā§āĻ¯āĻžāĻĻāĻŋ āĻāĻžāĻ āĻāĻ°ā§ (āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ)
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻŽā§āĻā§āĻ¤ āĻāĻ°ā§āĻ¨
āĻāĻāĻāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻŦāĻžāĻāĻ§āĻžāĻ āĻā§āĻā§ āĻĻā§āĻ¯āĻŧāĨ¤ (āĻāĻžāĻ āĻĻā§āĻā§āĻ¨āĨ¤) āĻā§āĻ¨ āĻĒā§āĻ°āĻāĻžāĻŦ āĻāĻā§ āĻ¯āĻĻāĻŋ
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻŦāĻžāĻāĻ§āĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤
āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻŽāĻĄāĻŋāĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻ¨āĻžāĻŽāĻ¯ā§āĻā§āĻ¤ āĻŽāĻĄāĻŋāĻāĻ˛ āĻĨā§āĻā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻāĻŋāĻā§ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°ā§, āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĻā§āĻŦāĻžāĻ°āĻž
āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ¯āĻžāĻā§āĻā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻŦāĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ āĻ¨āĻžāĻŽāĻā§āĻ˛āĻŋ āĻāĻĒāĻ¨āĻžāĻŽ āĻāĻ°āĻžāĨ¤ āĻāĻāĻž āĻ āĻŋāĻ
āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯
āĻļā§āĻ°ā§ { āĻŽāĻĄāĻŋāĻāĻ˛ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨; āĻŽāĻĄāĻŋāĻāĻ˛->āĻāĻŽāĻĻāĻžāĻ¨āĻŋ (āĻ˛āĻŋāĻ¸ā§āĻ); }
āĻ¯ā§ āĻŽāĻĄāĻŋāĻāĻ˛ āĻāĻžāĻĄāĻŧāĻž āĻ āĻŦāĻļā§āĻ¯āĻ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻšāĻ¤ā§ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻļāĻ°ā§āĻ¤āĻžāĻ§ā§āĻ¨ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
if āĻŽāĻĄāĻŋāĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĨ¤
āĻ āĻĻā§āĻā§āĻ¤ "VERSION āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻĢāĻ°ā§āĻŽā§, VERSION āĻšāĻ¯āĻŧ āĻāĻāĻāĻŋ āĻ§āĻ¨āĻžāĻ¤ā§āĻŽāĻ āĻĻāĻļāĻŽāĻŋāĻ āĻāĻā§āĻ¨āĻžāĻāĻļ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¯ā§āĻŽāĻ¨ 5.006, āĻ¯āĻž $] āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻšāĻŦā§, āĻ āĻĨāĻŦāĻž v5.6.1 āĻĢāĻ°ā§āĻŽā§āĻ° āĻāĻāĻāĻŋ v-āĻ¸ā§āĻā§āĻ°āĻŋāĻ, āĻ¯āĻž
$^V (āĻāĻ°āĻĢā§ $PERL_VERSION) āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻšāĻŦā§āĨ¤ VERSION āĻšāĻ˛ā§ āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻŋāĻ¤ āĻšāĻ¯āĻŧā§ˇ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒāĻžāĻ°ā§āĻ˛ āĻĻā§āĻāĻžāĻˇā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻā§āĻ¯āĻŧā§ āĻŦāĻĄāĻŧ; āĻĒāĻžāĻ°ā§āĻ˛ āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŦā§ āĻ¨āĻž
āĻŦāĻžāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°ā§āĻ¨āĨ¤ "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨" āĻāĻ° āĻ¸āĻžāĻĨā§ āĻ¤ā§āĻ˛āĻ¨āĻž āĻāĻ°ā§āĻ¨, āĻ¯āĻž āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ°āĻžāĻ¨ āĻ¸āĻŽāĻ¯āĻŧ āĻĒā§āĻ°āĻ¤āĻŋāĻ¸āĻŽāĻāĻžāĻŦā§, "āĻā§āĻ¨ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ" āĻāĻĒāĻ¨āĻžāĻā§ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻ¤ā§ āĻĻā§āĻ¯āĻŧ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻāĻāĻŋ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻāĻžāĻ¨ā§ˇ
āĻāĻ˛ā§āĻ˛āĻŋāĻāĻŋāĻ¤ āĻāĻā§āĻ° āĻā§āĻ¯āĻŧā§ āĻĒā§āĻ°āĻžāĻ¨ā§ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ°āĨ¤
āĻĢāĻ°ā§āĻŽ v5.6.1 āĻāĻ° āĻāĻā§āĻˇāĻ°āĻŋāĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ VERSION āĻāĻ˛ā§āĻ˛ā§āĻ āĻāĻ°āĻž āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻĄāĻŧāĻžāĻ¨ā§ āĻāĻāĻŋāĻ¤,
āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻ āĻ§ā§āĻ¨ā§ āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻ¤ā§āĻ°ā§āĻāĻŋ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻ° āĻĻāĻŋāĻā§ āĻ¨āĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ (āĻ āĻ°ā§āĻĨāĻžā§,
5.6.0 āĻāĻ° āĻāĻā§) āĻ¯āĻž āĻāĻ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¨āĻžāĨ¤ āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯ āĻ¸āĻāĻā§āĻ¯āĻžāĻ¸ā§āĻāĻ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ
āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻāĻāĻŋāĻ¤āĨ¤
v5.6.1 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻ¸āĻŽāĻ¯āĻŧ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻā§āĻ
5.6.1 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻāĻāĻāĻāĻžāĻŦā§
5.006_001 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻāĻāĻāĻāĻžāĻŦā§; āĻĒāĻŋāĻāĻ¨ā§āĻ° āĻ¸āĻžāĻŽāĻā§āĻāĻ¸ā§āĻ¯ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻĒāĻāĻ¨ā§āĻĻ
āĻāĻāĻŋ āĻĒā§āĻ°āĻžāĻ¯āĻŧāĻ āĻĻāĻ°āĻāĻžāĻ°ā§ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻāĻ°āĻžāĻ° āĻāĻā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻāĻŋ āĻĒāĻ°ā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻāĻžāĻ¨
āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¯āĻž āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻĒā§āĻ°āĻžāĻ¨ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻ¨āĻžāĨ¤ (āĻāĻŽāĻ°āĻž āĻāĻāĻŋ āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻŋ
āĻāĻŽāĻžāĻĻā§āĻ° āĻ¯āĻž āĻāĻā§ āĻ¤āĻžāĻ° āĻā§āĻ¯āĻŧā§ āĻŦā§āĻļāĻŋāĨ¤)
"āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻ āĻ¨ā§āĻ°ā§āĻ§āĻā§āĻ¤ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯āĻā§āĻ˛āĻŋāĻā§ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻāĻāĻžāĻŦā§ āĻ¸āĻā§āĻˇāĻŽ āĻāĻ°ā§ā§ˇ
"āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯" āĻĒā§āĻ°ā§āĻ¯āĻžāĻāĻŽāĻž āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤, āĻ āĻ¨ā§āĻ°ā§āĻ§ā§ āĻ¨ā§āĻ āĻāĻŽāĻ¨ āĻā§āĻ¨ā§ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻ¨āĻŋāĻˇā§āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž
āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻŦāĻžāĻ¨ā§āĻĄāĻŋāĻ˛āĨ¤ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ āĻĻā§āĻā§āĻ¨āĨ¤ āĻāĻāĻāĻāĻžāĻŦā§, āĻ¯āĻĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻšāĻ¯āĻŧ
5.12.0 āĻāĻ° āĻā§āĻ¯āĻŧā§ āĻŦāĻĄāĻŧ āĻŦāĻž āĻ¸āĻŽāĻžāĻ¨, āĻ¸ā§āĻā§āĻ°āĻžāĻāĻāĻāĻžāĻ°āĻā§āĻ˛āĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°ā§āĻ° āĻŽāĻ¤ā§āĻ āĻāĻāĻŋāĻ§āĻžāĻ¨āĻŋāĻāĻāĻžāĻŦā§ āĻ¸āĻā§āĻ°āĻŋāĻ¯āĻŧ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻāĻ ā§āĻ°ā§ˇ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ ā§āĻ°" āĻŦāĻž "āĻā§āĻ¨ āĻāĻ ā§āĻ° āĻ¨āĻ¯āĻŧ" āĻāĻ° āĻā§āĻ¨ā§ āĻ¸ā§āĻĒāĻˇā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° "āĻāĻžāĻ°ā§āĻ¸āĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻāĻāĻžāĻ°āĻ°āĻžāĻāĻĄ āĻāĻ°ā§
āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻ¤āĻžāĻ° āĻāĻā§ āĻāĻ¸ā§āĨ¤ āĻĒāĻ°āĻŦāĻ°ā§āĻ¤ā§āĻ¤ā§ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° VERSION" āĻāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻāĻāĻ°āĻŖāĻā§ āĻāĻāĻžāĻ°āĻ°āĻžāĻāĻĄ āĻāĻ°āĻŦā§ā§ˇ
āĻāĻāĻāĻŋ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ "āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨", āĻ¸āĻŽā§āĻāĻŦāĻ¤ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¯ā§āĻ āĻāĻ°āĻž "āĻāĻ ā§āĻ°" āĻāĻŦāĻ "āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯" āĻ āĻĒāĻ¸āĻžāĻ°āĻŖ
āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§ˇ "āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻ˛ā§āĻĄ āĻšāĻ¯āĻŧ āĻ¨āĻžā§ˇ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯. āĻĒāĻŋāĻāĻŽ or āĻāĻ ā§āĻ°.pm āĻĢāĻžāĻāĻ˛āĨ¤
"BEGIN" āĻāĻŽā§āĻĒāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ "āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨" āĻāĻŦāĻ "āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻāĻ°āĻ¤ā§ āĻŦāĻžāĻ§ā§āĻ¯ āĻāĻ°ā§āĨ¤ āĻĻā§āĻ¯
"require" āĻ¨āĻŋāĻļā§āĻāĻŋāĻ¤ āĻāĻ°ā§ āĻ¯ā§ āĻŽāĻĄāĻŋāĻāĻ˛āĻāĻŋ āĻŽā§āĻŽāĻ°āĻŋāĻ¤ā§ āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻ¯āĻĻāĻŋ āĻāĻāĻŋ āĻāĻāĻ¨āĻ āĻ¨āĻž āĻšāĻ¯āĻŧā§ āĻĨāĻžāĻā§āĨ¤ āĻĻā§āĻ¯
"āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻāĻāĻāĻŋ āĻŦāĻŋāĻ˛ā§āĻāĻāĻ¨ āĻ¨āĻ¯āĻŧ; āĻāĻāĻŋ "āĻŽāĻĄāĻŋāĻāĻ˛"-āĻ āĻāĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻŋāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻāĻ˛
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻŽāĻĄāĻŋāĻāĻ˛āĻā§ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻāĻŋ āĻāĻžāĻ°ā§āĻ¨ā§āĻā§ āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°āĻ¤ā§ āĻŦāĻ˛ā§āĻ¨
āĻĒā§āĻ¯āĻžāĻā§āĻ āĻŽāĻĄāĻŋāĻāĻ˛āĻāĻŋ āĻ¤āĻžāĻ° "āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻ¯ā§ āĻā§āĻ¨āĻ āĻāĻĒāĻžāĻ¯āĻŧā§ āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻĻāĻŋāĻ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ
āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋ āĻā§āĻŦāĻ˛āĻŽāĻžāĻ¤ā§āĻ° āĻĨā§āĻā§ āĻāĻ¤ā§āĻ¤āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ°ā§āĻ° āĻŽāĻžāĻ§ā§āĻ¯āĻŽā§ āĻ¤āĻžāĻĻā§āĻ° "āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻāĻŋ āĻ āĻ°ā§āĻāĻ¨ āĻāĻ°āĻ¤ā§ āĻŦā§āĻā§ āĻ¨ā§āĻ¯āĻŧ
"āĻ°āĻĒā§āĻ¤āĻžāĻ¨āĻŋāĻāĻžāĻ°āĻ" āĻļā§āĻ°ā§āĻŖā§ āĻ¯āĻž "āĻ°āĻĒā§āĻ¤āĻžāĻ¨āĻŋāĻāĻžāĻ°āĻ" āĻŽāĻĄāĻŋāĻāĻ˛ā§ āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤ āĻ°āĻĒā§āĻ¤āĻžāĻ¨āĻŋāĻāĻžāĻ°āĻ āĻĻā§āĻā§āĻ¨āĨ¤ āĻāĻĒāĻ¨āĻŋ āĻāĻ¤ā§āĻ¤āĻ° āĻĻāĻŋāĻŦā§āĻ¨ āĻ¨āĻž
"āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻ˛āĻāĻŋ āĻāĻĄāĻŧāĻŋāĻ¯āĻŧā§ āĻ¯āĻžāĻ¯āĻŧ, āĻāĻŽāĻ¨āĻāĻŋ āĻāĻāĻāĻŋ āĻ āĻā§āĻ˛ā§āĻĄ āĻĨāĻžāĻāĻ˛ā§āĻ
āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĨ¤
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻĒā§āĻ¯āĻžāĻā§āĻā§āĻ° "āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§ āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻ¨āĻž āĻāĻžāĻ¨ (āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻĒāĻ¨āĻžāĻ°
āĻ¨āĻžāĻŽāĻ¸ā§āĻĨāĻžāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻž āĻĨā§āĻā§), āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°ā§āĻ¨:
āĻŽāĻĄāĻŋāĻāĻ˛ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ ();
āĻ¯ā§ āĻ āĻŋāĻ āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯
āĻļā§āĻ°ā§ āĻāĻ°ā§āĻ¨ { āĻŽāĻĄāĻŋāĻāĻ˛ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ }
āĻ¯āĻĻāĻŋ VERSION āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻāĻāĻŋ āĻŽāĻĄāĻŋāĻāĻ˛ āĻāĻŦāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻĒāĻ¸ā§āĻĨāĻŋāĻ¤ āĻĨāĻžāĻā§, āĻ¤āĻžāĻšāĻ˛ā§ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻāĻ˛ āĻāĻ°āĻŦā§
āĻāĻāĻāĻŋ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻ¸āĻš āĻā§āĻ˛āĻžāĻ¸ āĻŽāĻĄāĻŋāĻāĻ˛ā§ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āĻ
VERSION āĻĒāĻĻā§āĻ§āĻ¤āĻŋ, āĻāĻāĻ¨āĻŋāĻāĻžāĻ°ā§āĻ¸āĻžāĻ˛ āĻā§āĻ˛āĻžāĻ¸ āĻĨā§āĻā§ āĻāĻ¤ā§āĻ¤āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ°āĻ¸ā§āĻ¤ā§āĻ°ā§ āĻĒā§āĻ°āĻžāĻĒā§āĻ¤, āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻāĻŋ āĻšāĻ˛ā§ āĻā§āĻ°āĻžāĻāĻ¸
$Module::VERSION āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§āĻ° āĻŽāĻžāĻ¨ā§āĻ° āĻĨā§āĻā§ āĻŦāĻĄāĻŧāĨ¤
āĻāĻŦāĻžāĻ°, LIST āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻĒāĻžāĻ°ā§āĻĨāĻā§āĻ¯ āĻ°āĻ¯āĻŧā§āĻā§ ("āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻ¨āĻžāĻŽ āĻĻāĻŋāĻ¯āĻŧā§ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ
āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ) āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ¸ā§āĻĒāĻˇā§āĻ āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž "()" ("āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž)āĨ¤ āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻāĻā§
VERSION āĻāĻ° āĻĒāĻ°ā§ āĻā§āĻ¨ āĻāĻŽāĻž āĻ¨ā§āĻ!
āĻāĻžāĻ°āĻŖ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻļāĻ¸ā§āĻ¤-āĻāĻĒā§āĻ¨ āĻāĻ¨ā§āĻāĻžāĻ°āĻĢā§āĻ¸, āĻĒā§āĻ°āĻāĻŽāĻžāĻ¸ (āĻāĻŽā§āĻĒāĻžāĻāĻ˛āĻžāĻ° āĻ¨āĻŋāĻ°ā§āĻĻā§āĻļāĻžāĻŦāĻ˛ā§)āĻ
āĻāĻ āĻāĻžāĻŦā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤āĨ¤ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻŦāĻžāĻ¸ā§āĻ¤āĻŦāĻžāĻ¯āĻŧāĻŋāĻ¤ pragmas āĻšāĻ˛:
āĻ§ā§āĻ°ā§āĻŦāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻĄāĻžāĻ¯āĻŧāĻžāĻāĻ¨āĻ¸ā§āĻāĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
sigtrap qw (SEGV BUS) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻāĻ ā§āĻ° qw āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ (sub vars refs);
subs qw(afunc blurfl) āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ qw(āĻ¸āĻŽāĻ¸ā§āĻ¤);
āĻ¸āĻžāĻāĻžāĻ¨ qw āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨ (āĻ¸ā§āĻĨāĻŋāĻ¤āĻŋāĻļā§āĻ˛ _quicksort _mergesort);
āĻāĻ āĻāĻĻā§āĻŽ-āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻāĻŋāĻā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻŦā§āĻ˛āĻ āĻ¸ā§āĻā§āĻĒā§ āĻļāĻŦā§āĻĻāĻžāĻ°ā§āĻĨāĻŦāĻŋāĻĻā§āĻ¯āĻž āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°ā§ (āĻ¯ā§āĻŽāĻ¨
"āĻāĻ ā§āĻ°" āĻŦāĻž "āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž", āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻŽāĻĄāĻŋāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤ā§, āĻ¯āĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĒā§āĻ°āĻ¤ā§āĻ āĻāĻŽāĻĻāĻžāĻ¨āĻŋ āĻāĻ°ā§
āĻĒā§āĻ¯āĻžāĻā§āĻ (āĻ¯āĻž āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻˇā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ°)āĨ¤
āĻāĻžāĻ°āĻŖ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻāĻŽā§āĻĒāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻšāĻ¯āĻŧ, āĻāĻāĻŋ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖ āĻĒā§āĻ°āĻŦāĻžāĻšāĻā§ āĻ¸āĻŽā§āĻŽāĻžāĻ¨ āĻāĻ°ā§ āĻ¨āĻž
āĻ¸āĻāĻāĻ˛āĻŋāĻ¤ āĻā§āĻĄā§āĻ° āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖāĨ¤ āĻŦāĻŋāĻļā§āĻˇ āĻāĻ°ā§, āĻŽāĻŋāĻĨā§āĻ¯āĻžāĻ° āĻāĻŋāĻ¤āĻ°ā§ āĻāĻāĻāĻŋ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻāĻ°āĻž
āĻāĻāĻāĻŋ āĻļāĻ°ā§āĻ¤āĻžāĻ§ā§āĻ¨ āĻļāĻžāĻāĻž āĻāĻāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻāĻ°āĻž āĻĨā§āĻā§ āĻŦāĻžāĻ§āĻž āĻĻā§āĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻŽāĻĄāĻŋāĻāĻ˛ āĻŦāĻž
pragma āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻļāĻ°ā§āĻ¤āĻ¸āĻžāĻĒā§āĻā§āĻˇā§ āĻ˛ā§āĻĄ āĻāĻ°āĻž āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨, āĻāĻāĻŋ if pragma āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§:
āĻ¯āĻĻāĻŋ $] < 5.008, "utf8" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
āĻ¯āĻĻāĻŋ WANT_WARNINGS, warnings => qw(āĻ¸āĻŽāĻ¸ā§āĻ¤);
āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ°ā§āĻĒ "āĻ¨āĻž" āĻā§āĻˇāĻŖāĻž āĻāĻā§ āĻ¯āĻž "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻŽāĻĻāĻžāĻ¨āĻŋāĻā§āĻ¤ āĻ āĻ°ā§āĻĨ āĻāĻ¨āĻŽāĻĒā§āĻ°ā§āĻ āĻāĻ°ā§āĨ¤
āĻ āĻ°ā§āĻĨāĻžā§, āĻāĻāĻŋ "āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" āĻāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§ "unimport āĻŽāĻĄāĻŋāĻāĻ˛ āĻ¤āĻžāĻ˛āĻŋāĻāĻž" āĻāĻ˛ āĻāĻ°ā§āĨ¤ āĻāĻāĻž āĻ āĻŋāĻ āĻŽāĻ¤ āĻāĻāĻ°āĻŖ āĻāĻ°ā§
"āĻāĻŽāĻĻāĻžāĻ¨āĻŋ" VERSION āĻāĻ° āĻ¸āĻžāĻĨā§ āĻāĻ°ā§, āĻāĻāĻāĻŋ āĻŦāĻžāĻĻ āĻĻā§āĻāĻ¯āĻŧāĻž āĻŦāĻž āĻāĻžāĻ˛āĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž, āĻŦāĻž āĻā§āĻ¨ā§ āĻāĻ¨-āĻāĻŽāĻĒā§āĻ°ā§āĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋ āĻ¨ā§āĻ
āĻĒāĻžāĻāĻ¯āĻŧāĻž āĻ¯āĻžāĻ¯āĻŧ āĻ¨āĻŋāĨ¤
āĻā§āĻ¨ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻ¨ā§āĻ;
āĻā§āĻ¨ āĻāĻ ā§āĻ° 'refs';
āĻā§āĻ¨ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¨ā§āĻ;
"no" āĻāĻ° "no VERSION" āĻĢāĻ°ā§āĻŽāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¯āĻ¤ā§āĻ¨ āĻ¨ā§āĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤āĨ¤ āĻāĻāĻāĻž āĻā§āĻŦāĻ˛ āĻšāĻ¤ā§ āĻŦā§āĻāĻžāĻ¨ā§ āĻšāĻ¯āĻŧā§āĻā§
āĻāĻ˛āĻŽāĻžāĻ¨ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¤āĻžāĻ° āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻā§āĻ° āĻā§āĻ¯āĻŧā§ āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĻ° āĻāĻŦāĻ āĻ¨āĻž
"āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨" āĻāĻ° āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯-āĻ¸āĻā§āĻˇāĻŽ āĻĒāĻžāĻ°ā§āĻļā§āĻŦāĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋāĻā§ āĻĒā§āĻ°ā§āĻŦāĻžāĻŦāĻ¸ā§āĻĨāĻžāĻ¯āĻŧ āĻĢā§āĻ°āĻžāĻ¤ā§ā§ˇ
āĻ¸ā§āĻā§āĻ¯āĻžāĻ¨ā§āĻĄāĻžāĻ°ā§āĻĄ āĻŽāĻĄāĻŋāĻāĻ˛ āĻāĻŦāĻ āĻĒā§āĻ°āĻžāĻāĻŽāĻžāĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻāĻ¨ā§āĻ¯ perlmodlib āĻĻā§āĻā§āĻ¨āĨ¤ "-M" āĻāĻ° āĻāĻ¨ā§āĻ¯ perlrun āĻĻā§āĻā§āĻ¨
āĻāĻŦāĻ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° "-m" āĻāĻŽāĻžāĻ¨ā§āĻĄ-āĻ˛āĻžāĻāĻ¨ āĻŦāĻŋāĻāĻ˛ā§āĻĒāĻā§āĻ˛āĻŋ āĻ¯āĻž āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻĨā§āĻā§ "āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°" āĻāĻžāĻ°ā§āĻ¯āĻāĻžāĻ°āĻŋāĻ¤āĻž āĻĻā§āĻ¯āĻŧ-
āĻ˛āĻžāĻāĻ¨āĨ¤
utime āĻ¤āĻžāĻ˛āĻŋāĻāĻž
āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§ āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§āĨ¤ āĻĒā§āĻ°āĻĨāĻŽ
āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĻā§āĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻ āĻŦāĻļā§āĻ¯āĻ NUMERIC āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻšāĻ¤ā§ āĻšāĻŦā§
āĻāĻĻā§āĻļ āĻ¸āĻĢāĻ˛āĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻ¨ā§āĻĄ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻĢāĻžāĻāĻ˛ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻŽāĻ¯āĻŧā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ, āĻāĻ āĻā§āĻĄ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻāĻ āĻĒā§āĻ°āĻāĻžāĻŦ āĻāĻā§
āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻ¸ā§āĻĒāĻ°ā§āĻļ(1) āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻ¯āĻāĻ¨ āĻĢāĻžāĻāĻ˛ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻĨāĻžāĻāĻž āĻāĻŦāĻ āĻāĻ˛āĻŽāĻžāĻ¨ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻ° āĻ āĻ¨ā§āĻ¤āĻ°ā§āĻāĻ¤
āĻāĻžāĻ°ā§āĻ¯āĻā§āĻ°āĻŽ:
#!/usr/bin/perl
$atime = $mtime = āĻ¸āĻŽāĻ¯āĻŧ;
utime $atime, $mtime, @ARGV;
āĻ¯ā§āĻšā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ˛ 5.8.0, āĻ¯āĻĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ° āĻĒā§āĻ°āĻĨāĻŽ āĻĻā§āĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ "undef" āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ utime(2)
āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋ āĻ˛āĻžāĻāĻŦā§āĻ°ā§āĻ°āĻŋ āĻĨā§āĻā§ syscall āĻāĻāĻāĻŋ āĻ¨āĻžāĻ˛ āĻĻā§āĻŦāĻŋāĻ¤ā§āĻ¯āĻŧ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĻāĻŋāĻ¯āĻŧā§ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧāĨ¤ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§,
āĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ ā§āĻ¯āĻžāĻā§āĻ¸ā§āĻ¸ āĻāĻŦāĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧāĻā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻ¸āĻŽāĻ¯āĻŧā§ āĻ¸ā§āĻ āĻāĻ°āĻŦā§ (āĻ¯ā§āĻŽāĻ¨,
āĻāĻĒāĻ°ā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯) āĻāĻŦāĻ āĻāĻŽāĻ¨ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ¤ā§āĻ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻ¯ā§āĻā§āĻ˛āĻŋ āĻāĻĒāĻ¨āĻŋ āĻ¸āĻ°āĻŦāĻ°āĻžāĻš āĻāĻ°ā§āĻ¨ āĻ¨āĻž
āĻāĻĒāĻ¨āĻžāĻ° āĻ˛ā§āĻāĻžāĻ° āĻ āĻ¨ā§āĻŽāĻ¤āĻŋ āĻāĻā§:
$file (@ARGV) {āĻāĻ° āĻāĻ¨ā§āĻ¯
utime (undef, undef, $file)
|| āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ "$file āĻ¸ā§āĻĒāĻ°ā§āĻļ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĻŋ: $!";
}
NFS āĻāĻ° āĻ āĻ§ā§āĻ¨ā§ āĻāĻāĻŋ NFS āĻ¸āĻžāĻ°ā§āĻāĻžāĻ°ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§, āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ āĻ¨āĻ¯āĻŧāĨ¤
āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻ¸āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻā§āĻā§āĻ°ā§āĻ¨āĻžāĻāĻā§āĻļāĻ¨ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻšāĻ¯āĻŧ, NFS āĻ¸āĻžāĻ°ā§āĻāĻžāĻ° āĻāĻŦāĻ āĻ¸ā§āĻĨāĻžāĻ¨ā§āĻ¯āĻŧ āĻŽā§āĻļāĻŋāĻ¨ āĻĨāĻžāĻāĻŦā§
āĻŦāĻŋāĻāĻŋāĻ¨ā§āĻ¨ āĻŦāĻžāĻ°. āĻāĻāĻ¨āĻŋāĻā§āĻ¸ āĻ¸ā§āĻĒāĻ°ā§āĻļ(1) āĻāĻŽāĻžāĻ¨ā§āĻĄ āĻāĻ¸āĻ˛ā§ āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻāĻ āĻĢāĻ°ā§āĻŽāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻŦā§
āĻĒā§āĻ°āĻĨāĻŽ āĻāĻĻāĻžāĻšāĻ°āĻŖā§ āĻĻā§āĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§āĨ¤
āĻĒā§āĻ°āĻĨāĻŽ āĻĻā§āĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻāĻŋāĻā§ "undef" āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĒāĻžāĻ¸ āĻāĻ°āĻž 0 āĻāĻŦāĻ āĻĒāĻžāĻ¸ āĻāĻ°āĻžāĻ° āĻ¸āĻŽāĻ¤ā§āĻ˛ā§āĻ¯
āĻāĻāĻ¯āĻŧāĻ "undef" āĻšāĻ˛ā§ āĻŦāĻ°ā§āĻŖāĻŋāĻ¤ āĻĒā§āĻ°āĻāĻžāĻŦ āĻĨāĻžāĻāĻŦā§ āĻ¨āĻžāĨ¤ āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻā§āĻ°āĻŋāĻāĻžāĻ°
āĻ āĻĒā§āĻ°āĻžāĻĨāĻŽāĻŋāĻ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĨ¤
āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻāĻŽāĻ¨ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§ āĻĢāĻŋāĻāĻāĻžāĻāĻŽāĻ¸(2), āĻāĻĒāĻ¨āĻŋ āĻĢāĻžāĻāĻ˛āĻā§āĻ˛āĻŋāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋ āĻĒāĻžāĻ¸ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻāĻžāĻ˛ā§
āĻ¯ā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽāĻā§āĻ˛āĻŋ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§ āĻ¨āĻž āĻĢāĻŋāĻāĻāĻžāĻāĻŽāĻ¸(2), āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ āĻĒāĻžāĻ¸ āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻŦā§āĻ¯āĻ¤āĻŋāĻā§āĻ°āĻŽ āĻāĻ¤ā§āĻĨāĻžāĻĒāĻ¨ āĻāĻ°ā§āĨ¤
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻā§ āĻā§āĻ˛ā§āĻŦ āĻŦāĻž āĻā§āĻ˛ā§āĻŦ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ¸ā§āĻŦā§āĻā§āĻ¤ āĻšāĻ¤ā§ āĻšāĻŦā§; āĻŦā§āĻ¯āĻŧāĻžāĻ°āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄ āĻšāĻ¯āĻŧ
āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¨āĻžāĻŽāĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻāĻāĻāĻžāĻāĻŽ"āĨ¤
āĻŽāĻžāĻ¨ āĻšā§āĻ¯āĻžāĻļ
āĻŽāĻžāĻ¨ ARRAY
āĻŽāĻžāĻ¨ EXPR
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§, āĻ¨āĻžāĻŽāĻ¯ā§āĻā§āĻ¤ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŽāĻžāĻ¨ āĻ¸āĻŽāĻ¨ā§āĻŦāĻŋāĻ¤ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻāĻŋāĻ¤āĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ 5.12 āĻŦāĻž āĻ¤āĻžāĻ° āĻĒāĻ°ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ°, āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ° āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋāĻ° āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°āĻŦā§; āĻĒā§āĻ°ā§āĻŦā§
āĻ¯ā§ āĻ°āĻŋāĻ˛āĻŋāĻ, āĻāĻāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§ āĻāĻ°ā§āĻā§āĻŽā§āĻ¨ā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻāĻāĻŋ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§āĨ¤ āĻāĻŋāĻ¤āĻ°ā§
āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻ, āĻŽāĻžāĻ¨ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤
āĻšā§āĻ¯āĻžāĻļ āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻāĻāĻāĻŋ āĻĻā§āĻļā§āĻ¯āĻ¤ āĻāĻ˛ā§āĻŽā§āĻ˛ā§ āĻā§āĻ°āĻŽā§ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ. āĻĒā§āĻ°āĻā§āĻ¤ āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽ āĻā§āĻ°āĻŽ āĻšāĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻšā§āĻ¯āĻžāĻļ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ; āĻĻā§āĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§ āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ā§āĻ° āĻāĻāĻ āĻ¸āĻŋāĻ°āĻŋāĻā§āĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻāĻŋāĻ¨ā§āĻ¨ āĻā§āĻ°āĻŽā§āĨ¤ āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻ¯ā§āĻā§āĻ¨ā§ āĻ¸āĻ¨ā§āĻ¨āĻŋāĻŦā§āĻļ āĻā§āĻ°āĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§,
āĻ¯ā§ āĻā§āĻ¨ā§ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻŽāĻ¤ā§āĻ, āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻāĻ¤āĻŽ āĻā§āĻāĻŋ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻĻā§āĻŦāĻžāĻ°āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻžāĻĄāĻŧāĻž
āĻ āĻĨāĻŦāĻž āĻ āĻ°ā§āĻĄāĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¨āĻž āĻāĻ°ā§āĻ "āĻā§" āĻŽā§āĻā§ āĻĢā§āĻ˛āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻāĻāĻāĻŋ āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤ āĻšā§āĻ¯āĻžāĻļ āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻĻā§āĻ°ā§āĻ
āĻ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻāĻĒāĻ¨āĻŋ āĻŦāĻžāĻ°āĻŦāĻžāĻ° āĻāĻāĻ āĻĢā§āĻ°āĻ¤ āĻĻāĻŋāĻ¤ā§ "āĻā§", "āĻŽāĻžāĻ¨" āĻāĻŦāĻ "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" āĻāĻ° āĻāĻĒāĻ° āĻ¨āĻŋāĻ°ā§āĻāĻ° āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨
āĻāĻā§ āĻ āĻĒāĻ°ā§āĻ° āĻŽāĻ¤ āĻ āĻ°ā§āĻĄāĻžāĻ°āĨ¤ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlsec āĻ "āĻ ā§āĻ¯āĻžāĻ˛āĻā§āĻ°āĻŋāĻĻāĻŽāĻŋāĻ āĻāĻāĻŋāĻ˛āĻ¤āĻž āĻāĻā§āĻ°āĻŽāĻŖ" āĻĻā§āĻā§āĻ¨
āĻā§āĻ¨ āĻšā§āĻ¯āĻžāĻļ āĻ āĻ°ā§āĻĄāĻžāĻ° āĻ°ā§āĻ¯āĻžāĻ¨ā§āĻĄāĻŽāĻžāĻāĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ. āĻāĻāĻžāĻ¨ā§ āĻĻā§āĻāĻ¯āĻŧāĻž āĻā§āĻ¯āĻžāĻ°āĻžāĻ¨ā§āĻāĻŋāĻā§āĻ˛āĻŋ āĻāĻžāĻĄāĻŧāĻžāĻ āĻ¸āĻ āĻŋāĻ
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻšā§āĻ¯āĻžāĻļ āĻ ā§āĻ¯āĻžāĻ˛āĻāĻ°āĻŋāĻĻāĻŽā§āĻ° āĻŦāĻŋāĻŦāĻ°āĻŖ āĻāĻŦāĻ āĻšā§āĻ¯āĻžāĻļ āĻā§āĻ°āĻžāĻāĻžāĻ°ā§āĻ¸āĻžāĻ˛ āĻ āĻ°ā§āĻĄāĻžāĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¸āĻžāĻĒā§āĻā§āĻˇā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻ¯ā§āĻā§āĻ¨ā§ āĻ°āĻŋāĻ˛āĻŋāĻāĨ¤ āĻŦāĻžāĻāĻ§āĻž āĻšā§āĻ¯āĻžāĻļ āĻ¸āĻŽā§āĻŽāĻžāĻ¨ā§āĻ° āĻ¸āĻžāĻĨā§ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻ¸āĻžāĻĨā§ āĻāĻŋāĻ¨ā§āĻ¨āĻāĻžāĻŦā§ āĻāĻāĻ°āĻŖ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻāĻāĻā§āĻŽ āĻ¸āĻ¨ā§āĻ¨āĻŋāĻŦā§āĻļ āĻāĻŦāĻ āĻŽā§āĻā§ āĻĢā§āĻ˛āĻžāĻ° āĻā§āĻ°āĻŽ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯āĨ¤
āĻĒāĻžāĻ°ā§āĻļā§āĻŦ āĻĒā§āĻ°āĻ¤āĻŋāĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻšāĻŋāĻ¸āĻžāĻŦā§, āĻāĻ˛āĻŋāĻ āĻŽāĻžāĻ¨ () HASH āĻŦāĻž ARRAY-āĻāĻ° āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻāĻžāĻ°ā§ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§, āĻĻā§āĻā§āĻ¨
"āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ" (āĻŦāĻŋāĻļā§āĻˇāĻ¤, āĻāĻ˛āĻŋāĻ āĻŽāĻžāĻ¨ () āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻā§ āĻ¨ā§ āĻ¸āĻš āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻāĻžāĻ°ā§ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°ā§
āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻāĻžāĻ°āĻšā§āĻĄ āĻĒā§āĻ¨āĻ°āĻžāĻŦā§āĻ¤ā§āĻ¤āĻŋāĻāĻžāĻ°ā§ āĻ°āĻŋāĻ¸ā§āĻ āĻāĻ°āĻž āĻāĻžāĻĄāĻŧāĻžāĻ, āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĒā§āĻ°āĻ¸āĻā§āĻā§ "āĻŽāĻžāĻ¨ @ āĻ ā§āĻ¯āĻžāĻ°ā§" āĻšāĻ˛
āĻĒā§āĻ˛ā§āĻāĻ¨ @array āĻāĻ° āĻŽāĻ¤āĻāĨ¤ (āĻāĻŽāĻ°āĻž āĻ¸ā§āĻĒāĻžāĻ°āĻŋāĻļ āĻāĻ°āĻāĻŋ āĻ¯ā§ āĻāĻĒāĻ¨āĻŋ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻ "āĻā§ @array" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨
āĻāĻāĻŋ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻĻāĻŋāĻ¯āĻŧā§āĻāĻŋāĻ˛ āĻ¯ā§ "āĻŽāĻžāĻ¨ @ āĻ ā§āĻ¯āĻžāĻ°ā§" āĻŦā§āĻ° āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻ°āĻ āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨ āĻšāĻŦā§
āĻāĻāĻŋ āĻ°ā§āĻā§ āĻ¯āĻžāĻāĻ¯āĻŧāĻžāĻ° āĻā§āĻ¯āĻŧā§āĨ¤)
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻ āĻ¨ā§āĻ˛āĻŋāĻĒāĻŋ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋ, āĻ¯āĻžāĻ° āĻ āĻ°ā§āĻĨ āĻ¤āĻžāĻĻā§āĻ° āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ˛ā§ āĻ¤āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻŦā§
āĻšā§āĻ¯āĻžāĻļā§āĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧāĻŦāĻ¸ā§āĻ¤ā§:
(āĻŽāĻžāĻ¨ %āĻšā§āĻ¯āĻžāĻļ) āĻāĻ¨ā§āĻ¯ { s/foo/bar/g } # % āĻšā§āĻ¯āĻžāĻļ āĻŽāĻžāĻ¨ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°ā§
(@hash{keys %hash}) { s/foo/bar/g } # āĻāĻāĻ
āĻĒāĻžāĻ°ā§āĻ˛ 5.14 āĻĻāĻŋāĻ¯āĻŧā§ āĻļā§āĻ°ā§ āĻāĻ°ā§, "āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ" āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° EXPR āĻ¨āĻŋāĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯āĻžāĻ° āĻāĻāĻāĻŋ āĻ°ā§āĻĢāĻžāĻ°ā§āĻ¨ā§āĻ¸ āĻĨāĻžāĻāĻ¤ā§ āĻšāĻŦā§
āĻāĻāĻāĻŋ āĻāĻ¨āĻŦā§āĻ˛ā§āĻ¸ā§āĻĄ āĻšā§āĻ¯āĻžāĻļ āĻŦāĻž āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§āĨ¤ āĻ¯ā§āĻā§āĻ¤āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ dereferenced āĻāĻ°āĻž āĻšāĻŦā§. āĻāĻ
"āĻŽāĻžāĻ¨" āĻāĻ° āĻĻāĻŋāĻāĻāĻŋ āĻ āĻ¤ā§āĻ¯āĻ¨ā§āĻ¤ āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻŦāĻ˛ā§ āĻŦāĻŋāĻŦā§āĻāĻŋāĻ¤ āĻšāĻ¯āĻŧāĨ¤ āĻ¸āĻ āĻŋāĻ āĻāĻāĻ°āĻŖ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĒāĻžāĻ°ā§āĻ˛ā§āĻ° āĻāĻŦāĻŋāĻˇā§āĻ¯āĻ¤ā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖā§āĨ¤
āĻāĻ¨ā§āĻ¯ (āĻŽāĻžāĻ¨ $hashref) { ... }
āĻāĻ¨ā§āĻ¯ (āĻŽāĻžāĻ¨ $obj->get_arrayref) { ... }
āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄā§āĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ°āĻāĻžāĻ°ā§āĻĻā§āĻ° āĻŦāĻŋāĻā§āĻ°āĻžāĻ¨ā§āĻ¤āĻŋāĻāĻ° āĻāĻĄāĻŧāĻžāĻ¤ā§ āĻ¯āĻžāĻ°āĻž āĻāĻ° āĻāĻā§āĻ° āĻ¸āĻāĻ¸ā§āĻāĻ°āĻŖāĻā§āĻ˛āĻŋ āĻāĻžāĻ˛āĻžāĻā§āĻā§
āĻ°āĻšāĻ¸ā§āĻ¯āĻŽāĻ¯āĻŧ āĻ¸āĻŋāĻ¨āĻā§āĻ¯āĻžāĻā§āĻ¸ āĻ¤ā§āĻ°ā§āĻāĻŋ āĻ¸āĻš āĻĒāĻžāĻ°ā§āĻ˛, āĻāĻĒāĻ¨āĻžāĻ° āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§āĻˇā§ āĻāĻ āĻ§āĻ°āĻ¨ā§āĻ° āĻāĻŋāĻ¨āĻŋāĻ¸ āĻ°āĻžāĻā§āĻ¨
āĻ¸āĻāĻā§āĻ¤ āĻ¯ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻā§āĻĄ āĻāĻžāĻ āĻāĻ°āĻŦā§ āĻā§āĻŦāĻ˛ āĻ¸āĻžāĻŽā§āĻĒā§āĻ°āĻ¤āĻŋāĻ āĻāĻŋāĻ¨ā§āĻā§āĻā§āĻ° āĻĒāĻžāĻ°ā§āĻ˛āĻ¸-āĻ:
5.012 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻā§/āĻŽāĻžāĻ¨/āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ ā§āĻ¯āĻžāĻ°ā§āĻ¤ā§ āĻāĻžāĻ āĻāĻ°ā§
5.014 āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨; # āĻ¤āĻžāĻ āĻā§/āĻŽāĻžāĻ¨/ āĻ¸ā§āĻā§āĻ˛āĻžāĻ°ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻžāĻ (āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ)
āĻāĻāĻžāĻĄāĻŧāĻžāĻ "āĻā§", "āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ", āĻāĻŦāĻ "āĻ¸āĻ°ā§āĻ" āĻĻā§āĻā§āĻ¨āĨ¤
vec EXPR, OFFSET, BITS
EXPR-āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋāĻā§ āĻĒā§āĻ°āĻ¸ā§āĻĨ BITS-āĻāĻ° āĻāĻĒāĻžāĻĻāĻžāĻ¨ āĻĻāĻŋāĻ¯āĻŧā§ āĻ¤ā§āĻ°āĻŋ āĻāĻāĻāĻŋ āĻŦāĻŋāĻ āĻā§āĻā§āĻāĻ° āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻŦāĻŋāĻŦā§āĻāĻ¨āĻž āĻāĻ°ā§ āĻāĻŦāĻ
āĻāĻāĻāĻŋ āĻ¸ā§āĻŦāĻžāĻā§āĻˇāĻ°āĻŦāĻŋāĻšā§āĻ¨ āĻĒā§āĻ°ā§āĻŖāĻ¸āĻāĻā§āĻ¯āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ OFFSET āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°āĻž āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§āĨ¤ āĻŦāĻŋāĻāĻ¸
āĻ¤āĻžāĻ āĻŦāĻŋāĻā§āĻ° āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ¸āĻāĻ°āĻā§āĻˇāĻŋāĻ¤ āĻŦāĻŋāĻā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻāĻ°ā§
āĻā§āĻā§āĻāĻ° āĻāĻāĻŋ āĻ āĻŦāĻļā§āĻ¯āĻ 1 āĻĨā§āĻā§ 32 (āĻŦāĻž 64, āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻĒā§āĻ˛ā§āĻ¯āĻžāĻāĻĢāĻ°ā§āĻŽ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨ āĻāĻ°ā§) āĻāĻ° āĻŽāĻ§ā§āĻ¯ā§ āĻĻā§āĻāĻŋāĻ° āĻļāĻā§āĻ¤āĻŋ āĻšāĻ¤ā§ āĻšāĻŦā§
āĻ¯ā§)āĨ¤
BITS 8 āĻšāĻ˛ā§, "āĻāĻĒāĻžāĻĻāĻžāĻ¨" āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻŦāĻžāĻāĻā§āĻ° āĻ¸āĻžāĻĨā§ āĻŽāĻŋāĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧāĨ¤
āĻ¯āĻĻāĻŋ BITS 16 āĻŦāĻž āĻ¤āĻžāĻ° āĻŦā§āĻļāĻŋ āĻšāĻ¯āĻŧ, āĻāĻ¨āĻĒā§āĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻŦāĻžāĻāĻāĻā§āĻ˛āĻŋ āĻāĻāĻžāĻ°ā§āĻ° āĻāĻŖā§āĻĄā§ āĻŦāĻŋāĻāĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ
BITS/8, āĻāĻŦāĻ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻā§āĻ°ā§āĻĒ āĻāĻāĻāĻŋ āĻ¸āĻāĻā§āĻ¯āĻž āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ°āĻŋāĻ¤ āĻšāĻ¯āĻŧ āĻĒā§āĻ¯āĻžāĻ()/āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ() āĻ¸āĻā§āĻā§ āĻŦāĻĄāĻŧ-
āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ "n"/"N" (āĻāĻŦāĻ āĻ āĻ¨ā§āĻ°ā§āĻĒāĻāĻžāĻŦā§ BITS==64)āĨ¤ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ "āĻĒā§āĻ¯āĻžāĻ" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¯āĻĻāĻŋ āĻŦāĻŋāĻāĻā§āĻ˛āĻŋ 4 āĻŦāĻž āĻ¤āĻžāĻ° āĻāĻŽ āĻšāĻ¯āĻŧ, āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻŦāĻžāĻāĻā§ āĻŦāĻŋāĻāĻā§āĻ¤ āĻšāĻ¯āĻŧ, āĻ¤āĻžāĻšāĻ˛ā§ āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻŦāĻžāĻāĻā§āĻ° āĻŦāĻŋāĻāĻā§āĻ˛āĻŋ āĻšāĻ˛
8/BITS āĻā§āĻ°ā§āĻĒā§ āĻŦāĻŋāĻāĻā§āĻ¤āĨ¤ āĻāĻāĻāĻŋ āĻŦāĻžāĻāĻā§āĻ° āĻŦāĻŋāĻāĻā§āĻ˛āĻŋāĻā§ āĻ¸āĻžāĻŽāĻžāĻ¨ā§āĻ¯-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨-āĻāĻļ āĻāĻžāĻŦā§ āĻ¸āĻāĻā§āĻ¯āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ, āĻ¯ā§āĻŽāĻ¨
0x01, 0x02, 0x04, 0x08, 0x10, 0x20, 0x40, 0x80 āĻāĨ¤ āĻ¯ā§āĻŽāĻ¨ āĻāĻāĻ āĻāĻžāĻāĻž
āĻāĻ¨āĻĒā§āĻ āĻŦāĻžāĻāĻ "chr,(0x36)" āĻĻā§āĻāĻŋ āĻā§āĻ°ā§āĻĒā§ āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻĻā§āĻ¯āĻŧ "(0x6, 0x3)"; āĻāĻāĻŋāĻā§ 4 āĻāĻžāĻ āĻāĻ°ā§
āĻā§āĻ°ā§āĻĒ āĻĻā§āĻ¯āĻŧ "(0x2, 0x1, 0x3, 0x0)"āĨ¤
"vec" āĻāĻ° āĻāĻ¨ā§āĻ¯āĻ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§, āĻ¯ā§ āĻā§āĻˇā§āĻ¤ā§āĻ°ā§ āĻŦāĻ¨ā§āĻ§āĻ¨ā§ āĻĻā§āĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻĒā§āĻ°āĻ¯āĻŧā§āĻāĻ¨
āĻŽāĻ¤ āĻĒā§āĻ°āĻāĻžāĻļ āĻ¸āĻ āĻŋāĻ āĻ āĻā§āĻ°āĻžāĻ§āĻŋāĻāĻžāĻ°
vec($image, $max_x * $x + $y, 8) = 3;
āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻŋāĻ¤ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻ¯āĻŧā§āĻ° āĻŦāĻžāĻāĻ°ā§ āĻĨāĻžāĻāĻ˛ā§, āĻŽāĻžāĻ¨ 0 āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧāĨ¤ āĻ¯āĻĻāĻŋ āĻāĻāĻāĻŋ āĻāĻĒāĻžāĻĻāĻžāĻ¨
āĻ āĻĢ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻāĻ° āĻļā§āĻˇā§ āĻ˛ā§āĻāĻž āĻāĻā§, āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°āĻĨāĻŽā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻĒā§āĻ°āĻ¸āĻžāĻ°āĻŋāĻ¤ āĻāĻ°āĻŦā§
āĻ¯āĻĨā§āĻˇā§āĻ āĻ āĻ¨ā§āĻ āĻļā§āĻ¨ā§āĻ¯ āĻŦāĻžāĻāĻāĨ¤ āĻāĻ° āĻļā§āĻ°ā§āĻāĻž āĻ˛ā§āĻāĻž āĻŦāĻ¨ā§āĻ§ āĻāĻ°āĻžāĻ° āĻā§āĻˇā§āĻāĻž āĻāĻ°āĻž āĻāĻāĻāĻŋ āĻ¤ā§āĻ°ā§āĻāĻŋ
āĻ¸ā§āĻā§āĻ°āĻŋāĻ (āĻ āĻ°ā§āĻĨāĻžā§, āĻ¨ā§āĻ¤āĻŋāĻŦāĻžāĻāĻ āĻ āĻĢāĻ¸ā§āĻ)āĨ¤
āĻ¯āĻĻāĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖāĻāĻžāĻŦā§ UTF-8 āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻāĻ¨āĻā§āĻĄ āĻāĻ°āĻž āĻšāĻ¯āĻŧ (āĻāĻŦāĻ āĻāĻāĻāĻžāĻŦā§ UTF8 āĻĒāĻ¤āĻžāĻāĻž āĻĨāĻžāĻā§
āĻ¸ā§āĻ), āĻāĻāĻŋ "vec" āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻāĻāĻŋ āĻ āĻā§āĻ¯āĻ¨ā§āĻ¤āĻ°ā§āĻŖ āĻŦāĻžāĻāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ-āĻ āĻāĻžāĻ āĻāĻ°ā§, āĻ¨āĻ¯āĻŧ
āĻ§āĻžāĻ°āĻŖāĻžāĻāĻ¤ āĻ āĻā§āĻˇāĻ° āĻ¸ā§āĻā§āĻ°āĻŋāĻ, āĻāĻŽāĻ¨āĻāĻŋ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻāĻžāĻā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻ° āĻĨā§āĻā§ āĻāĻŽ āĻŽāĻžāĻ¨ āĻ¸āĻš āĻ āĻā§āĻˇāĻ° āĻĨāĻžāĻā§
256.
"vec" āĻĻāĻŋāĻ¯āĻŧā§ āĻ¤ā§āĻ°āĻŋ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĻā§āĻ˛āĻŋāĻā§ āĻ˛āĻāĻŋāĻā§āĻ¯āĻžāĻ˛ āĻ āĻĒāĻžāĻ°ā§āĻāĻ° "|", āĻĻāĻŋāĻ¯āĻŧā§āĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
"&", "^", āĻāĻŦāĻ "~"āĨ¤ āĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻ°āĻž āĻ āĻ¨ā§āĻŽāĻžāĻ¨ āĻāĻ°āĻŦā§ āĻ¯āĻāĻ¨ āĻāĻāĻāĻŋ āĻŦāĻŋāĻ āĻā§āĻā§āĻāĻ° āĻ āĻĒāĻžāĻ°ā§āĻļāĻ¨ āĻāĻžāĻā§āĻā§āĻˇāĻŋāĻ¤
āĻāĻāĻ¯āĻŧ āĻ āĻĒāĻžāĻ°ā§āĻ¨ā§āĻĄāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻāĨ¤ perlop āĻ "āĻŦāĻŋāĻāĻāĻ¯āĻŧāĻžāĻāĻ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻā§āĻĄāĻāĻŋ 'PerlPerlPerl' āĻŦāĻ˛ā§ āĻāĻāĻāĻŋ ASCII āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§āĨ¤ āĻŽāĻ¨ā§āĻ¤āĻŦā§āĻ¯
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋ āĻ§āĻžāĻĒā§āĻ° āĻĒāĻ°ā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĻā§āĻāĻžāĻ¨āĨ¤ āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻ āĻā§āĻĄāĻāĻŋ āĻŦāĻĄāĻŧ-āĻ¤ā§ āĻāĻāĻ āĻāĻžāĻŦā§ āĻāĻžāĻ āĻāĻ°ā§
āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŦāĻž āĻ˛āĻŋāĻāĻ˛-āĻāĻ¨ā§āĻĄāĻŋāĻ¯āĻŧāĻžāĻ¨ āĻŽā§āĻļāĻŋāĻ¨āĨ¤
āĻāĻŽāĻžāĻ° $foo = '';
vec($foo, 0, 32) = 0x5065726C; # 'āĻĒāĻžāĻ°ā§āĻ˛'
# $foo eq "Perl" eq "\x50\x65\x72\x6C", 32 āĻŦāĻŋāĻ
āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ vec($foo, 0, 8); # āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ 80 == 0x50 == ord('P')
vec($foo, 2, 16) = 0x5065; # 'PerlPe'
vec($foo, 3, 16) = 0x726C; # 'āĻĒāĻžāĻ°ā§āĻ˛āĻĒāĻžāĻ°ā§āĻ˛'
vec($foo, 8, 8) = 0x50; # 'PerlPerlP'
vec($foo, 9, 8) = 0x65; # 'PerlPerlPe'
vec($foo, 20, 4) = 2; # 'PerlPerlPe'āĨ¤ "\x02"
vec($foo, 21, 4) = 7; # 'PerlPerlPer'
# 'r' āĻšāĻ˛ "\x72"
vec($foo, 45, 2) = 3; # 'PerlPerlPer'āĨ¤ "\x0c"
vec($foo, 93, 1) = 1; # 'PerlPerlPer'āĨ¤ "\x2c"
vec($foo, 94, 1) = 1; # 'PerlPerlPerl'
# 'l' āĻšāĻ˛ "\x6c"
āĻāĻāĻāĻŋ āĻŦāĻŋāĻ āĻā§āĻā§āĻāĻ°āĻā§ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŦāĻž 0 āĻāĻŦāĻ 1 āĻāĻ° āĻ¤āĻžāĻ˛āĻŋāĻāĻžāĻ¯āĻŧ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻ¤ā§, āĻāĻāĻā§āĻ˛āĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨:
$āĻŦāĻŋāĻ = āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("āĻŦāĻŋ*", $āĻā§āĻā§āĻāĻ°);
@āĻŦāĻŋāĻ = āĻŦāĻŋāĻāĻā§āĻ¤(//, āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("āĻŦāĻŋ*", $āĻā§āĻā§āĻāĻ°));
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻŦāĻŋāĻāĻā§āĻ˛āĻŋāĻ¤ā§ āĻ¸āĻ āĻŋāĻ āĻĻā§āĻ°ā§āĻā§āĻ¯ āĻāĻžāĻ¨ā§āĻ¨ āĻ¤āĻŦā§ āĻāĻāĻŋ "*" āĻāĻ° āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻŦāĻŋāĻāĻā§āĻ˛āĻŋ āĻāĻ¸āĻ˛ā§ āĻā§āĻāĻžāĻŦā§ āĻāĻžāĻ¯āĻŧāĻāĻžāĻ¯āĻŧ āĻĒāĻĄāĻŧā§ āĻ¤āĻž āĻŦā§āĻāĻžāĻ¨ā§āĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻžāĻ¨ā§ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ āĻ°āĻ¯āĻŧā§āĻā§:
#!/usr/bin/perl -wl
āĻŽā§āĻĻā§āĻ°āĻŖ <<'EOT';
0 1 2 3
āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("V",$_) 01234567890123456789012345678901
-------------------------------------------------- ----------------
EOT
$w (0..3) {
$āĻĒā§āĻ°āĻ¸ā§āĻĨ = 2**$w;
āĻāĻ¨ā§āĻ¯ ($shift=0; $shift < $width; ++$shift) {
($off=0; $off < 32/$width; ++$off) {
$str = āĻĒā§āĻ¯āĻžāĻ("B*", "0"x32);
$āĻŦāĻŋāĻ = (1<<$āĻļāĻŋāĻĢā§āĻ);
vec($str, $off, $width) = $bits;
$res = āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("b*", $str);
$val = āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("V", $str);
āĻ˛āĻŋāĻā§āĻ¨
}
}
}
āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ STDOUT =
vec($_,@#,@#) = @<< == @######## @>>>>>>>>>>>>>>>>>>>> >>>>>>>>
$off, $width, $bits, $val, $res
.
__āĻļā§āĻˇ__
āĻŽā§āĻļāĻŋāĻ¨ā§āĻ° āĻāĻ°ā§āĻāĻŋāĻā§āĻāĻāĻžāĻ° āĻ¯āĻžāĻ āĻšā§āĻ āĻ¨āĻž āĻā§āĻ¨ āĻāĻāĻŋ āĻāĻ˛ā§, āĻāĻĒāĻ°ā§āĻ° āĻāĻĻāĻžāĻšāĻ°āĻŖāĻāĻŋ āĻšāĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤
āĻ¨āĻŋāĻŽā§āĻ¨āĻ˛āĻŋāĻāĻŋāĻ¤ āĻā§āĻŦāĻŋāĻ˛ āĻŽā§āĻĻā§āĻ°āĻŖ āĻāĻ°ā§āĻ¨:
0 1 2 3
āĻāĻ¨āĻĒā§āĻ¯āĻžāĻ("V",$_) 01234567890123456789012345678901
-------------------------------------------------- ----------------
vec($_, 0, 1) = 1 == 1 10000000000000000000000000000000
vec($_, 1, 1) = 1 == 2 01000000000000000000000000000000
vec($_, 2, 1) = 1 == 4 00100000000000000000000000000000
vec($_, 3, 1) = 1 == 8 00010000000000000000000000000000
vec($_, 4, 1) = 1 == 16 00001000000000000000000000000000
vec($_, 5, 1) = 1 == 32 00000100000000000000000000000000
vec($_, 6, 1) = 1 == 64 00000010000000000000000000000000
vec($_, 7, 1) = 1 == 128 00000001000000000000000000000000
vec($_, 8, 1) = 1 == 256 00000000100000000000000000000000
vec($_, 9, 1) = 1 == 512 00000000010000000000000000000000
vec($_,10, 1) = 1 == 1024 00000000001000000000000000000000
vec($_,11, 1) = 1 == 2048 00000000000100000000000000000000
vec($_,12, 1) = 1 == 4096 00000000000010000000000000000000
vec($_,13, 1) = 1 == 8192 00000000000001000000000000000000
vec($_,14, 1) = 1 == 16384 00000000000000100000000000000000
vec($_,15, 1) = 1 == 32768 00000000000000010000000000000000
vec($_,16, 1) = 1 == 65536 00000000000000001000000000000000
vec($_,17, 1) = 1 == 131072 00000000000000000100000000000000
vec($_,18, 1) = 1 == 262144 00000000000000000010000000000000
vec($_,19, 1) = 1 == 524288 00000000000000000001000000000000
vec($_,20, 1) = 1 == 1048576 00000000000000000000100000000000
vec($_,21, 1) = 1 == 2097152 00000000000000000000010000000000
vec($_,22, 1) = 1 == 4194304 00000000000000000000001000000000
vec($_,23, 1) = 1 == 8388608 00000000000000000000000100000000
vec($_,24, 1) = 1 == 16777216 00000000000000000000000010000000
vec($_,25, 1) = 1 == 33554432 00000000000000000000000001000000
vec($_,26, 1) = 1 == 67108864 00000000000000000000000000100000
vec($_,27, 1) = 1 == 134217728 00000000000000000000000000010000
vec($_,28, 1) = 1 == 268435456 00000000000000000000000000001000
vec($_,29, 1) = 1 == 536870912 00000000000000000000000000000100
vec($_,30, 1) = 1 == 1073741824 00000000000000000000000000000010
vec($_,31, 1) = 1 == 2147483648 00000000000000000000000000000001
vec($_, 0, 2) = 1 == 1 10000000000000000000000000000000
vec($_, 1, 2) = 1 == 4 00100000000000000000000000000000
vec($_, 2, 2) = 1 == 16 00001000000000000000000000000000
vec($_, 3, 2) = 1 == 64 00000010000000000000000000000000
vec($_, 4, 2) = 1 == 256 00000000100000000000000000000000
vec($_, 5, 2) = 1 == 1024 00000000001000000000000000000000
vec($_, 6, 2) = 1 == 4096 00000000000010000000000000000000
vec($_, 7, 2) = 1 == 16384 00000000000000100000000000000000
vec($_, 8, 2) = 1 == 65536 00000000000000001000000000000000
vec($_, 9, 2) = 1 == 262144 00000000000000000010000000000000
vec($_,10, 2) = 1 == 1048576 00000000000000000000100000000000
vec($_,11, 2) = 1 == 4194304 00000000000000000000001000000000
vec($_,12, 2) = 1 == 16777216 00000000000000000000000010000000
vec($_,13, 2) = 1 == 67108864 00000000000000000000000000100000
vec($_,14, 2) = 1 == 268435456 00000000000000000000000000001000
vec($_,15, 2) = 1 == 1073741824 00000000000000000000000000000010
vec($_, 0, 2) = 2 == 2 01000000000000000000000000000000
vec($_, 1, 2) = 2 == 8 00010000000000000000000000000000
vec($_, 2, 2) = 2 == 32 00000100000000000000000000000000
vec($_, 3, 2) = 2 == 128 00000001000000000000000000000000
vec($_, 4, 2) = 2 == 512 00000000010000000000000000000000
vec($_, 5, 2) = 2 == 2048 00000000000100000000000000000000
vec($_, 6, 2) = 2 == 8192 00000000000001000000000000000000
vec($_, 7, 2) = 2 == 32768 00000000000000010000000000000000
vec($_, 8, 2) = 2 == 131072 00000000000000000100000000000000
vec($_, 9, 2) = 2 == 524288 00000000000000000001000000000000
vec($_,10, 2) = 2 == 2097152 00000000000000000000010000000000
vec($_,11, 2) = 2 == 8388608 00000000000000000000000100000000
vec($_,12, 2) = 2 == 33554432 00000000000000000000000001000000
vec($_,13, 2) = 2 == 134217728 00000000000000000000000000010000
vec($_,14, 2) = 2 == 536870912 00000000000000000000000000000100
vec($_,15, 2) = 2 == 2147483648 00000000000000000000000000000001
vec($_, 0, 4) = 1 == 1 10000000000000000000000000000000
vec($_, 1, 4) = 1 == 16 00001000000000000000000000000000
vec($_, 2, 4) = 1 == 256 00000000100000000000000000000000
vec($_, 3, 4) = 1 == 4096 00000000000010000000000000000000
vec($_, 4, 4) = 1 == 65536 00000000000000001000000000000000
vec($_, 5, 4) = 1 == 1048576 00000000000000000000100000000000
vec($_, 6, 4) = 1 == 16777216 00000000000000000000000010000000
vec($_, 7, 4) = 1 == 268435456 00000000000000000000000000001000
vec($_, 0, 4) = 2 == 2 01000000000000000000000000000000
vec($_, 1, 4) = 2 == 32 00000100000000000000000000000000
vec($_, 2, 4) = 2 == 512 00000000010000000000000000000000
vec($_, 3, 4) = 2 == 8192 00000000000001000000000000000000
vec($_, 4, 4) = 2 == 131072 00000000000000000100000000000000
vec($_, 5, 4) = 2 == 2097152 00000000000000000000010000000000
vec($_, 6, 4) = 2 == 33554432 00000000000000000000000001000000
vec($_, 7, 4) = 2 == 536870912 00000000000000000000000000000100
vec($_, 0, 4) = 4 == 4 00100000000000000000000000000000
vec($_, 1, 4) = 4 == 64 00000010000000000000000000000000
vec($_, 2, 4) = 4 == 1024 00000000001000000000000000000000
vec($_, 3, 4) = 4 == 16384 00000000000000100000000000000000
vec($_, 4, 4) = 4 == 262144 00000000000000000010000000000000
vec($_, 5, 4) = 4 == 4194304 00000000000000000000001000000000
vec($_, 6, 4) = 4 == 67108864 00000000000000000000000000100000
vec($_, 7, 4) = 4 == 1073741824 00000000000000000000000000000010
vec($_, 0, 4) = 8 == 8 00010000000000000000000000000000
vec($_, 1, 4) = 8 == 128 00000001000000000000000000000000
vec($_, 2, 4) = 8 == 2048 00000000000100000000000000000000
vec($_, 3, 4) = 8 == 32768 00000000000000010000000000000000
vec($_, 4, 4) = 8 == 524288 00000000000000000001000000000000
vec($_, 5, 4) = 8 == 8388608 00000000000000000000000100000000
vec($_, 6, 4) = 8 == 134217728 00000000000000000000000000010000
vec($_, 7, 4) = 8 == 2147483648 00000000000000000000000000000001
vec($_, 0, 8) = 1 == 1 10000000000000000000000000000000
vec($_, 1, 8) = 1 == 256 00000000100000000000000000000000
vec($_, 2, 8) = 1 == 65536 00000000000000001000000000000000
vec($_, 3, 8) = 1 == 16777216 00000000000000000000000010000000
vec($_, 0, 8) = 2 == 2 01000000000000000000000000000000
vec($_, 1, 8) = 2 == 512 00000000010000000000000000000000
vec($_, 2, 8) = 2 == 131072 00000000000000000100000000000000
vec($_, 3, 8) = 2 == 33554432 00000000000000000000000001000000
vec($_, 0, 8) = 4 == 4 00100000000000000000000000000000
vec($_, 1, 8) = 4 == 1024 00000000001000000000000000000000
vec($_, 2, 8) = 4 == 262144 00000000000000000010000000000000
vec($_, 3, 8) = 4 == 67108864 00000000000000000000000000100000
vec($_, 0, 8) = 8 == 8 00010000000000000000000000000000
vec($_, 1, 8) = 8 == 2048 00000000000100000000000000000000
vec($_, 2, 8) = 8 == 524288 00000000000000000001000000000000
vec($_, 3, 8) = 8 == 134217728 00000000000000000000000000010000
vec($_, 0, 8) = 16 == 16 00001000000000000000000000000000
vec($_, 1, 8) = 16 == 4096 00000000000010000000000000000000
vec($_, 2, 8) = 16 == 1048576 00000000000000000000100000000000
vec($_, 3, 8) = 16 == 268435456 00000000000000000000000000001000
vec($_, 0, 8) = 32 == 32 00000100000000000000000000000000
vec($_, 1, 8) = 32 == 8192 00000000000001000000000000000000
vec($_, 2, 8) = 32 == 2097152 00000000000000000000010000000000
vec($_, 3, 8) = 32 == 536870912 00000000000000000000000000000100
vec($_, 0, 8) = 64 == 64 00000010000000000000000000000000
vec($_, 1, 8) = 64 == 16384 00000000000000100000000000000000
vec($_, 2, 8) = 64 == 4194304 00000000000000000000001000000000
vec($_, 3, 8) = 64 == 1073741824 00000000000000000000000000000010
vec($_, 0, 8) = 128 == 128 00000001000000000000000000000000
vec($_, 1, 8) = 128 == 32768 00000000000000010000000000000000
vec($_, 2, 8) = 128 == 8388608 00000000000000000000000100000000
vec($_, 3, 8) = 128 == 2147483648 00000000000000000000000000000001
āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨
āĻŽāĻ¤ āĻāĻāĻ°āĻŖ āĻāĻ°ā§ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨(2) āĻāĻĒāĻ¨āĻžāĻ° āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§: āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻļā§āĻˇ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§ āĻāĻŦāĻ
āĻŽā§āĻ¤ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻĒāĻŋāĻĄ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ, āĻ āĻĨāĻŦāĻž "-1" āĻ¯āĻĻāĻŋ āĻā§āĻ¨ā§ āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¨āĻž āĻĨāĻžāĻā§āĨ¤ āĻĻā§āĻ¯
āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸ $ āĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ? āĻāĻŦāĻ "${^CHILD_ERROR_NATIVE}"āĨ¤ āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻāĻāĻŋ āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨
"-1" āĻāĻ° āĻ āĻ°ā§āĻĨ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§ āĻ¯ā§ āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻāĻžāĻāĻž āĻšāĻā§āĻā§, āĻ¯ā§āĻŽāĻ¨ āĻŦāĻ°ā§āĻŖāĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ā§ˇ
perlipc
āĻāĻĒāĻ¨āĻŋ āĻ¯āĻĻāĻŋ āĻāĻĒāĻ¨āĻžāĻ° āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°ā§ $SIG{CHLD} āĻāĻ° āĻāĻ¨ā§āĻ¯ "āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨, āĻ¤āĻžāĻšāĻ˛ā§ āĻāĻāĻŋ āĻā§āĻ˛āĻŦāĻļāĻ¤ āĻāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĻā§āĻŦāĻžāĻ°āĻž āĻ¨āĻŋāĻ°ā§āĻŽāĻŋāĻ¤ āĻļāĻŋāĻļā§ qx() or āĻĒāĻĻā§āĻ§āĻ¤āĻŋ(). āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻžāĻ° āĻāĻ¨ā§āĻ¯ perlipc āĻĻā§āĻā§āĻ¨āĨ¤
āĻŦāĻšāĻ¨āĻ¯ā§āĻā§āĻ¯āĻ¤āĻž āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨"āĨ¤
āĻāĻ¯āĻŧā§āĻāĻĒāĻŋāĻĄ āĻĒāĻŋāĻāĻāĻĄāĻŋ, āĻĒāĻ¤āĻžāĻāĻž
āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻļā§āĻˇ āĻšāĻāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§ āĻāĻŦāĻ āĻŽā§āĻ¤ āĻŦā§āĻ¯āĻā§āĻ¤āĻŋāĻ° āĻĒāĻŋāĻĄ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻĒā§āĻ°āĻ¸ā§āĻ¸, āĻ āĻĨāĻŦāĻž "-1" āĻ¯āĻĻāĻŋ āĻāĻ°āĻāĻŽ āĻā§āĻ¨ āĻļāĻŋāĻļā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻž āĻ¨āĻž āĻĨāĻžāĻā§āĨ¤ āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, 0 āĻāĻ° āĻŽāĻžāĻ¨
āĻāĻā§āĻāĻŋāĻ¤ āĻāĻ°ā§ āĻ¯ā§ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻā§āĻ˛āĻŋ āĻāĻāĻ¨āĻ āĻāĻ˛āĻā§āĨ¤ āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸ $ āĻ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻāĻ¯āĻŧāĻž āĻšāĻ¯āĻŧ? āĻāĻŦāĻ
"${^CHILD_ERROR_NATIVE}"āĨ¤ āĻ¯āĻĻāĻŋ āĻ¤ā§āĻŽāĻŋ āĻŦāĻ˛
POSIX ":sys_wait_h" āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨;
# ...
āĻāĻ° {
$kid = waitpid(-1, WNOHANG);
} āĻ¯āĻāĻ¨ $kid > 0;
āĻ¤āĻžāĻ°āĻĒāĻ° āĻāĻĒāĻ¨āĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻŽā§āĻ˛āĻ¤ā§āĻŦāĻŋ āĻāĻŽā§āĻŦāĻŋ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻāĻāĻāĻŋ āĻ -āĻŦā§āĻ˛āĻāĻŋāĻ āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ¨āĨ¤ āĻ¨āĻ¨-āĻŦā§āĻ˛āĻāĻŋāĻ
āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¸āĻŽāĻ°ā§āĻĨāĻ¨āĻāĻžāĻ°ā§ āĻŽā§āĻļāĻŋāĻ¨ā§ āĻāĻĒāĻ˛āĻŦā§āĻ§ āĻ āĻĒā§āĻā§āĻˇāĻžāĻĒāĻŋāĻĄ(āĻāĻā§āĻ¸āĻāĻ¨āĻāĻŽāĻāĻā§āĻ¸) āĻŦāĻž āĻ āĻĒā§āĻā§āĻˇāĻž āĻāĻ°ā§āĻ¨4(2) syscalls.
āĻ¯āĻžāĻāĻšā§āĻ, 0 āĻāĻ° FLAGS āĻ¸āĻš āĻāĻāĻāĻŋ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĒāĻŋāĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻ āĻĒā§āĻā§āĻˇāĻž āĻ¸āĻ°ā§āĻŦāĻ¤ā§āĻ° āĻĒā§āĻ°āĻ¯āĻŧā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
(āĻĒāĻžāĻ°ā§āĻ˛ āĻĒā§āĻ°āĻ¸ā§āĻ¸āĻā§āĻ˛āĻŋāĻ° āĻ¸ā§āĻā§āĻ¯āĻžāĻāĻžāĻ¸ āĻŽāĻžāĻ¨āĻā§āĻ˛āĻŋ āĻŽāĻ¨ā§ āĻ°ā§āĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽ āĻāĻ˛āĻāĻŋ āĻ āĻ¨ā§āĻāĻ°āĻŖ āĻāĻ°ā§
āĻĒā§āĻ°āĻ¸ā§āĻĨāĻžāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§ āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĻ˛ āĻ¸ā§āĻā§āĻ°āĻŋāĻĒā§āĻ āĻĻā§āĻŦāĻžāĻ°āĻž āĻāĻāĻ¨āĻ āĻĢāĻ¸āĻ˛ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĻ¨āĻŋāĨ¤)
āĻŽāĻ¨ā§ āĻ°āĻžāĻāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻŋāĻā§ āĻ¸āĻŋāĻ¸ā§āĻā§āĻŽā§, "-1" āĻāĻ° āĻ°āĻŋāĻāĻžāĻ°ā§āĻ¨ āĻŽāĻžāĻ¨ āĻŦāĻ˛āĻ¤ā§ āĻāĻžāĻāĻ˛ā§āĻĄ āĻĒā§āĻ°āĻ¸ā§āĻ¸ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻāĻžāĻāĻž āĻšāĻā§āĻā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻŦāĻ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ perlipc āĻĻā§āĻā§āĻ¨āĨ¤
āĻĒā§āĻ°ā§āĻā§āĻŦāĻŋāĻ˛āĻŋāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž: āĻĒāĻžāĻ°ā§āĻ˛āĻĒā§āĻ°ā§āĻā§ "āĻāĻ¯āĻŧā§āĻāĻĒāĻŋāĻĄ"āĨ¤
āĻāĻžāĻ
āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ā§ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻāĻ°āĻž āĻ¸āĻžāĻŦāĻ°ā§āĻāĻŋāĻ¨ āĻŦāĻž "āĻāĻāĻžāĻ˛" āĻāĻ° āĻĒā§āĻ°ā§āĻā§āĻˇāĻžāĻĒāĻ āĻā§āĻāĻāĻ˛ā§ āĻ¸āĻ¤ā§āĻ¯ āĻĻā§āĻāĻžāĻ¯āĻŧ
āĻāĻāĻāĻŋ āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻŽāĻžāĻ¨ āĻāĻ¨ā§āĻ¯. āĻĒā§āĻ°āĻ¸āĻā§āĻāĻāĻŋ āĻāĻāĻāĻŋ āĻ¸ā§āĻā§āĻ˛āĻžāĻ° āĻā§āĻāĻāĻ˛ā§ āĻŽāĻŋāĻĨā§āĻ¯āĻž āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧāĨ¤ āĻĢā§āĻ°āĻ¤ āĻĻā§āĻ¯āĻŧ
āĻ āĻ¨āĻŋāĻ°ā§āĻ§āĻžāĻ°āĻŋāĻ¤ āĻŽāĻžāĻ¨ āĻ¯āĻĻāĻŋ āĻĒā§āĻ°āĻ¸āĻā§āĻāĻāĻŋ āĻā§āĻ¨ āĻŽāĻžāĻ¨ āĻā§āĻāĻāĻā§ āĻ¨āĻž (āĻ āĻāĻžāĻ°ā§āĻ¯āĻāĻ° āĻĒā§āĻ°āĻ¸āĻā§āĻ)āĨ¤
āĻĒā§āĻ°āĻ¤ā§āĻ¯āĻžāĻŦāĻ°ā§āĻ¤āĻ¨ āĻ¯āĻĻāĻŋ āĻ¨āĻž āĻ¸āĻāĻā§āĻāĻžāĻ¯āĻŧāĻŋāĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧ; # āĻŦā§āĻļāĻŋ āĻāĻŋāĻā§ āĻāĻ°āĻ¤ā§ āĻŦāĻŋāĻ°āĻā§āĻ¤ āĻāĻ°āĻŦā§āĻ¨ āĻ¨āĻž
my @a = complex_calculation();
āĻĢā§āĻ°āĻ¤ āĻāĻžāĻ¨ āĻ ā§āĻ¯āĻžāĻ°ā§? @a : "@a";
"wantarray()"-āĻāĻ° āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻļā§āĻ°ā§āĻˇ āĻ¸ā§āĻ¤āĻ°ā§, āĻāĻāĻāĻŋ "BEGIN" āĻ āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻāĨ¤
"āĻāĻāĻ¨āĻŋāĻāĻā§āĻ", "āĻā§āĻ", "āĻāĻ¨āĻāĻāĻāĻŋ" āĻŦāĻž "āĻāĻ¨ā§āĻĄ" āĻŦā§āĻ˛āĻ, āĻ āĻĨāĻŦāĻž "āĻĄāĻŋāĻ¸ā§āĻā§āĻ°āĻ¯āĻŧ" āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ¤ā§āĨ¤
āĻāĻ āĻĢāĻžāĻāĻļāĻ¨ āĻ¨āĻžāĻŽ āĻĻā§āĻāĻ¯āĻŧāĻž āĻāĻāĻŋāĻ¤ āĻāĻŋāĻ˛ āĻāĻžāĻ āĻ¤āĻžāĻ˛āĻŋāĻāĻž() āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤ā§.
āĻ¤āĻžāĻ˛āĻŋāĻāĻž āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨
STDERR āĻ LIST āĻāĻ° āĻŽāĻžāĻ¨ āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ LIST āĻāĻ° āĻļā§āĻˇ āĻāĻĒāĻžāĻĻāĻžāĻ¨āĻāĻŋ a āĻ āĻļā§āĻˇ āĻ¨āĻž āĻšāĻ¯āĻŧ
newline, āĻāĻāĻŋ "die" āĻāĻ° āĻŽāĻ¤ā§ āĻāĻāĻ āĻĢāĻžāĻāĻ˛/āĻ˛āĻžāĻāĻ¨ āĻ¨āĻŽā§āĻŦāĻ° āĻĒāĻžāĻ ā§āĻ¯ āĻ¯ā§āĻā§āĻ¤ āĻāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ āĻāĻāĻāĻĒā§āĻ āĻāĻžāĻ˛āĻŋ āĻĨāĻžāĻā§ āĻāĻŦāĻ $@ āĻāĻ¤āĻŋāĻŽāĻ§ā§āĻ¯ā§ āĻāĻāĻāĻŋ āĻŽāĻžāĻ¨ āĻ§āĻžāĻ°āĻŖ āĻāĻ°ā§ (āĻ¸āĻžāĻ§āĻžāĻ°āĻŖāĻ¤ āĻĒā§āĻ°ā§āĻŦāĻŦāĻ°ā§āĻ¤ā§ āĻĨā§āĻā§
eval) $@-āĻ "\t...caught" āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻžāĻ° āĻĒāĻ°ā§ āĻ¸ā§āĻ āĻŽāĻžāĻ¨āĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤ āĻāĻ āĻāĻ¨ā§āĻ¯ āĻĻāĻ°āĻāĻžāĻ°ā§
āĻĒā§āĻ°āĻžāĻ¯āĻŧ āĻĨāĻžāĻāĻž, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻ¸āĻŽā§āĻĒā§āĻ°ā§āĻŖāĻ°ā§āĻĒā§ "āĻŽā§āĻ¤ā§āĻ¯ā§" āĻ āĻ¨ā§āĻ°ā§āĻĒ āĻ¨āĻ¯āĻŧāĨ¤
āĻ¯āĻĻāĻŋ $@ āĻāĻžāĻ˛āĻŋ āĻšāĻ¯āĻŧ āĻ¤āĻŦā§ "āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž: āĻāĻŋāĻā§ āĻā§āĻ˛" āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
$SIG{__WARN__} āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ° āĻāĻ¨āĻ¸ā§āĻāĻ˛ āĻĨāĻžāĻāĻ˛ā§ āĻā§āĻ¨ā§ āĻŦāĻžāĻ°ā§āĻ¤āĻž āĻĒā§āĻ°āĻŋāĻ¨ā§āĻ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻ¨āĻžāĨ¤ āĻāĻāĻž
āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°ā§āĻ° āĻĻāĻžāĻ¯āĻŧāĻŋāĻ¤ā§āĻŦ āĻ¯ā§ āĻŦāĻžāĻ°ā§āĻ¤āĻžāĻāĻŋ āĻāĻĒāĻ¯ā§āĻā§āĻ¤ āĻŽāĻ¨ā§ āĻāĻ°ā§ āĻ¤āĻžāĻ° āĻ¸āĻžāĻĨā§ āĻŽā§āĻāĻžāĻŦāĻŋāĻ˛āĻž āĻāĻ°āĻž (āĻ¯ā§āĻŽāĻ¨, āĻāĻĻāĻžāĻšāĻ°āĻŖāĻ¸ā§āĻŦāĻ°ā§āĻĒ,
āĻāĻāĻŋāĻā§ "āĻĄāĻžāĻ" āĻ āĻ°ā§āĻĒāĻžāĻ¨ā§āĻ¤āĻ° āĻāĻ°āĻž āĻšāĻā§āĻā§)āĨ¤ āĻ¤āĻžāĻ āĻŦā§āĻļāĻŋāĻ°āĻāĻžāĻ āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°āĻĻā§āĻ° āĻ āĻŦāĻļā§āĻ¯āĻ āĻĒā§āĻ°āĻĻāĻ°ā§āĻļāĻ¨ā§āĻ° āĻŦā§āĻ¯āĻŦāĻ¸ā§āĻĨāĻž āĻāĻ°āĻ¤ā§ āĻšāĻŦā§
āĻ¯ā§ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĻā§āĻ˛āĻŋ āĻ¤āĻžāĻ°āĻž āĻŽā§āĻāĻžāĻŦā§āĻ˛āĻž āĻāĻ°āĻ¤ā§ āĻĒā§āĻ°āĻ¸ā§āĻ¤ā§āĻ¤ āĻ¨āĻ¯āĻŧ, āĻāĻŦāĻžāĻ° "āĻ¸āĻ¤āĻ°ā§āĻ" āĻāĻ˛ āĻāĻ°ā§
āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ° āĻ¨ā§āĻ āĻāĻ°ā§āĻ¨ āĻ¯ā§ āĻāĻāĻŋ āĻŦā§āĻļ āĻ¨āĻŋāĻ°āĻžāĻĒāĻĻ āĻāĻŦāĻ āĻāĻāĻāĻŋ āĻ āĻ¨ā§āĻ¤āĻšā§āĻ¨ āĻ˛ā§āĻĒ āĻ¤ā§āĻ°āĻŋ āĻāĻ°āĻŦā§ āĻ¨āĻž, āĻ¯ā§āĻšā§āĻ¤ā§
"__WARN__" āĻšā§āĻ āĻāĻāĻāĻŋ āĻāĻŋāĻ¤āĻ° āĻĨā§āĻā§ āĻŦāĻ˛āĻž āĻšāĻ¯āĻŧ āĻ¨āĻž.
āĻāĻĒāĻ¨āĻŋ āĻĻā§āĻāĻ¤ā§ āĻĒāĻžāĻŦā§āĻ¨ āĻ¯ā§ āĻāĻ āĻāĻāĻ°āĻŖāĻāĻŋ $SIG{__DIE__} āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ°āĻĻā§āĻ° āĻĨā§āĻā§ āĻāĻŋāĻā§āĻāĻž āĻāĻ˛āĻžāĻĻāĻž
(āĻ¯āĻž āĻ¤ā§āĻ°ā§āĻāĻŋ āĻĒāĻžāĻ ā§āĻ¯āĻā§ āĻĻāĻŽāĻ¨ āĻāĻ°ā§ āĻ¨āĻž, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨ āĻāĻ°āĻ¤ā§ āĻāĻŦāĻžāĻ° "āĻĄāĻžāĻ" āĻāĻ˛ āĻāĻ°āĻ¤ā§ āĻĒāĻžāĻ°ā§)āĨ¤
āĻāĻāĻāĻŋ "__WARN__" āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛āĻžāĻ° āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻ¸āĻŽāĻ¸ā§āĻ¤ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĻā§ āĻ¨ā§āĻ°āĻŦ āĻāĻ°āĻžāĻ° āĻāĻāĻāĻŋ āĻļāĻā§āĻ¤āĻŋāĻļāĻžāĻ˛ā§ āĻāĻĒāĻžāĻ¯āĻŧ āĻĒā§āĻ°āĻĻāĻžāĻ¨ āĻāĻ°ā§ (āĻāĻŽāĻ¨āĻāĻŋ
āĻ¤āĻĨāĻžāĻāĻĨāĻŋāĻ¤ āĻŦāĻžāĻ§ā§āĻ¯āĻ¤āĻžāĻŽā§āĻ˛āĻ)āĨ¤ āĻāĻāĻāĻŋ āĻāĻĻāĻžāĻšāĻ°āĻŖ:
# āĻŽā§āĻā§ āĻĢā§āĻ˛ā§āĻ¨ *āĻ¸āĻŽāĻ¸ā§āĻ¤* āĻāĻŽā§āĻĒāĻžāĻāĻ˛-āĻāĻžāĻāĻŽ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž
BEGIN { $SIG{'__WARN__'} = āĻ¸āĻžāĻŦ { āĻ¸āĻ¤āĻ°ā§āĻ $__[0] āĻ¯āĻĻāĻŋ $DOWARN } }
āĻāĻŽāĻžāĻ° $foo = 10;
āĻāĻŽāĻžāĻ° $foo = 20; # āĻāĻŽāĻžāĻ° $foo āĻ¨āĻāĻ˛ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻā§āĻ¨ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¨ā§āĻ,
# āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻāĻ°ā§, āĻāĻĒāĻ¨āĻŋ āĻāĻāĻž āĻā§āĻ¯āĻŧā§āĻā§āĻ¨!
# āĻāĻāĻžāĻ¨ā§ āĻāĻā§ āĻā§āĻ¨ā§ āĻāĻŽā§āĻĒāĻžāĻāĻ˛-āĻāĻžāĻāĻŽ āĻŦāĻž āĻ°āĻžāĻ¨-āĻāĻžāĻāĻŽ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻ¨ā§āĻ
$DOWARN = 1;
āĻāĻāĻžāĻ¨ āĻĨā§āĻā§ # āĻ°āĻžāĻ¨-āĻāĻžāĻāĻŽ āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻž āĻāĻžāĻ˛ā§ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°ā§āĻ¨ "\$foo āĻā§āĻŦāĻŋāĻ¤ āĻāĻŦāĻ $foo!"; # āĻĻā§āĻāĻž āĻ¯āĻžāĻā§āĻā§
%SIG āĻāĻ¨ā§āĻā§āĻ°āĻŋ āĻ¸ā§āĻ āĻāĻ°āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻŦāĻŋāĻ¸ā§āĻ¤āĻžāĻ°āĻŋāĻ¤ āĻāĻžāĻ¨āĻ¤ā§ āĻāĻŦāĻ āĻāĻ°āĻ āĻāĻĻāĻžāĻšāĻ°āĻŖā§āĻ° āĻāĻ¨ā§āĻ¯ perlvar āĻĻā§āĻā§āĻ¨āĨ¤ āĻāĻžāĻ°ā§āĻĒ āĻĻā§āĻā§āĻ¨
āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ āĻ¨ā§āĻ¯āĻžāĻ¨ā§āĻ¯ āĻ§āĻ°āĻŖā§āĻ° āĻ¸āĻ¤āĻ°ā§āĻāĻ¤āĻžāĻ° āĻāĻ¨ā§āĻ¯ āĻŽāĻĄāĻŋāĻāĻ˛ āĻāĻžāĻ°ā§āĻĒ() āĻāĻŦāĻ āĻā§āĻ˛āĻ() āĻĢāĻžāĻāĻļāĻ¨āĨ¤
FILEHANDLE āĻ˛āĻŋāĻā§āĻ¨
EXPR āĻ˛āĻŋāĻā§āĻ¨
āĻ˛ā§āĻāĻž
āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄāĻ˛ā§ āĻāĻāĻāĻŋ āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻāĻ°āĻž āĻ°ā§āĻāĻ°ā§āĻĄ (āĻ¸āĻŽā§āĻāĻŦāĻ¤ āĻŽāĻžāĻ˛ā§āĻāĻŋ-āĻ˛āĻžāĻāĻ¨) āĻ˛ā§āĻā§, āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§
āĻ¸ā§āĻ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¯ā§āĻā§āĻ¤ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻāĨ¤ āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§ āĻāĻāĻāĻŋ āĻĢāĻžāĻāĻ˛ā§āĻ° āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸āĻāĻŋāĻ āĻĨāĻžāĻā§
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻāĻāĻ āĻ¨āĻžāĻŽ, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻāĻāĻāĻĒā§āĻ āĻā§āĻ¯āĻžāĻ¨ā§āĻ˛ā§āĻ° āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ (āĻĻā§āĻā§āĻ¨
"āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨" āĻĢāĻžāĻāĻļāĻ¨) āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻā§āĻ° āĻ¨āĻžāĻŽ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§ āĻ¸ā§āĻĒāĻˇā§āĻāĻāĻžāĻŦā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§
$~ āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛āĨ¤
āĻĢāĻ°ā§āĻŽ āĻĒā§āĻ°āĻā§āĻ°āĻŋāĻ¯āĻŧāĻžāĻāĻ°āĻŖā§āĻ° āĻļā§āĻ°ā§āĻˇ āĻ¸ā§āĻŦāĻ¯āĻŧāĻāĻā§āĻ°āĻŋāĻ¯āĻŧāĻāĻžāĻŦā§ āĻĒāĻ°āĻŋāĻāĻžāĻ˛āĻ¨āĻž āĻāĻ°āĻž āĻšāĻ¯āĻŧ: āĻ¯āĻĻāĻŋ āĻ āĻĒāĻ°ā§āĻ¯āĻžāĻĒā§āĻ¤ āĻ°ā§āĻŽ āĻĨāĻžāĻā§
āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻ°ā§āĻāĻ°ā§āĻĄā§āĻ° āĻāĻ¨ā§āĻ¯ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻˇā§āĻ āĻž, āĻāĻāĻāĻŋ āĻĢāĻ°ā§āĻŽ āĻĢāĻŋāĻĄ āĻ˛āĻŋāĻā§ āĻĒā§āĻˇā§āĻ āĻžāĻāĻŋ āĻ āĻā§āĻ°āĻ¸āĻ° āĻšāĻ¯āĻŧ
āĻ°ā§āĻāĻ°ā§āĻĄā§āĻ° āĻāĻā§ āĻ¨āĻ¤ā§āĻ¨ āĻĒā§āĻˇā§āĻ āĻžāĻ° āĻļāĻŋāĻ°ā§āĻ¨āĻžāĻŽ āĻĢāĻ°ā§āĻŽā§āĻ¯āĻžāĻ āĻāĻ°āĻ¤ā§ āĻāĻāĻāĻŋ āĻŦāĻŋāĻļā§āĻˇ āĻāĻĒ-āĻ āĻĢ-āĻĒā§āĻˇā§āĻ āĻž āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ˛āĻŋāĻāĻŋāĻ¤. āĻĄāĻŋāĻĢāĻ˛ā§āĻāĻ°ā§āĻĒā§, āĻļā§āĻ°ā§āĻˇ-āĻ āĻŦ-āĻĒā§āĻˇā§āĻ āĻž āĻŦāĻŋāĻ¨ā§āĻ¯āĻžāĻ¸ āĻšāĻ˛ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¨āĻžāĻŽ
"_TOP" āĻ¯ā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§, āĻ āĻĨāĻŦāĻž āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻ¯āĻžāĻā§āĻā§ "āĻļā§āĻ°ā§āĻˇ" āĻ¯āĻĻāĻŋ āĻāĻā§āĻ°āĻāĻŋ āĻŦāĻŋāĻĻā§āĻ¯āĻŽāĻžāĻ¨ āĻ¨āĻž āĻĨāĻžāĻā§āĨ¤ āĻāĻ
āĻ āĻā§āĻāĻžāĻāĻāĻŋāĻĢāĻžāĻāĻĄ āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛āĻā§āĻ˛āĻŋāĻ° āĻ¸āĻžāĻĨā§ āĻāĻāĻāĻŋ āĻ¸āĻŽāĻ¸ā§āĻ¯āĻž āĻšāĻŦā§, āĻ¤āĻŦā§ āĻāĻāĻŋ āĻāĻ¤āĻŋāĻļā§āĻ˛āĻāĻžāĻŦā§ āĻ¸ā§āĻ āĻāĻ°āĻž āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§
āĻĢāĻžāĻāĻ˛āĻšā§āĻ¯āĻžāĻ¨ā§āĻĄā§āĻ˛ā§āĻ° āĻ¸āĻŽāĻ¯āĻŧ $^ āĻā§āĻ°āĻŋāĻ¯āĻŧā§āĻŦāĻ˛ā§ āĻ¨āĻžāĻŽ āĻŦāĻ°āĻžāĻĻā§āĻĻ āĻāĻ°ā§ āĻāĻĒāĻ¨āĻžāĻ° āĻĒāĻāĻ¨ā§āĻĻā§āĻ° āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ
āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻŋāĻ¤. āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĒā§āĻˇā§āĻ āĻžāĻ¯āĻŧ āĻ āĻŦāĻļāĻŋāĻˇā§āĻ āĻ˛āĻžāĻāĻ¨ā§āĻ° āĻ¸āĻāĻā§āĻ¯āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻ¨āĻļā§āĻ˛ "$-",
āĻāĻāĻāĻŋ āĻ¨āĻ¤ā§āĻ¨ āĻĒā§āĻˇā§āĻ āĻž āĻā§āĻ° āĻāĻ°ā§ 0 āĻ¸ā§āĻ āĻāĻ°āĻž āĻ¯ā§āĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤
āĻ¯āĻĻāĻŋ FILEHANDLE āĻ āĻ¨āĻŋāĻ°ā§āĻĻāĻŋāĻˇā§āĻ āĻšāĻ¯āĻŧ, āĻāĻāĻāĻĒā§āĻ āĻŦāĻ°ā§āĻ¤āĻŽāĻžāĻ¨ āĻĄāĻŋāĻĢāĻ˛ā§āĻ āĻāĻāĻāĻĒā§āĻ āĻā§āĻ¯āĻžāĻ¨ā§āĻ˛ā§ āĻ¯āĻžāĻ¯āĻŧ, āĻ¯āĻž
STDOUT āĻšāĻŋāĻ¸āĻžāĻŦā§ āĻļā§āĻ°ā§ āĻšāĻ¯āĻŧ āĻāĻŋāĻ¨ā§āĻ¤ā§ "āĻ¨āĻŋāĻ°ā§āĻŦāĻžāĻāĻ¨" āĻ āĻĒāĻžāĻ°ā§āĻāĻ° āĻĻā§āĻŦāĻžāĻ°āĻž āĻĒāĻ°āĻŋāĻŦāĻ°ā§āĻ¤āĻŋāĻ¤ āĻšāĻ¤ā§ āĻĒāĻžāĻ°ā§āĨ¤ āĻ¯āĻĻāĻŋ FILEHANDLE
āĻāĻāĻāĻŋ EXPR, āĻ¤āĻžāĻ°āĻĒāĻ° āĻ āĻāĻŋāĻŦā§āĻ¯āĻā§āĻ¤āĻŋ āĻŽā§āĻ˛ā§āĻ¯āĻžāĻ¯āĻŧāĻ¨ āĻāĻ°āĻž āĻšāĻ¯āĻŧ āĻāĻŦāĻ āĻĢāĻ˛āĻžāĻĢāĻ˛ āĻ¸ā§āĻā§āĻ°āĻŋāĻ āĻĻā§āĻāĻ¤ā§ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°āĻž āĻšāĻ¯āĻŧ
āĻ°āĻžāĻ¨ āĻāĻžāĻāĻŽā§ FILEHANDLE āĻāĻ° āĻ¨āĻžāĻŽ āĻāĻĒāĻ°ā§āĨ¤ āĻĢāĻ°āĻŽā§āĻ¯āĻžāĻ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻā§ āĻāĻ°āĻ āĻāĻžāĻ¨āĻ¤ā§, āĻĒāĻžāĻ°āĻĢāĻ°ā§āĻŽ āĻĻā§āĻā§āĻ¨āĨ¤
āĻāĻ˛ā§āĻ˛ā§āĻā§āĻ¯ āĻ¯ā§ āĻ˛āĻŋāĻā§āĻ¨ āĻ¨āĻž "āĻĒāĻĄāĻŧā§āĻ¨" āĻāĻ° āĻŦāĻŋāĻĒāĻ°ā§āĻ¤āĨ¤ āĻĻā§āĻ°ā§āĻāĻžāĻā§āĻ¯āĻŦāĻļāĻ¤.
y///
āĻĒā§āĻ°āĻ¤āĻŋāĻŦāĻ°ā§āĻŖā§āĻāĻ°āĻŖ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĨ¤ "tr///" āĻāĻ° āĻŽāĻ¤ā§āĻāĨ¤ perlop āĻ "āĻā§āĻ-āĻ˛āĻžāĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°" āĻĻā§āĻā§āĻ¨āĨ¤
āĻ¨āĻ¨-āĻĢāĻžāĻāĻļāĻ¨ āĻŽā§āĻ˛āĻļāĻŦā§āĻĻ by āĻĒā§āĻ°āĻ¤āĻŋāĻ¨āĻŋāĻ°ā§āĻĻā§āĻļ
perldata
__āĻĄā§āĻāĻž__
__āĻļā§āĻˇ__
āĻāĻ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻā§āĻ˛āĻŋ āĻĒāĻžāĻ°ā§āĻ˛ā§āĻĄāĻāĻžāĻ¤ā§ "āĻ¸ā§āĻĒā§āĻļāĻžāĻ˛ āĻ˛āĻŋāĻāĻžāĻ°āĻžāĻ˛āĻ¸" āĻ āĻ¨āĻĨāĻŋāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛āĻŽā§āĻĄ
BEGIN
āĻā§āĻ
āĻļā§āĻˇ
INIT
āĻāĻāĻ¨āĻŋāĻā§āĻ
āĻāĻ āĻāĻŽā§āĻĒāĻžāĻāĻ˛ āĻĢā§āĻ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻā§āĻ˛āĻŋ "BEGIN, UNITCHEC, CHECK, INIT āĻāĻŦāĻ END" āĻ āĻ¨āĻĨāĻŋāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻĒāĻžāĻ°ā§āĻ˛āĻŽā§āĻĄā§āĨ¤
perlobj
āĻ§ā§āĻŦāĻāĻ¸
āĻāĻ āĻĒāĻĻā§āĻ§āĻ¤āĻŋāĻ° āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻāĻŋ perlobj-āĻāĻ° "Destructors"-āĻ āĻ¨āĻĨāĻŋāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
perlop
āĻāĻŦāĻ
CMP
eq
ge
gt
le
lt
ne
āĻ¨āĻž
or
x
xor āĻāĻ āĻ āĻĒāĻžāĻ°ā§āĻāĻ°āĻā§āĻ˛āĻŋ perlop āĻ āĻ¨āĻĨāĻŋāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧāĨ¤
perlsub
āĻ āĻā§āĻ˛ā§āĻĄ
āĻāĻ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻāĻŋ perlsub-āĻ "āĻ āĻā§āĻ˛ā§āĻĄāĻŋāĻ"-āĻ āĻ¨āĻĨāĻŋāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻŋāĻ¨
āĻāĻ°
elsif
āĻāĻ¨ā§āĻ¨āĻ¤
āĻĒā§āĻ°āĻ¤āĻŋāĻāĻŋāĻ° āĻāĻ¨ā§āĻ¯
if
āĻ¯āĻĻāĻŋ āĻ¨āĻž
āĻĒāĻ°ā§āĻ¯āĻ¨ā§āĻ¤
āĻ¯āĻāĻ¨
āĻāĻ āĻĢā§āĻ˛ā§-āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻā§āĻ˛āĻŋ āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻŋāĻ¨ā§āĻ° "āĻāĻŽā§āĻĒāĻžāĻāĻ¨ā§āĻĄ āĻ¸ā§āĻā§āĻāĻŽā§āĻ¨ā§āĻāĻ¸" āĻ āĻ¨āĻĨāĻŋāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§āĨ¤
āĻ āĻ¨ā§āĻ¯āĻāĻŋ
āĻĒāĻžāĻ°ā§āĻ˛ā§ "else if" āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻāĻŋāĻ° āĻŦāĻžāĻ¨āĻžāĻ¨ "elsif"āĨ¤ āĻā§āĻ¨ "āĻāĻ˛āĻŋāĻĢ" āĻŦāĻž "āĻ āĻ¨ā§āĻ¯ āĻ¯āĻĻāĻŋ" ââāĻ¨ā§āĻ
āĻšāĻ¯āĻŧ āĻāĻāĻŋ "elseif" āĻĒāĻžāĻ°ā§āĻ¸ āĻāĻ°ā§, āĻāĻŋāĻ¨ā§āĻ¤ā§ āĻļā§āĻ§ā§āĻŽāĻžāĻ¤ā§āĻ° āĻāĻāĻŋ āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻ¨āĻž āĻāĻ°āĻžāĻ° āĻŦāĻŋāĻˇāĻ¯āĻŧā§ āĻāĻĒāĻ¨āĻžāĻā§ āĻ¸āĻ¤āĻ°ā§āĻ āĻāĻ°āĻžāĻ° āĻāĻ¨ā§āĻ¯āĨ¤
āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻŋāĻ¨ā§ "āĻāĻŽā§āĻĒāĻžāĻāĻ¨ā§āĻĄ āĻ¸ā§āĻā§āĻāĻŽā§āĻ¨ā§āĻ"-āĻ āĻĢā§āĻ˛ā§-āĻāĻ¨ā§āĻā§āĻ°ā§āĻ˛ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄā§āĻ° āĻĄāĻā§āĻŽā§āĻ¨ā§āĻā§āĻļāĻ¨ āĻĻā§āĻā§āĻ¨āĨ¤
āĻĄāĻŋāĻĢāĻ˛ā§āĻ
āĻĒā§āĻ°āĻĻāĻ¤ā§āĻ¤
āĻāĻāĻ¨
āĻĒāĻ°ā§āĻā§āĻˇāĻžāĻŽā§āĻ˛āĻ āĻ¸ā§āĻāĻ āĻŦā§āĻļāĻŋāĻˇā§āĻā§āĻ¯ā§āĻ° āĻ¸āĻžāĻĨā§ āĻ¸āĻŽā§āĻĒāĻ°ā§āĻāĻŋāĻ¤ āĻāĻ āĻĒā§āĻ°āĻŦāĻžāĻš-āĻ¨āĻŋāĻ¯āĻŧāĻ¨ā§āĻ¤ā§āĻ°āĻŖ āĻā§āĻāĻ¯āĻŧāĻžāĻ°ā§āĻĄāĻā§āĻ˛āĻŋ āĻ¨āĻĨāĻŋāĻā§āĻā§āĻ¤ āĻāĻ°āĻž āĻšāĻ¯āĻŧā§āĻā§
āĻĒāĻžāĻ°ā§āĻ˛āĻ¸āĻŋāĻ¨ā§ "āĻ¸ā§āĻāĻ āĻ¸ā§āĻā§āĻāĻŽā§āĻ¨ā§āĻ"-āĻāĨ¤
onworks.net āĻĒāĻ°āĻŋāĻˇā§āĻŦāĻž āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§ āĻ āĻ¨āĻ˛āĻžāĻāĻ¨ā§ perlfunc āĻŦā§āĻ¯āĻŦāĻšāĻžāĻ° āĻāĻ°ā§āĻ¨