[PDD] Add docs for the Parrot_PMC_push_* and Parrot_PMC_pop_* functions
[parrot.git] / examples / tutorial / 02_local_var.pir
blobd86fa31803caa073982519bfbb83f323c86ae95b
1 # Copyright (C) 2007-2009, Parrot Foundation.
2 # $Id$
4 =head1 Named Variables
6 The other kind of variables in PIR are named variables.
7 You declare these with the .local directive, with the type
8 of the variable, followed by the name. The types of named
9 variables are the same set as the types of register
10 variables, int for integer, num for numbers (floats), string
11 for strings, and pmc for PMCs (objects).
13 A simple rule of thumb is to use register variables for
14 variables that are used on 3 or fewer lines of code, and
15 named variables for any longer-lived variables.  This is
16 just a suggestion, but we think it really helps improve code
17 readability.
19 =cut
21 .sub main :main
23     .local int answer
24     answer = 42     # set local integer var to the integer value 42
25     print answer
26     print "\n"
28     .local num pi
29     pi = 3.14159    # set local float var to an approximation of pi
30     print pi
31     print "\n"
33     .local string greeting
34     greeting = "Hello"  # set temp string var to "Hello"
35     print greeting
36     print "\n"
38     .local pmc player
39     player = new ['String']
40     player = "Ford"     # set temp PMC var to "Ford"
41     print player
42     print "\n"
44 .end
46 # Local Variables:
47 #   mode: pir
48 #   fill-column: 100
49 # End:
50 # vim: expandtab shiftwidth=4 ft=pir: