Klaas-Jan Stol
2008-08-05 17:47:28 UTC
# New Ticket Created by Klaas-Jan Stol
# Please include the string: [perl #57634]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=57634 >
hi,
in PIR you can use the .globalconst directive in a sub to define a constant
that is globally accessible.
Likewise, you can use the .const directive in a sub that is local to that
sub.
.sub foo
.globalconst int answer = 42
.const num PI = 3.14
.end
answer in this case is globally accessible (in any other sub, that is parsed
AFTER the foo subroutine, I should note)
PI in this case is only accessible in this subroutine foo.
However, I question the need for .globalconst, as the .const directive can
also be used /outside/ of a subroutine, like so:
.const int answer = 42
Therefore, the .globalconst directive seems to be superfluous; why have 2
directives that do the same thing; if a .globalconst is accessible globally
anyway, there's no need to define it WITHIN a sub.
Therefore, my proposal is to remove the .globalconst directive;
whenever you need to have a global const, use .const outside of a
subroutine.
whenever you need to have a local const (in a sub), use .const inside a
subroutine.
comments welcome,
kjs
# Please include the string: [perl #57634]
# in the subject line of all future correspondence about this issue.
# <URL: http://rt.perl.org/rt3/Ticket/Display.html?id=57634 >
hi,
in PIR you can use the .globalconst directive in a sub to define a constant
that is globally accessible.
Likewise, you can use the .const directive in a sub that is local to that
sub.
.sub foo
.globalconst int answer = 42
.const num PI = 3.14
.end
answer in this case is globally accessible (in any other sub, that is parsed
AFTER the foo subroutine, I should note)
PI in this case is only accessible in this subroutine foo.
However, I question the need for .globalconst, as the .const directive can
also be used /outside/ of a subroutine, like so:
.const int answer = 42
Therefore, the .globalconst directive seems to be superfluous; why have 2
directives that do the same thing; if a .globalconst is accessible globally
anyway, there's no need to define it WITHIN a sub.
Therefore, my proposal is to remove the .globalconst directive;
whenever you need to have a global const, use .const outside of a
subroutine.
whenever you need to have a local const (in a sub), use .const inside a
subroutine.
comments welcome,
kjs