On Regions and Linear Types
(Extended Abstract)
David Walker and Kevin Watkins
Carnegie Mellon University
School of Computer Science
!"#$
%
&'"&)(*+!%+&',-.-/0%1),2
&34%5,60.-%+798--
/:%+;<-=8),6>/,,?%+;@$#A-&'#B
-.-,6C#"
"D
7%--E-7-&'/F(0%=&3'
/,8
98)=(*2-
#,
%G,/+4%""
/".%-/,2
%/,HJI
K1;%+&'&L(*+J,2
.%+
/,2
%/M&N%=&'"
".%E1-%M#%+#2
2
&K#O4%+
/7PQ$RSUT9VWXRR
""'8Y/,
&6Z
#$[%57
#8;%+&'&'[%&\%5/,2-"&
7(*2-
#
&62--Y%&]&'2
&J%
^&3+Y.Y2-&''B9-_
-%+4%[&3'2
#2&Ha`9b4c[
&'2%+
,-.%5""+'8
&%5(*98E,)'&6,4%d2
)N-$4%+2-E
%5e98-)
&38&3"&A[
?#,'D%##&'&c<%+;?-%#%+,f(KB
/,
&H`=(*%#6;>D2
&'g>7-0-4%5,
&0(
%+
98)&6h
E-.#4\N2
Bi2
&'ej,%+.2-&Z%+(k8E#,
E%;
&'#%+4:%
,-"
#4:E2-.-Bi2
&'\j%2
&N%5"
#B
8:(l-#Bi#,2-m6Z%+;:&'
n;%5E1)+F.4%+
&
/jhE&'EA.&3.-/=Oj,%5.%&](*+D7%-.-2
.%+-/A/,
&H
K%&'7
D
$o,/4%+""
/\
%+4%,/,"&p;%5g%5.&'K18
"
/0_
&3'Bi#.%&'&/,
&e%;K#,OjhO;%
%5>-%+4%]&3'2-#B
2&H
ABSTRACT
q -INTRODUCTION
M+(
A#.%&'&'#c#4;%-/,&\[-/4%+"".-/r.%
/2;%+/,&
&'%+#4o&=d-&'./o"#4;%+
&'"&7;%+=
?-/4%+""&
%&',[%+1),2J
\1)
%j+N+(
D#O-"-\-&'
#"+(
")4%5jhr,)4%5,
&A&'2
#4s%+&72
%5Y%
@-%#%+,?+(
""'8H q j,
];%&3JtuD8%+&6K#4
.v2
&>(*+L&'j-/
I
&0&'%+#4rp%&L&'),-&'cr;%5']18A
DwL-j%
#=x0B
&'%+#4zy5{3#&w0/,-#8f|p}-I q 2-;-$c
z~3I-F
yCq 5{3#ewL-j%
#\!%+
/2;%/&>(l}8&3}(k%+,6 \w0x]yw
4D]H7|pu+
,
6G.&'&'2-18^e}
|p+Zg}^2
-D|>,'4%#KL-H
>t,,+B9,u5B|eB9,hu+E%+;E18 q ]xd/4%+OZO2
N1)tthtuO6Z~3C(lB
_
#Jm,/,#&g(lJx0%+&',
-/M%+1),2J]9+r}#2-8H ?I-
jO&%+;7#,-#2
&',-&0#,4%
A7
&-#2-"p%5L
&'
+(
%2
+&>%+;E&'-,2
.E-e1)pO$-E%&e-&'
/
+"#.%Z),#&6!
J$-&'&'YJ"q -.6m(>-N](*-&'
wL-j%-#Nx0&'%5#$7yC5{3#&>wL/
#86 ]xD6,+e-pNH }H/,5jB
$
"H!I
&7%+.%O&C1;%+&'N2-),D+K&'2-
)+'N2-;-$
%c]%+,
%}O#
#M-,2
%5.[L4%,2;%5Ax0&'%5#$[-.pB
&'-H
1.
Permission to make digital or hard copies of all or part of this work for
personal or classroom use is granted without fee provided that copies are
not made or distributed for profit or commercial advantage and that copies
bear this notice and the full citation on the first page. To copy otherwise, to
republish, to post on servers or to redistribute to lists, requires prior specific
permission and/or a fee.
ICFP’01, September 3-5, 2001, Florence, Italy.
Copyright 2001 ACM 1-58113-415-0/01/0009 ... 5.00.
&-1
%5j,])%5-87(*2
;M&'2
##&'&
4%+4
m%5&pC
8)%5Z&38-,&3/,#\"&t6+t!%-;#$7Nx0;%8jh
>,1).&EO&38-4jh%+#g#](l#O']B (C'(*$
#7 ++U6)%
(*I
4"%+8;)",6m2
#/%+.&'&'EY%+;Jt+%+;#$EC-&'_
#
-.N-1O>8E,jh2
jh,)+D61IG8J%]
(k B
%;MI!(k7tO6)6)5iH
g&'-
p;.jO.-2
%&'2
##&'&'&>+()
&'#$-
.v2
&6
;%+&1)A'.L&'%+#47;%+p%+'"&eK2
;&34%
\
L$B
.%+,-&'
&e1)>E->ge
[J2
-(k8N-z"%]&'
/
.%-/,2;%+/,,HL
#,6+.D
&G
%)6+ej,&3/h%+>
F
8g7%8
1)E(k2
'(*2-.8^2
&'^,/
$D.^
E-,7%++(p""'8c7%-B
%/"H
I
K&34%+'-/M).g(lJ2-g-jh.
"L&g%7&'."-K(l2
#$B
,
%E,/+4%""
/s.%+
/,2
%/[
%+^#O4%+
&^-,/+4%""'B
#O'.bQ'U U¡¢
RHw£/,d&N&'."-8F%F2-O1),2
-%+%
(m""+'8DE~3%,-&'&Z&';%+#J
$0j%2-&e&'2-#$\%&(*2
-#,
#,&'2&6G&3&DD
%&D7%8c1)"%#%+mH7I-\&',"
2),&'
(0
&'A/,
&"&K/+,2
[1{#&Ed&'.".%+E(l"&H
b-Y
A,1O{3#D%A/,&g-YA#"
N-K&3
(e
K#,"-2-4%5.6)-K/,@¤U%+;Y%(e
K,1O{3#$&J#,B
4%-[-)¥K7%8:1)c-%#%+HbC)"4%>&'2-&
;.#%+E
%+g-.&]1;%+#4-Bi&398-E-%+.#%5,:#%+1)Ejh'8rEB
#Z\-4%+##,6,j%
/J+e$-#--/g""'8D7%+;%+/,"
jO.%K7%+.#]%;\(k]+p/h%51;%/]#.#,=A7%8\&'2
%+,-&
6t55UH
wL&%+c-%"-,6#,-&'k
g(l2
#$.r¦X *Q§
¨ ¤i©ªG$¢-ªeQ¥$H
«,¬, Q
®¯$¢¤i¥Z°5±
«,¬,³² ¯©r´b©Nµ Q-®J°5±
Q-®´ ² µ Q
¦X *Qg
%&>L%+/,2-"&C%Dj,%+2
]©"
%+>1)]2
-.#%5
%
Y$2-
c.%7;%"¤¶#% ² ¥$6m%A_-&3'B9#k%+&'&](*2-
#:$¢
;%52--&-g/,:Q
®;2-&'M\-,.=
];%]%
M_;
%86
%K/,,^Qg;%5.m
.7-]2
7%+0&'2
J¤*-]
% ² %+;
J/,:Q-®;;%+Lp%&]%#%+^)¥$HI
D-&'&'.©s´
©7µ Q-®;%+.#%+&]%E;%+0+(e©m &LM-]/.:Q
® H
I
M(*2
-#,s¦0X lQY;%&"7%+8F(g-M(l%+2&";%+77%+h
,2=.%+
/,2
%/&3
/H·=,&3=.")+'4%86p/,
&6L.h
§'L7%+.86(*2-
#,M#,&'2&6;hJ-0&34%+/,D,1O{3#$&6)%+
%#%5s@/,
&61
2"c]/,-c-.&A4%0.@,2-
-(l7%m'O-2
#$.H
1.1 Regions
+ Kj%2
&6C%+E4-
%+'8=PZQ4R4SUT9VWXRRJ,/4%+""
/A,1O{3#&H
I-8c#%r1)J;%+&'&'r%&]%+/2
"&p\(*2-
#,-&6
2
=%&
&'2
&D%
^&3+:-%+4%7&3'2
#2&HN`^4-$g=,/4%+
s/,
&6>^N2
&3A%+.&'[1)Y%+1
rF%#%+^
$ &6
%+;rE-7
&J2
&'
/7
Eµ «h« "jhHgb
%"/,
&"-,-/,7-m6Z7#%d1)c %#%5<2-&'.-/^- ¬h¬
"jhH?]jhd
&'=9:"jh&"%
d
M-&'&'
¯ ]°5
± i6O-.#4A-5{3#&p-L>E#"),-&p©
«¬, ©[´<©!®
%+;©!®m(k,³
K;% N(lD2-&'NY
K-&'&',
6)>\#%
pJ
L(*,
/7#O-6
#4=2-&'&p
K¦X *QJ(*2-
#H
¯ ¨ ¤i¥ µ «h« ¤i¥Z°5±
«,¬, $¢
¯zµ «h« ¤i¥Z°5±
«,¬, Q
«,¬, Q
®)´ ² ¯¦X *QD¤3tOª.$¢-ª*Q3¥e°±
¬,¬ ¤3Q'¥ ¯ ^°±
«,¬, ©r´b©!® ¬,¬ ¤3Q
® ¥ © n©!®
q (#,2-&'6;-/4%+"".-/E=/.
&6)hD-(*+"&L+(
$--.#D""'8c7%+;%+/,"6&](k4%2
/J
%+
/HK`9(>%
,/+4%""%+##.-O4%+8E-%#%+&e%0/,,EL%+86+
#4;%+,&K
&'2-&N%&K
&N+K
N-/4% #4;%+&'&E-%-/,
/r),'B
$&H>-/,$'.-/NE-%+.#%5K%D/,c&%"&30%&p1;%A&'-#
J#%2
&'&D%A""+'8c%+HNI!+(l"%+;YIG%+.-< 5>&'jhr
&
,1-.z1O8Kjh
/]%L8)B9%
Bi#$G&38&3og#4
#$g-
&%5(*98@+(J-/4%+"&\;%+72-&'=/.
&H?L-(*+'2
%+86>-
98)c&38&3 &A1
%&'<,<-r
+.<
%+7/,
&AE2
&3\1)
2-&'%A_-&3'B%+.#%+
+.%&3'B9-%#%+6Z&34%#4OBihE(*%&'
%+;""+j,6h;%5>/,
&%+]'
&'#%+.87&'#,;OBi#.%&'&1-B
{#&H q $>,),&%+&(*&34%+#L/,-Bi1
%&'7""'8N7%B
%+/,"O^
t6Dtg%
@,."%5,
&A(KI(l^%+;sIG%+
&
+/,;%+G"O- -6)5
)A"%jO.%+D&',"J+(G
g$-&3B
&'jh
&'&g,1-."&61-2-0
&'N-),&%&D%5E(k^jh'8r#\B
-Hp·=+5jh6;-,-J(C
&'K$'&#,-&'.-0/,
&LE1)
_-&3'Bi#.%&'&-/4%""-/01{#&HZw0&C%0&'2-6-&'"
p¦X *Q
(l2
-#,=!-8)]#4
#$7c-j2
&&38&3"&H
m
%5>8)&38&3"&Z;%jh1)"2-&'"7%8N"&Z1)(lL
/2;%54%p&%+(l8KN->&'
#()$--.#""'8J7%+;%/B
"O,)4%5.
&(*+];j.2;%1{#&H>I
&'g98-)L&38&3"&
5j.N-(l7%5.%+1),2]
AWXRS OR0(>%A-%+4%7&3'2
#2,6
%+;Y#%+86m(e>\%5E/,2
%+4%+OY
%+g%M-%+4%7&3'2
#2N
%&
1)72
&'"(*+
0.%&3",6h>]#%+M&%5(*8A%#%+JHZI-
&'"-.&3]
%5L98)g&38&3"&Dt6Gt$C%+#2;%+.8=/,2;%54%J;%5
%+]
%+4%\&3'2-#2-&L%5D2
&'=$
%+#8=
#Hw(l
&0,-
2-&',6
g-%+4%K&3'2
#2]&%E%#%+mH·=J&',-
&3#%+
98)g&38&3"&J
,6;6mtO6!t5uG7%+h]0),&'&'1
JE2-&'r~
%5
1{#&\&'jh4%e."&61
2-K&3-5jO.-7&'2
-)'K(*+"-$#'B
-/A-N.%&3g2
&'K(&'2-#$r1{#&HKI-E7%Y.&%-j%4%/E+(
""'8F7%+;%/"\,2
/@
%578)=&38&3"&\&";%5
-8A&3'#L-D%"2
(Z&';%5
/+%.%&'
/A;%5L#%c##2-
[
%5"
%54%r&3'2
#2&HwL&\%c&'2-6-,/+4%"&E%+A(l
(l#D0#,8JOe
%54%0&3'2-#2-&G7%+.4%+.J(l-#
#,2
&,=jh'8M,1O{3#$6;1)=(C
#4c#%+c%,=\$-#&'&'jh
"J%+;=&'
%#J5jh$
%mH
`9^-&g)6mE4%+h\%A
n%+
h%#4YM
N-1
+(
&%5(*,6
#G""'8L7%;%+/,"OHm`9J4-$!0%jh,.]&3'#B
&g^&'
%+
/A1)9Y;j.2;%G
%+4%"&3'2-#2-&]%
r
%jh.\7%4%
/J)$'B91{#e(*
#0#,2-&6h/2
"1-B
{#&J/,
&HZ]jh64%+->
%A%+'"-
/gD#4%5(l
2-Lc#2
&3/,,Bi1;%&'=8)J&38&3a(l³&'#$4%+#46
>
;4%,L%-j%4%/(%Jk%5/,01)O8E(m-Bi&3
/J4%+2
1.2 Safety through Linear Types
-&'./
7&')#_
#%8"(*+#,',
/Njh,.%+L&',2-#& 4%+2Kr.-%+08)J&38&3"&HI
J#E1
%+,r+(1)
/.
&J%+;c
%5g8)&0;%+&]-jhL1)Y&32;c1)(*+\%+;
]&0
/,-8=#jh,6
8.--/"E2
#4A"g;%+=
J&3'4%+/,'B
(*+'p%54c&'2
(!
g;j.2;%m&38&3"&H
I
07%\#,'1
2-A+(
&>
%)e&eD
p-L&38-B
/+8@1)9b.-%+A8)c&38&3"&A%
</.-Bi1;%+&'s"\B
'87%
%/,"HcI!c-&N
m6G>7;%jhA-&'/
F%c&'"
.%N1
%E#%+#2
2
&0(_-&3'B9#k%+&'&0/,,-&]=
#4Y%\.-%+08)
&38&3n#,',&Z
2
&',6,2
&'L%
"-%+.#%5,A(/,
&p%+&
.!%&-0,1O{3#$&L&'2-#$=%&;%+&00#&'2-&H
>#%2
&'p/,
&e%+6h(*+e-p",&3;%5'64;%+'8K_
&3'Bi#.%+&'&
-/4%+"".-/",1O{3#$&6L&].%+jh8r&3'4%+/,'(*+'p%+4r(*+J2
&
L%,--C$-&3
/L.-%+&G(l, e.4%52-N
%+C8)Z&38&3B
"&H!`N-&Z
%)6,;%#$2;%8\&32
8J9J&'2
#4E&38&3"&
%-,2
/A>]1)jh0
L%+L&'jh4%+)".%+"8)0&38&3B
"&m;%+!#%D1)Z#,N1
g#jh8gD/,
&HI-e_
&3
&D%A-2-8Y&34%5.#E&38-&3 -$.j,c(l, F%, &J%+8r+
,^
%5g8)K&38-&3"&E
,5iHEI
E-jhr2-&](*+J7%-
2-B
.%+
/K/,
&p%+&'.8A#%+-2-0
L#p+(CI!+(lJ%+;AIG%-.m &
«,¬, ¬ ° ±F#,-&3'2
#HI-M&'#,;98)A&38&3 ;%+&\%rjh'8
-O7 1);%jO.+7(l, -=_
&3A%+&7A&A-jhd(l (l
#Bi#,2-O-/=-4%5,+(
%5D8)&J.&'#+j,
18 |>
7%+6J]2
c%;?x0.#$hd +UH³xL$(*-#Bi#2
/
%,--&K%=O8;%"#\#,"),-g=-\.%
/2;%+/,";%5D.-#%+&'&
" !;$-1-.8](O
Z&38&3 1
2-/,jh&(*$C&34%5#e/2;%+4%+&H
G;%+.86-187#,N1
/N.-%+&(k,F%-p=-](*$
#
#2
/g-$4%+,m6,p1-4%+.N
dOj,%5.%&G;%5e7%+h
0),&'&'1
J\7%
%/J-(l'M$(*-#D#,2-&H
wL--J")'4%+Og#,")
g+(p,2D&38&3 &J;%5J
+B
,-&p(G
%+8M%+g%
-.# O¢
$¡&Q %\W ² %#&'&,2-k%+
/2;%/,
%8=&34%/E1{#g#%Y1)D.-%+J+g-H0I
&g-
&7#,B
'1
2>L->&'"
#8K(;,2-.%+
/,2
%/,H`9%+&'J."-.&G;%+
-/4%+""&#%+M(l8M"7+4-;%5'87.-%+L
%54%N&3'2-#2-&
b/,,-&6g
#4?/,jh&A.&'^d%,
.;%+g
""'8
7%
%/"j%+.%+O&H0-L-%"
,6--/4%+""&p.C1)
%1-Ec_;-( '
$S9$Q3¡$¢')¡ ORJ
%5K.&3&JY
#$jh'8cB
"C+(;
&3Z
;%+1
&C&5K/,7%;D
$(*p7%8D1)
-%#%+c
-)
-87(C%8A
$L."&p.A
g&3H
`Y#'4%&36-jO,2-&L/.-Bi1;%+&'^98)N&38&3"&L#,2-kY,-8
&'* '-)¡ %\¡$¢')¡ ORp&3&6--Jjh'87.".-;%+1
>&%">/,"%+;K-(lp
L.&3Z"O&!#,2-kK1)p-%B
#%+72-.
p.&3ep%+&-%,mHCyjO,2-&e/,-Bi1
%&'
8)Y&38&3"&A;%jh^%&'d;%,?\#2
8s-%+.-/F?N2-4%+B
1
K
%54%\&3'2
#2&Hpx0.%+=#$-
.v2
&7%,g])&'&'.1-K
;%+;.>E2-4%+1
e
%+4%0&3'2
#2&C"e#jh8J
%K1)(*+,H
](*+'2
;%586O-2-pN&'
%#0#,-&'.-4%5.
&>]%5]2
%1-.p
.%+.:- ^¤i}M%c".
%+'8jh&',[(-.&D+
h!(*+g4%&4¥$H
q >.")+'4%-1
%+p7%+h
]%+'"Cg&',jh
M-.&)'0&-]&'&'2
J+(G8)g(*-#,HewL&%D&'2
6
#2']+Y#,2-kY1)Kj>^%&D%7&')#_;#%5,(lK%+.-$B
%&3#J#,"-.$"-.%5].%-/,2;%+/,,6O4%5
%M%K&'2-#
-/4%+"".-/E.%-/,2
%/,H
`c-K7%;g+(e-.&L;%+)6)N-&'g%7.%+
/,2
%/\(
/.
&Z%
K
%+C8)&!.K">-4%+UHe}O#,EL&'#1)&%
#+L#%+#2
2
&Z
#2
-
/g(l%+2&e(lp%+.#%+
/N%
\-%+.#%+'B
/M.-%+J/,
&6;%+&D%;r(*2-
#
&HE}#$.
M-&'#$.1)&
J$-#2-,r"O(*L
J.%-/,2
%/,HL}#
&07%;cuEOB
^
".%+
/,2
%/7$(*-#Bi#2
/,
&N%
&3&
&')#$.j,8H>I-J.%+']-"
&3'4%5&p
"-_
g-+B
1.3 Contributions
/
,2
&-%+4%K&3'2
#2&HZG;%86-&'#,=E-&'#2-&'&'&.%+
>)H
q 2THE
=#YCORE
.%
/2;%+/,:LANGUAGE
%5&'&=18<k%8$.-/[k%&=4%s(l
:%,.$ &"
%+"8)A&38&3
,5]d[(J%^#%Bi18Bij%2
.%+E1
%K#%#2-2
&M_
&3'Bi#.%&'&p/.
&H
2.
p_
&3e
.%7,2>#4
.#](m
%5>98-)&38&3n%
E
#dF%2-/,"\-c.%
/2;%+/,Y(g98)&\@8)&\(l
/,,-&H
2.1 The Types
q 2g
%5g8)K&38&3 #.2
-&0>=$gj%+.%&g+(
jh'8d&34%+/,r,1O{3#r
c%+=9(l"&"(g#,&'2-6>
(l"&g+(>
%&J%+;r.%+g-D.1)D7(*+"&]+(e/,
&H
I-M~9.-%+Dj%+.%e#.%&'&'_;&,1O{3#$&>;%5>%50$(*-#"18
$
%+#8F,-=).\%
F%+@~92
&'$
%+#8F,-#,H
%+
1{#&L%+D%#%+^%5(l-8M%+J2
&'mHeI
r~9.2--B
&3#gj%+.%+O#k%+&'&'_;&,1O{3#&C;%+G#%N1)2
&'K%N2
-."
O2-E1)J+("&"¤¶
#2
-
/M
K%5N%k¥$HM`9^-&K&38&3c618
#,'4%&3g^.-%+g./,#,6.-%+98Y.&].-
O]Y-K98)&
-"&'jh&6+4%+-C;%+NK
#OCN
#4N-8K%-)%+H
(l\/
$.#7(*2-
#
&N-7
Av2;%B
"p _
<.&N
§ .6Z;#%+
/%[2
,-.&3#A(*2
-#,F;%5
7%8r1)K2
&'Y7%+8="&6
'6m;-#%5
/M%A
%5J(*2-
#,
%+KE2-&3D1)72
&'$
%+#8
#H w(lN&N&'
/A2-&',6G-
#.&'2-D#O4%+
/E-g(*2-
#,m &(kDj,%5.%1
&p!1)D%B
#%5mHrh&',6C>7p § ´ (lN/,-#A
%K8)&H
w %+g
%L.&]-%+.#%+^%+(kg&0#,")
&0;%jhJ1)
+{#Hb]+7%86>>=.L&'2
--&'&\-@~ F%+
-4%+
%+1)5jhE
E.2-
&3#\8)&H"L
#6>Ep § ´ (l
%+c2
,
&3#D;%+H
`9=2-(*+7%)6g!2-&'"¤¥%&0%E1
%&'g98-)g%;=%&3B
&'2-"Z7%8K1)p2-&'N7%+O8D"&H:p#2
.E;%jh>.'O2
#
9"j%+.%&(¤,¥!{32-&3]%+&0>J;%jhg9\j%+.%&(C-J-
98)&6C1
2K.-&3%,^".%&'&'2
"\
%+K
"&K
c#,&3E
2-&'
/¤h¥E¤U%%#2
%"
"4%+-Y
K%+.#%+7D.
-M&3+5¥N%+;-(*+=-^-^-$_;
"-M
%5\j%+B
%+Hp`c2-0-%"-&6
>DG2-&'K+
L1;%+&'J8)&6;&'2-#$c%&
/&6)%+&'&'2
"
/E-877%8A1)](l8=#,-mH
-\&'"-.#986Z>=.[-E.-#2;MN2
B%5/,2-"J(*2
-#B
&E,2.%
/2;%+/,,HL5>jh6p#%+E&'E2-.%+>- %+&'.8
2-&'
/=&'-/,B9%+/2
"g(l2
#$.
&g
%+K%##-D
%+D;%+&D%&
%5/,2- "&HYI
$(*6eF2-N-%"
&6!4%+
$E;%+p
´ g!+(lMp"¤ ¥ H
`9r4]7-&'jhD
D&'
/,Bi2-&'EOj,%5k%+]+(>
%5g1-B
{#&6Dr&r
#&'&%+'8?d
&'2;%5r2
,
&3#:1{#&
[
=#,4%+.b
%+r1{#&HI-^$ (l7%5.b2
&
-<7%+O4%+d-.&E.Oj%+.%"18Fjh
/^
%5A%&'&'2
"B
&J(l 1)
/c#%+-22
,-&3.#"#.&'2-&HMI-&'
2-&>%5-&'#2-&'&'\\"p4%-.E&'#,AH H`E%,
.6
>p#,-&'.-Z2
,
&3#p;%+&N.-%+Z#"),
O!8)&6
&'2-#$c%&D¤ § ´ ¥p´ \1)]&38-4%+##%8cBi(l"H
>8M#p,O%5jh,6'&0%E&'-;/,.%+Bi$2
>&'J'1O{-2-#L#.%\E%E)E24-%++>Bi2
&'
]%+,1O{3"#)H 4%5'B
]#Z;%5S '
$O¢)VS¶ U¡¢L&C2
&'D,-#>+C7%8g"&H]-.,
98)"&38-&3"&K1
%&'F#8F.-%+N,/.#6Z-&'"(*2-
#,
98)&G&%8K
-
/L%1),2
[(kD
Z%+/2
"&C%52
&'mH
I-eO2-E1)m(-2
&'&!(
%D%5/,2-"!&C"
L#2
&'jh8
187
g%+/,2-" &98),H
2.1.1 Linear Types
x0/,,-&G%5Z2-O1),2
-LO&m+(""'8;%5!-,.g/2
-&
(Z1{#&H]Zjh$'8M/,^;%&L%"2
-kv2-J;%"6)-
c2
&'
/
]"4%+Bij%+.%1-.)6
%+#%+=1)g2-&'AEk(l87
]/,,
%
M
D1{#&0L#O4%+
&H
+]"&30
2-)&'&6
/,,-&g%+
{32-&3K.h7%+8+
D&3+4%/A1{#&HM`;%+'#2-.%+6%M/,,
E
%"g;%&%8);%+7%8J1)>v2;%_;E%&C-
%5
g.2-
&3#, Q¶ ¢¤ -¥$Hgb-^%7/,^;%&].-%+J98-)6)
7%871)D-%+.#%+H
b-F%cj%2
7&\%+.#%5F[%=/,,F[;%+")6G
8)(-0j%2-0&4%//," )H
e-%"-,6O%g#,&'2]
D;%+&C8) § µ K%;K&'"..%58K\;%+&HZ
C-&%h
(m2-
(*+"98\7,2e(l7%
k%+
/2;%/L>0%&'&'2-"
%+%
&3s,1O{3#&M%+^%+.#%5bs&',"c/, %
<
$(*
;%5"%+.(l2
-#,d%
:-O-2-#E98)&E%5c%+
+4%+z~3µ )6
(*+&'"0/, )HC]>jh67,2>$
%+"
&.%+&'&'2
"
$E&g&',"N/,,1
%C,Bi.jhG/.
%"b~ 7;%+g.&g%B
p%8&\%+##&'&'1-.=%
:.&E
jh$E%#%5mH:I
&E#Ojh,
%&2
&K&'.N2
.%+g%A4-
%+'87
%5098)L&38&3&'."-8
18^%#%+-/Y%e1{#&D HEb-
jhg>\,"D%M/,,
%-
+4%+, ~3µ OMA¤¶&'\-\
OD&'#$.)¥c~'µ " ! 6 Y%+&'&'2
"
g
%+4%N&3'2
#2J.jh&0A
g/. H
`@4-$MF2-&'Y(l2
-#,
&As7%8<#,O&6p-8@N2
&3
1)A),8"
-#AF&')#E^-A
%"&N(0
\/,,
%+/2
"&Hw<),8"
-#(*2
-#,\&e#,-&'k\
%5]¤¶B
2
,-&3.#¥$6;(!-g2
-8
/E"
"
-#L(*2-
#=&.B
%5E¤¶2
,-.&3#5¥$H
L-%"-,6--JO2-.
&3#J(*2
-#,
#%$ ± ) ( 6>
#$[2
&"%Y;%+7+(]/&"<&7%+/2
"
/'.&* )6#,2-kM1)J/,jhA
]98-)
+ ,.Q¶¢¤ -¥ ¤ - ´ µ -¥
}""&6,>0;&'AD_;-p(*2
-#,-&e;%5e$2-"
$
/.
&K
8^;%jh7%+.#%+HY
D-.&D-2-),&'6G"2
&'
%.&3O.%+e8),H=I
"&'"-.&3N&'2-#$(*2
-#,:&D
A$¢
(*2-
#r-_
AM
J'O-2-#,mH`94%h&0-\%5/,2
"O&
%
2-- &E&'"A-£/,,.
)6&'YE&\%&'&'/
F
"8)
¤¥ 0/1, Q¶¢C¤ -¥$H
I4%-,;%+/,-Bi1
%&'M98)g&38&3"&-&%o1{#&0(
&3.%8),6!%&D&3k%+&N%+.n/,
&Jc&'#%+)\
&'#)e+(-G_;-.6+%+;m65-7%+.865%#%5.N&.-h
=-"&'#,)"+(p/,,[_;-.H q 2-D&38&3 &D&'"..%5E
;%5C(->e%G01)>%+1
>0-%+.#%+g *¢-S lS¶ U¡¢
lR4S¶ ¶V/,
&6
ZE2-&3m
.%#Z&',"#
&3'4%+.&,g
C%8]
8 !;,2-/,
-/4%+"&HEL5>jh6m\-=-J
%jhNA&3'#J
!;(
%5]/.
& %5]8-.-/EG
&'2J;%+L%#%+
&D&%+(*H7I
$(*6%.&3O.%+Z98-)N&K)$"'YM
.-
L;%+"L+(C%N
%+p/.=1-2-&p-p)"'\K
.-0
;%+"p(!%"2
,-.&3#/,He·=+j,6O&3k%+
8)&
%+r-"&'jh&7
%56]"%+
/;%+7-8@7%8d1)Y,)-
-%#$8<,-#,H?:c]$--.%@
M2
&"(*+=7%+
2-k%5
/
&3.%&LM"D-$4%c&'#,YH H
2.1.2 Regions
G/,2AtK&'2
"7%5 &p
D&384%+M(Z
J8)J.%-/,2;%+/,,HL`9
% &'-#2-"&E%Y&'2
1-&'"(0
78)&64%+
/,d5jhE18:
"4%5B9j%+.%+1
2;6Z
%+K7(*$\^%&~9O2-.
&3#:%+;F%
-&*{,N&'2-1
&'6
\
%+D8)&64%
/5jh$D1O8Y-\"4%+B
j%+.%1-. 3pHrI8-)&A¤U%+;.%5N$"&4¥g%+7#,-&'.-:vO2-jOB
%Y2-?d;%+"
/d(\1)2
j%+.%1-&H "
#8
%&'&'2-"";%+K8)"#O&6 4A6#,4%+.[-c)%+F/,,
;%+"&HE\#
#%5;%5\A8)E#,O&J2
&'
/A
\-4%5B
,5 4 4 He`9( 4a%+; 4 ;%jhJ%+8M/,r;%+"&c#,""
2.1.3 Summary of Type Syntax
4 ¯ 4 r ¯ M ¯ 3 2
3d ¯ Q¶ ¢¤-¥ §
2\ ¯¤h¥ QU¢C¤-¥
´ µ + 4K, § µ / , 2§ ´ 2 µ + 4K, § µ !#"
$ ¯ $ &% D ¯ % ¤h¥ § µ «,¬, % ´ % ¯ § ´
§
¨ 4K % § µ § 4K (' µ *) ;µ ( / , (+ ± ' µ *) ,%
µ «h« ¬h¬ «,¬, % ¯ § °5±
«,¬,.- ¤0/
¥ % ¯
§ ° ±
¯ § °5±
°5
§ ± 21345("*"*765"
-=-J
4%5,c&02
;_;-mHeI-{32;/,"498c&34%5&
%+A
r(lj%+.%1-&M ?%5^#,4%
s. 4 %+;@;%5
2
,-&3.#J98-)&-\-#O4%+c.-%+L#"),
O>8)&H
G/2-Y&'&E-c-&'&'@&384%+Hsw0&\2
&'2
%¶6-
&384%+Y-#2;-&Jj,%5k%+1
&K%&J>>%+&J.'O2
#,%
^\B
%+,@(l"&\(lA%#4<98)=(],1O{3#$H e%+#$<(g-='B
2
#Y(l"&N¤U%&'.-K(l, µ «h« 6)-K'O-2-#,r(*+ (l
/,,-&6-#$7%+%8-&eO'O2
#&> %5>/.
&4¥2
&'&>%JvO2
%B
_
>J;#%+p
$
>%J.-%+>e
,Bi.-%+>j,%+.2-p&>'B
2
#mH
\%+.&'=.-#2;E>M(*+"&J(>.$'B9$-&'&',mH"I
N_
&3J&
&34%+;-%+4 ]1
;&0-Kj%+.%+1
% \-Nj%2
D#"
2=18
$-&'&', § %
#,O2
&Dc#"
2E
\&'2-E+(
HfI
Y&'#,;<.$'B9$-&'&',s
%&7
c&%+"r#M%+&A-
_-&3L%+2
A."H]j,6--J&34%+#J&'7%+O#&0%5D-jh
(k, F%- & «,¬. - #,-&3'2
#5
+UHawA#"
Y",6-
-
2-!/,,: /)6+-#$NE2
&3!
.%8N
%jh>
%5C8),6+&C/,jh
2
,-&3.#g98)gM
]-&'&', § %;7
M.-%+98-)
%+/h%+.@. H ; I-2
/d-.&7jO#,6Z=#%@2-&'c%?~
%5
/,,<
/@N2
r."&c%
s.%+c#5jhM&=.-%+M8),6
-#$d%&\2
&DY-%#%+A
"/,H^`-"(*,
/
(*7%+;-%"-,6,>L%+.#%+g%g
%+>/,,m62
&'e9#0
%+.#%+DE;%&0%
M
c-.$JH
¯ µ «h« >=@? °5±
«,¬, /
«,¬, - 0¤ /-¥ % ¯ ¤U
\´=uµ /-¥p´=µ /\°5±
¬,¬ 0¤ /
¥
`9c40\2
&' «,¬, - &%5(*86)L&L-#&'&%5'8="-&'2-g;%5
-0$(*-#&G /J&'#%+)e(k, § %;J* H!`J
e-%"-.
%+1)5jh,6m,-8c;%&J%+.#%+^.A /c&'#%),6m-]$(*-#&gB /
&'(96(lJ(p%\(l-#"-.r&'#%+),6N#,2-kr-{2
&3(lA8 /) &
%+C8) HbI
e98)e&38&3?.Ojhm(*
#&G
/N(l,&'#%+
/K18\)'(l"
/K%A%+;%8&'&(m
p98-)+( H
Ne$--.%-&'E)4%+,-&D"N(l2
8^.^#{32-
#§ =-8
/D2
&6
1
2p1)(*+JJ#%+c-#A=-
(l7%+&'7%#&!>eN2
&3-&'G%(ld%2-.%+'8D_;-.
&H
; ]J
%+0
Dj,%5.%1
/=&L(k,6-L1),2
cc
&L$-&3B
&'H
2.2 Expressions
I
e8
/p2-.&G(*$-&'&',-&Z
%jhZ->(*+ 4 &$C8D $4$M.&e%]_;-p7%E(k,j,%5.%1
&g8)&HGI
0-7%
( $7.-#2;%
Z(l>j,%5k%+1
&C hH:e%&'&'2
"e1),2-;
j%+.%1-.&>%5L%+
,-.%58\%+.-;%5B9#,Ojh'N1)(*+01).-/gB
.=-"#,OH=wL&J(*+N98)"#,O&6!-"
+4%+,
$ $p&N2-;_;-2-
&'&N-A-,7%+
&D4
( $b%
$p%5=&3B
{3OH q 2>98-)0&38&3.&p2-),A%D
,
-$".-&3.#0,)$'B
%+
$dD
¯ $ $ ;%5D&'
&g
\
%+K%&'&'2-"-,-&JH
$
1)9"-LF§ #E0G O&I$ § %
J$ HZI
LO2-.
&3#g%+&'&'2
"-B
,-&N
$s%+
)%5E:1)+
$ %+;H
$ H=E.>(l:p
$¯K$ § E0G $ LE0G $ %+&]%+Y%1-1-§ jO.%+,r(lM$^¯N$ § E0G $C%+;
$ O
¯ $ E0G $ H
:A%+.&'^2
&'7
7-4%+ $ HYb
.
d& 6e%
"8)&
P $[N2
&3L1)N2
,-&3.#Hgb
& '
6 $F&]2--&3'#H
I
&g-4%5.Y.&]2
&'c7-j,]2
,-.&3#N,1O{3#&L(l,
#O4%+
/r
%5E1{#&H^}O
#B $s&{32
&3N%=_
"7%m6!
"
#8K%5<#4;%-/,e(%+O8J9]%&'&'2
",
&!.K
e#,B
OHG%h
/J%+;\#'4%#,";1)0%,".&'&'1-.0,"2-B
,
&3#]#,"),-&e+(-#,O6O1
2>-e,7
%5p,-&H
:p2-&'p
+4%+, % % )%+;( -D--&34%B
%54@#%+-2-$B%jh.-
/:&'2-1
@§ &3Q 2-s(DR§ Q &'&',bj%+.%1-.&
%
/,
&Er-&'&'.
&H S£I-A-4%5. 4 4 >OB
-&L/,,^&'2
1-&32,r),&'K7/,,^#,§ Q O&6m%+;
&g,-8Y-_
c( 4 § %;5 4 ;%jhD
D&%"KO2
N1)0(eB
"&H
2.2.1 Notation
I
g98
/E2-&0(lL-&'&'
&L%+K-jhA(l #,
&'.OB
4%5.r(Gg7%+.Mj%+.%+O&
t,HpwLA,1O{3#+(C
%5p8)]N2
&3p1)M~2
&'-E$
%+#8A,
#,H
OHpwL8M%##&'&07%N/,,F¤3U T*V T'%#%+^
r%E/,,
p2-&'L+(C%71{#p
A%D/,,;¥eE2-&31)L%##";%5B
M18A-+(C;%5p
]/,r&&3..jhH
H`9(J%+@1{#M#,4%-&7%(*$
#c%s2
,-&3.#
/,,m6
-]/,rE2
&3p%
)%+0c&98),H
I
_
&3eOj,%5k%+>&>-(*+#"7%-8N-2
/,"#%+(l2
)7%+B
-2
.%+,(-N98-)N#$-#4-/=#O$J%;Y
N2
&'\+(
;"
&3#&'
'.-/N)4%++HZI
L&'#,
".Oj%+.%e&
(*#^18Mv2
/";%5]
K-/4%+ -&'g%"(*$
#
F%Y/,,@jh'8["M-=/,s&M%+##&'&'mHb:=&'2
1
&'$B
v2
8
&'2\;%+K
$A&N%=(*$
#7Y%=/.[(L%+;
,-8\(
p/,A&e&3.;jh,HCI
4EOj,%5k%+>&>-(*+#
18F#;-,-&\,F-A(l7%+<+(]#&'2-&7%+;F&3k%+
;%+#$%/&6h-.#4"-'&'L#,2
.\#%+-2(*
#&ZJ%"B
2
,-&3.#D/.r-,2]&01)
/"",-=c
g98-)H
I
&_
;%Oj,%5.%p-&'2-&p&p),&'&'1
gN)'(*+ %K8)B
1;%+&'^%;%+8-&'&gA-j,g&3^2
,-.&3#E/,,-&g(l,
&'#%+
/\-g&'#)J(Z% «,¬. - -&'&'.H
G/,2c
Y-&'&K
78
/r2-.&E(*+"-&'&'
&HdI
_
&3L-D2
&]-A
+gOjh,jhJ/.
&J&'"
$8Y%+D
K
+'B
7%8
/\2-&L(lD%7.-%+gk%+E1-%\#%#2-.2-&HJI-N2
D(*+
j%+.%1-.&v2
&>
%+-]#O$I $^#,4%A,
872
,B
&3#]j%+.%1-.& >LN2
&3e
e
%+pj%+.%1-&>/K2-O2
&'H
I
c2-c(*A2-
7&A&'".%+HfI
r.%+&3M+(g
M-r&"
2
"(*+"&'v2
#
/HY`9N2
&'&D
7#OE&'-.'
/Y)4%++
S e#%2-&'+(D
cp%8<Y;%jh^-$_;
<,2=)4%+;%J&'$B
7%#&M¤¶&'=&'#$.s
,¥$6>
8Fj%+.%1-.&"%+c&'2-1
&'2-[
-&'&'.
& s%+1-'4%5'8c&'&',
&0%5J
jh$&'2
1
&32mH
2.2.2 Typing Rules for Expressions
4 A
$ 8 J
%
4 $ , % B8 % % 4 $>, 8^¤h¥>;¤,¥
$r¯ $ § E0G $ 4 $ § 8 §
¤h¥ 4 &$ 8 %
4 &$A8 § % $Y¯O$ § E0G $ IE0G $ 4 8 § ´ µ 4 R$ § 8 § % § 4 &$ 8 % 4 &$ 8 -QU¢C¤-¥
4 &$>8 § ´ µ % § ´ µ $r¯ $ § E0G $ IE0G $ 4 &$ § 8 § % § ´ µ 4 &$ % % 8 '
4 $ 8 /"
Q¶§ ¢§¤- ¥ ¤*(*+0&'," M/-¥
4 $>8 «,¬, % § ´ % ¯ § °± %
,
$r¯ ¤ $ § $ ¥ E0G $ 4 4
8
4 4 $ § % 8 § ' §
4 &$ 8 QU¢¤- ¥
¤VW¡R ¤ $ § ¥'¥
4 &$A8 ¨ 4 % § µ + 4 , § µ $r¯ $ § E0G $ IE0G $ 4 &$ § 8 § + 4 , § µ 4 &$ 8 4 4
4 &$ 8 % -QU¢¤-¥ § ¤*§@(*Q 0&'" % ¥ ¤ 4
4 ¥
§ \
4 &$>8 § 4 § ' 4 § Q 4
4 &$A8 J% Q
4 &$A8 ' µ *) )µ ( / , M
1/ , ¤VW¡R ¤;¥ 4\¥
$c¯O$
$
4 &$ § 8 § 1/ , 4 § E0G $ % B8 '
4 &$>8 + ± ' µ *) % ¯ § °5±
%
4 &$>8 D
¤¥
4 &$A8Mµ «h« J1/1, QU ¢¤-¥
4 &$>8 D QU ¢¤- ¥
4 R$>8 ¬h¬ J;¤¥
$r¯ $ §E0G $ 4 $ § 8 § ' § 4 $ & %
4 &$A8 «¬, % ¯ § °5±
'
$c¯O$ § E0G $ IE0G $ 4 &$ § 8B/A QU ¢C¤- ¥
4 &$ /) QU¢¤- ¥!8 § % §
4 &$ /) Q¶¢C¤- ¥ % § 8 %
4 &$A8 «,¬,.- ¤0/
¥ % ¯ § °5±
¤ N¤ ¥'¥
§
8
%
¤VW¡R ¤ § ¥'¥
L7( 62 3L
5(#"*"*6"
r.jO.-\-\
%5Ej%+.%1-&N1)$
N_
&3N%
&'#;
-&'&'.
&0M
]&'v2
-#,H
I
g2-&0(lL;%+&L%
M(*2-
#
&L%+D"J#"
A&'
#
DN2
&3p+''8c%+1),2g%+##&'&'
/"/,
&HpyC%&]%5K%#%+
2
&'-/
r&'&', § ´ µ # § %
#,\B
2]j%2
&>;%5(*+£
L#,")
&+(!
L;%+HeI-];%+
&0%#%+rN-g/,,c--=187&'&', HZwL&
98
/02
(*+>&'v2-
#-/-6,-p&'
'
/J,)$4%+> -jO.-&
M.-%+7j%+.%+1
&"1)9[
A-A-&'&'.
&H@I
%+>J(*2-'->-4%+.&ZK-#0\
&e2-.HG&36
p
4
-&'&'.\&'
2
.E
%5j,>8)]Q¶¢¤ -¥$6-8)()%\2
,B
&3#D/,,mH>:D\
+L%5 %#%+^"%\
%5L/,,
1)#%+2
&'0L-D
+e%p%+M%+.#%+,AN1)p
0&'
/.L2
&'0(
%=
%5D/,,mH7b;%5J,2-.1)E
E),N+(%#%5.-/^%
,1O{3#J^%7/,Y;%+]#,2-.Y-]1)N2-&'r.r-K(l2-2- d`9
2
.=1)g")&'&'.1-]\2
&'L
g1{#0&'(H c`=%N","O6
L.m-$_;
]%A,)4%5,M
%+")4%+87#j,'&
%5
/.
&pE2
,-.&3#]/,,-&p.A4pN%5f%+##&'&
%5L/,
&p
2-0;%jO
/E\-%+.#%5J
cH
wf&'#,
c&'2
1-J1-2-")'4%+O0%+&')#0E
&p2
J&;%+
\-.#8[7%4%-&N
7Oj,%5.%E
%+\2
,-&3.#M,1B
{3#&E¤¶c
&0#%&'K2
,
&3#K;%&4¥-"-L#,4%Y
%5
,1O{3#&H`iN-&N&'Y,2-/,:
">BU(l"
&'&0{32;/,"
,7
0&'2
p98-)0(
L-&'&',mHZ`9(m
]
% &0vO2
%_; & ;-c
&0#,-&3'4%g&')#_
&L
%+L
D#,")
8)&
E2-&3p
+01)g.-%+H
I
".";%5,:(*+ (*E;%+&6 «,¬, % ´ % ¯ °5± 6
-5{3#&0-]>\#"),
O&p+(C
g
% § § %;M1
;§ &
% § %
% 1)(lg#.O2-.-/KA
]$-&'&', H`9( §
%1
&G/, g-DpE2-&3G-&'2->
%+G-&G/,,E.&C&3
jh,H q '&',6)-&g%##&'&g&g%\""'8M'H]wo(*$
#
/Ng-p/,,7&>$'4%+#E(k,
#,OJ
&'&Z;%+
L/,,r&&3!jh,H
2.2.3 Escaping Regions, Function Closures and Existential Packages
]-&'&"^%+r#%5(*2-¶60(l2
-#,s#&'2-&A.L1)Y%1
c
# %+-2-$(*-#&g2
,
&3#p/,
&e-,2-j,%
/
&'e(l
#&CK-Z98-)Z(-
Z#,&'2,6h1%O
/0j%+.%+O
:&3b%1)5jh,HzI
(l,60rv2-^%+.L(*2
-#,-&AF1)
#,&'[[&')#\Y2
,-.&3#A/,,-&H[`9(]%c(*2
-#,
p%+&0%##&'&C%pj,%+2
N%+JO2-.
&3#e/,65
%+!/,,
E2-&3D1)7
#8;%+&'&'F%&N%F%5/,2-"Kc-\(*2-
#,mH
]
#,6-~.%5D#A(-K(l2
-#,6!%M#,
#-g(l,2-;
=&34%+;
%54M#0&38-&3">5O6)5i6
&-&'M%&;%5'(
p98-)+(m-0(l2
-#,7%+/2
"HI-L#.&'2-v2
"
&"-(l#<18:
M-#%+FVW¡+R ¤ )¥M¤¶,
2
-#z~ d&
/.-Bi#,&'=M&')# Oh¥$H
VW¡+R ¤3QU¢¤ -¥'¥
¯ (*%&'
VW¡+R ¤ § ´ µ ¥ ¯ VW¡R ¤ § ¥ ^VW¡R ¤ ¥
VW¡+R ¤ / , ;¥
¯ VW¡R ¤ ;¥ ¤¶( ¯ -¥
VW¡+R ¤ )¥
¯ '2-
¤¶-'&'5¥
`"#k%+2
&']9K%1)5jh)6 )7%8Ep7%8\->1)Lv2
%; "%+;
D
%J&]&3C#,&'r(e&L#,")
&L%+,H]I
K--#%+
&]2-&'c72-N2-0(*
#&LA2
,-&3.#K/,
&E¤*
I-c%5=+
\%8-&N=#,2
.[/,%
=,2-E.%
/2;%+/,c&'
;%5J%+##&'&gA.-%+]/,,-&J&J%%;c8$J%##&'&D-&
+Z#,-&32p
&'
/L2-&'p(m%g
%5e/,HZ-Z-%"-.6
%Y%+.#%+,Y,)$4%+,Y#2
.=2-c%E;%+L(-D%#%+
,1O{3#"%+;
"(l-#Ar-7/,,mHI-&N2
.:&'&'B
.%8MvO2-g;%+,/+4%"&1)gp'ccwB9-7%+(lcH
98)AQ¶¢¤-¥'¥p-.#4^#%+''8cY
K-jO/,EA%+##&'&
%J/.61
2>-&-Z2
]2-e(*
#&eK1{#&g¤¶&'2-#$
%+&g;%+&gJ#.&'2-&4¥L-.^%+2
,-.&3#K/,,mHJ]+#
%+D
%5J/,
&K%+"%+p%8&J#,&'HE:E2
&'N-E-4%+
VW¡+R ¤ )¥e¤¶,
2
-#Y~ E&G/,-Bi#&'-h¥C-cVW¡R ¤ ;¥
(lZ%+.O/.
& )H:>(lC-_;-N+(
/.-Bi#,&'N),'B
&'J\#O& $ZH
]jh:
&'A-$_;
,-&JA#%F-5-D-798
/
2-&!(*+G(*2-
#
&¤¶&'eG/,2
h¥$HGwL&1)(*+,6-e&'-'-/L-B
$4%+Z
%+',
&G->
%5Z%&'&'2-"-,-&C1)>D
>#,O
2-&'c7#$-#$A
J(*2-
#^1)OO8r%+;c
D#"
2-4%5,c;%5
/
$4%+&J
K/,:O7
#4-E#,&'2"&D%#%+H"`9(
-L#.&'2-0&%72
,-.&3#0,1O{3#$
\(l,.-/E2->2-
%+1),2e-g
%5>1{#&>-&'kpO2-.
&3#,1O{3#&6,
p#-B
$]2
&'=7#4
#4=-D(l2
-#,Y1)O8r#%Y#,4%+.Y-A
%+
j%+.%+1
&HMG;%86!-&J#,ODE2-&3D%&'r1)E/,,B9#.&'mH
I-(l,6J-(*2-
#f#&'2-:#%+
-r#4%f(l-#&
=.2-
&3#\/,,-&7¤U%
2
/,D#%:#4%
%&K%;
+
L(*2-
#,-&L
%+L.-;%+1
g2
,-.&3#D/,
&4¥$HD}O#,
H
\
.%
&-5?\(l-g/,,Bi#,&'=&3'#H
I-02-0(l(l2
#$.=%+
-.#%5,A
&'2&e-0/,A;%"
%5/,2-"&¤ 4
l¥7%+#4J
>$-)#g/,\;%+"e
%+4%"$&
%+;F;%5\
M%+/2
"\
%&E-=)#$:8),HdwL&Nd-
.";%5,<(l (lA;%+&6>
M&3
#=(J%Y(*$
#c
-E/.#4%
/A
E(l2
-#,d¤ % ¥L&'jh&D%&J-+(;%5
-g/,c&0&3!jh,H
C&3k%+m98)&),&'D"#2
&&'"k%5N
&'J%%8
&'#1)@(lA(*2
-#,b#&'2-&6]%
<
r&'.2,sY
%5j,
%--d.&"-c&%",Hs`<(*%#6/,jh?·=
%".-,6p·='&''
%+;rg%5) &]-$4%+,Y((l2
#$.Y#,&'2-&J%&L.&3-B
.%+
%#4,%+/,&> ++U6.&3O.%+O98)&7%8J1)ZjOK%&
%
&'2-#D+(C
J-1
cHZI!"
&'2-g
%+02
,
&3#J/,
&
#%r1)J&3'#=7%\
%+'#2
.%5g-/4%+ &'#),6;>DvO2-
-098) \K1)L#.&'"7&')#$D.2-
&3#]/,
&
%" N
">0(la%+7.&3O.%+)(m8) / , "2
&'
/J-
' µ *) -&'&',mHI
";%5.\(*+n(le.&3O.%+.&e&Z-
&34%+;-%+4=2-
;%+#$"$-&'&',mH
#
&3'2
#$LA
J-%"-LK%5D%1),2p\-&' $Y¯ $ § E0G $ IE0G $ E0G $ ;
4 &$ § 8J/7 Q¶ ¢¤ § ¥
4 &$ /)QU ¢C¤ § !¥ 8 § § ´ µ 4 $ /) QU¢C¤ ¥ % % 8 '
4 &$ ; /) QU¢C¤ § !¥ 8§ E-§QU¢C§ ¤ ¥ ¤*(l0&',"¥ ¤VW¡R ¤ ¥'¥
§
4 &$>8 «,¬,. - 0¤ /-¥ % § ´ % ¯ § °± ]r#%@@%57
8)=-=-%+"
Example.
/,jhM"
L.'O2
#,mHZI
0O(m
L-%"-.0;%+&,-8
1)^#4;%-/,cM%,-r98
/A%-
+4%+,-&6!
%#4r%
^2-
;%+#$
&3'2-#,
&6;%
M
%598c%+
-4%+
&K¤ - %; ¥$H
¨ i¤ % *¢-S $¢;.¤¥ 0/1 , Q¶ ¢¤ *¥ ! QU¢¤ -¥'¥ + ± ' µ *) ! ¯ $¢7¤h¥Z°5±
«,¬. - ¤ ! *5¥ /E¯ % ´ % µ ! °5±
' µ *) ! ´ /Jµ ! ;µ ( I
Z(*2-
#,E$¢"/
4%5&G(l&'E
%5C/,,-&6h%+;J
$B
(*+NL;%+&L8)"¤i¥ / , QU ¢¤ l¥$H0I
J/,%5/,2-"NQN&
/,jhN2
,-.&3#Z8)e1)#%2-&'G&C2
&'J18K¦X *Q46,1-2-&C
-%#%+Y18AH0I-(l,6)-J#,OL#%
/M¦0X+ *QEN2
&3
4%+.E%N%.%&CNQK4Gg% #%5p HCI
e(l2
-#,N$B
2--&G%0j,%+.2-e+(
98-) p¯ /1 , QU¢¤ l¥ ´]¤ - ´ µ *¥$µ )H
I
J#%.-/"#,O7%8A1)]8)M%&p(*.&H
¯ ¤ ¨ ¤h¥ µ «h« ¤¥'¥Z°5±
«,¬, $¢
+ ± ' µ *) !
¯?µ «h« ¤h¥e°±
«,¬, - ¤ ! ¥ % ¯?¦0X lQ i¤3t5 $¢ ! ¥e°±
+ ± ' µ *) ¯ % C°5±
¯ K°5±
«,¬, - ¤ ! ¥ ! !´ / ¬,¬ ¤ ! ¥ «,¬, - ¤ ! l¥ % ´ % ¯ /\°±
¬,¬ ¤ ! ¥ %
%
I
$\%+K#,&'E#,-
#
&g1)9^2- «¬,. - %
^I(l
% YIG%
m & «¬, ¬ ° ±H >+#
&3'2-#&]2-&'\%"8)Bi1;%+&'
&'#%+)A%;%+8-&'&Dc-&'2-"&%+(l8H7b-:%,.$K_-&3K.'+B
-2-# «,¬,.- ]
&C
%5.%E1-%0#%#2
2-&6h
e;%K-L-,
(e%\/.
%",6
&'7
&g%+;%8&'&]p%+&]jh$'8c"-#.&'Hg}O
#
%K/,,=98)g#,4%+.-&%N2-
.v2
L/,,c
%",6&0%K(*+(
&'
/.$,78),6O%Djh'8E-#&'L#.%&'&'_;p
%+>7%h&
0"OB
_;7#
&3'2
#$pE2-#$""+]#$.j,,H`"(¶%+#6.&>),&'&'1
]
-$_;
g% «,¬, ¬ ° ±M#
&3'2
#$.=,2-0#%+#2
2
&
«,¬ ¬ ° ± % °5
± ¯ + ± ' µ *) ,% ¯?µ «h« ¤,¥>°5±
«,¬,. - ¤ % 5¥ /\¯ ]°5±
¬h¬ % /
wo/
4%+!'4%-&'.%+,Y(C-DI!(kB9IG%-.Y.%-/,2
%/,K",2-
#%+.#2
2
&7&7
A)&'&'.1-c-,2M&'/
_;#%+A2--BU"M5jh$'B
%,mHpI
D-7%+'8M1;%5'g&;%+N¤¶&'"
_;
¥pI!(kB9IG%
I-&#,-&3'2
#>#%A1)L-_
E
"
0.%-/,2;%+/,0-,2
5jh-%,@(g-r;%+7q %+A&M%+##&'&'s.&A%+.#%5bs&',"
/.:-g
% /)H '&',6mEE2
&3g.-#2-]
E#,&3K(
%c%#%+,^%+;M"".%+J%#%+r(Z%E
%50;%
«,¬, - % 0¤ /-¥ ´ D% ¯z¯¤ «¬,K °5±
% § ´ H % ¯ § °5± % § ´ % µ ¥Z°5±
«,¬, §
2.3 Relation to the Tofte-Talpin Language
I-pµ «,« -"jh2--&G%
J6.-%+!/,,mHC`9G;%+2B
4%+8N;%+&C8)]¤h¥ / , QU ¢G¤-¥$HCI
¬h¬ -"jh>#
&'2-"&
%0.-%+C/,,E%;J
%&G
Z8)"/ , QU¢C¤-¥ o¤¥$HGLjh$6+>
7
L'%+]
&'K-"jh&L%&g#
&34%+O&Lr-&'K98)&
1)#%2-&'M2-N,)4%5.;%+p&'7%#&D&E&'/,8F""/,%
(D'%5L-³%&0-&'&',-&Lr
Lc8
/N2
&
¤¶&'cG/,2r
h¥$H[-",/4%+""N#,Ojh-
#6>"&\2-
#B
&'&%+'8YM
%#4c
N%+/2
"] ¬,¬ %&D%+&3.%p¤*-
/,,r
%"g=-J-"&'&(G-g8
-/N2
g(l ¬h¬ 7%8
1)JjO>c%&"
#8A.&3O.%+.8cvO2
%_;
¥$H
`92
,
&3#L/,,-&%+]'O-2-#7%
"."
%+"2
&'-/
«¬,. - %+&0$--.%
A%+H q ](G-gh87#
&3'4%+.&M-
98
/Y2
c&\;%5\
A8)=+( § &'-,2
.[1)M/,-Bi#&'
r&')#$L )HI-&]-jh&.2-
&3#D$(*-#&]
"(k, &'#%+
/\(k, § ( H
J;%jhJ'O-2-# «¬,. - %&L%c+'
/,,
%G,/+4%""
/
#,
&3'2-#&'N
%+-]#O'4%+#,-#-7%8"1)L2
-&3OA.
&'k%5,(k, +
g-&'&',-&gr
Kk%+
/2;%/,HK]jh6
e&e2-&'(*2-J1)%+1
pg7%h%g.-%+Z/,\")4%5.8N-B
2-.
&3#L"7%+O8E-OZ,/4%+&'#,)&6O-m{32
&3Z
&'
#,
-#]K% «,¬, - $-&'&',mHCw:"/
4%+,'%5"
>,2-ks)$"A&'&',
&A(J-c(*+ «¬,. - 0¤ /-¥ XS¶S9$Q4¢ ¯
°5
§ ± H:J2
&'g-](*.
/A
&34%+
#J+(C
g"+J/,-4%
2.2.4 Region Allocation and Deallocation
4 A
$ 8YRg 4 $ § $ ,
4
4
4 $A, ^
8 ¤h¥>
¤h¥
$r¯ $ § E0G $ 4 $ § 8 % § §
4 &$ 8 % ' 4 8 § ´ µ 4 $>8 % § ´ % ' § ´ µ 4 8 4 4 $ § % B8 J' ¤ 4 VW¡R ¤ $ § ¥'¥
8 ¨ 4 % + 4 , µ 4 &$>8 % %! Q
¤ 4 &$>8 ' µ *) % )µ ( /1, M
1/1, VW¡R ¤)¥'¥
¤ \4 ¥
4 $A, 8 X+ SiXh¤- ¥ QU ¢¤- ¥
4 & $>8F% § 4 $>, 8 -' $Y¯ $ § E0G $ 4 &$ § % § 8"!" % %
4 &$ 8"F% 4 &$A8#! F% §$ ,
$r¯ $ § E0G ¤ $ $ ¥ 4 $ § 8J/7
Q¶¢¤-¥
4 R$ % Q¶ ¢¤- ¥ 8:' § ¤ VW¡R ¤ § ¥ V W¡R ¤ $ '¥ ¥
4 &$A8 «¬,.- % ¯ /\°5±%F% § (& &
62 ')("
# %5=c/,*)6;%+c&3k%+!
%#4,%+/,,6
0
D
%54%E&3'2
#$B
2-0%+&'&'#.%+"7%]/,,Y¤ X+ SiXh¤-¥'¥$H *AI
&34%+#$N#,4%-&
%M&3D(>j%2;%5.#O&+!\6-.#4%+\&'&',
&g
%\
%,NH>I
D-4%+!7 !--&
J&'&',c(*+"
( &62OU6( M #"
18\_;
/K
]-,g!o hHZw &34%+#$"#%+c%+.&'N#,4%+.A
&')#.%+C.-&3'2
# «,¬,. - % O
¯ /M°5±->6;-#$Y&]2-&'=\-$B
&'C
%#,E(;- «,¬,. - -&'&',E.K
&34%5#pk%+
/2;%/,H
#.&'2-&>;%jhp8) §
µ K
F&e
&'>(m/,
&
:K.e-&'#2-&'&J
&g#
&3'2
#$D.^(*2'
D4%Z^-E
$
,,, 7;%5J
E(l2
-#,:%+##&'&'&H=Zv2;%+.98
&'
&'#H
98)§ &.&"O2
gv2;%+98E+(&'&()/,
&H q -p"/,C''8N
'4%+
&'.%+AI!+(lB9IG%+
F#,&'2&Ec#,&'2&D
\(*+
Q¶¢¤ ¥g´ G´<Q¶¢C¤-¥J´<¤'¤3QU¢¤ ¥g´. !´dQU¢¤-¥ ¥ R ¯ ¤h¥ % § ´ % ¨ 4K % % µ -§ ¥hµ )6h1-2-Z&'2
#4"%g'4%-&'k%5,A§ -&Z
+>&'jhpvO§ 2
%B
(' µ *) % )µ ( /1, X+ SiXh¤ -¥
987¤¶;%&%5
+%&'&'#.%5.j,,6h#"E24%+jh,65#H ¥$HCI
(l,6
¯ %#. R
(%7'4%-&'k%5,(k, I!+(lB9IG%+
:&D-&'^,-\E2-&3g/,-B
¯ ! «,¬. - % ¯ /\°5±/
$4%E2-0(*2
-#,r8)&p7
#2
-K%r#gc
K%+'
! ¯ , , ´ § µ % ´
,[µ %+;:2-&'\
\(*.
/Y2
"
$VW¡+R ¤ $!¥gvO2-&$s1)
#.&'==&')#$0\%m/,,-&L+
;%+M-,&'JL
% § ´ % µ , «,¬, % § ´ % ¯0,f°
± ,
¨ 4K % µ , ,E 4K % 4D1,
$r¯ ¤ $ § $ ¥ E0G $ 4 48 4
(' µ *) ,L;µ ( / , + ± ' µ *) % ¯0, °5
± 4 4 $ § % B8 § § 4 R$ 8
Q¶¢¤-¥ ¤VW¡R ¤ $ '¥ ¥
µ «h« , ¬h¬ , «,¬ % ¯0, °5
± ¯ ¤ 4 2
3 +¥
4 &$C8 ¨ 4
k % § µ + 4
., § µ §
`9E%
6+
p_;-N+(CVW¡R ¤)¥E2-&3C%##,2-OC(lC- &',2-`d;6Z4>="O(*
%#4
%+Ar&',2
c#=.%-(g/,2
%
/,%+M782-)"7&388-)&3M&38-&3Y
&
- #,&'2D98)&
%1-&3'4%#>7%#4
6h/,jO
/g>BU(l"
&'&e#,
-,
&Z(*+7%+B
#4
p&34%5&6
&3+,6O&3Ej,%+2
&e%
E&34%#4O&HI
&'p2-.&
VW¡+R ¤ + 4 , § µ ¥¯@(¶%&'7¤¶( ¥
sD
&'>"O-_
#%+,-&!>#%K#%2-Z
>&'"-.eI!+(lB &p\/,2
%+4%g-g(*.
/7&'"
](*%#&
I!%
\#&'2-&HL5>jh6#%+-2--/L
I!(kB9IG%
\-,
(*I
0%+L#$.=&>.-jh%g#87/,,,m-0H /,,=
%+4%D&3'2
#$2-0.7
0&3
+(;#G)8"+
&' &G
+G'j.%+O%;g>-G0(l2-2
>)H=
K
E7%;K(p
&D;%+)6G>"#,-#'4%+7,
-M#.&'2-78)&N-_
:%+"F
7;%+)6e%&N-8F%5
wL,&3+Jj,%+.2-&%+BU(*"]D%+
,-.%5Z98-)&H
%+J-MN
g-g.%+,-&'
r1)9A/,
&L%;
%+08)&H
(*I
"JA-&'=&'.=&')E#$1)0JN$-
#g2-#2M'%
A&3
],&34H %#4=%5gB
3. THE ABSTRACT MACHINE
wL&'.Y(k, c98--
/2-.r(l=-Y&')#.% «¬,. - 6L-.#4
yC,/+4%"&GD,2G.%-/,2
%/,>#2-N%+E%+1
&3'4%+#G7%+#$-.-,H
w0D%1-&3'4%#!7%#4
&34%+0¤p¥).-#2;&-Z&3C+(-jh/,
& %&\1-&3'.4&'%##2
>&'&'7%F#4
F
"%+ALvO-2-$4%p.1)2-Jjh6H
I"
p8
2
-/=&e%+2
0&K&'
(*N"
¤ 4E¥$6%K&'#-M+(-0&3+E¤Y¥$6O%D&34%#4c¤¥-&'
/
-7#2-'N#,O2;%5.[%
m6C_;
%86C
7-&'&'.:Y1) G/,2&LN-,2-/,=H
j,%+.2
%+H
*`9c
K·c54J6;-D
%+4%"%+&'&'#.%+rY%\/,,r-#2;-&
I-g&3J7%+
&pj%+.%1-&pE&3=j,%+2
&J¤5¥$6O
#4=7%8
%c),D=-"1)/,
-
/r(p-\/,F.""'8^%+;:%
1)L2
-6%D(*2-
#,A#,&'2J%#%5=A/,, )6%K
%0%B
),G
e#2-'OG%#%+\),G
D
e/,,M 5UH
8"b%=-/4%+
4 8 jh
4 8# .j,
4 "
8 $&3 ¤*(*+0&'," 4 4E¥
$r¯ $ § E0G $ 4
&$ § 8 D% §
4 &$ 8F% § 8¤ 4 2 ¥>%=
-/4%+
8 -.j,
4 § 4 8" jh
4 § 4 8" %#. X SiX¤-¥ejh
4 8 jh
4 8" %#. Rgjh ¤3R ¯ XSiXh¤-¥'¥
4 8 $&3
498- -&3
4 8" $ &3+ $c¯O$ § E0G $ 4 &$ § 8rRg'
4 Y
8 ¤ ,%#. R¥p
¤ $ % ')¥>&3+
L7( 62N'52#"
`9M+4->\-$_;
L,)4%5,;%+&'7%#&6O]
D_;-&',"%,--,
%;-4%+HC:pv2-p
%+Z
Jj%+B
%+1
F%+
)%5r"Y;%+ # -:-7%?(K
&3,H
IO2-&6m-N-4%5. ,%. RK"
#8=v2
&]
%+ % +
1)E.^
E-,7%+( H7}O.".%+86m
N
4%5, § (l
-N#,
#%+
%+,(ZA&3&J.&]2
;_;-=2-
&'&]-EB
7%+
&G+(1 %+; %5p-&*{,HI
e,)4%5.:¤ % ¥&'#&
-J,1O{3#$J§%+]%,-&'& % (k,³&3 H>`i( % -&0
+L%
)%+
=-g&3J-A-J,)4%5,c&02
;_;-mH
s
d%[2
,-.&3#M,1O{3#\.&E2
&'6e\7%
&N.F-
&3+,H^]jh6
[%c
%+"1{#\&N, 2
&'6N&\%B
#%+HI
r (*.
/[>F,)4%5,
&¤ (*=O2-.
&3#
1{#&L%
(*+L
%+L,1O{3#&4¥p"
"e
&1);%jOH
, % ¯ ¤ ,%#. R ¥ % ¯ I-N)4%+;%C&'7%#&0(lL
D.%
/2;%+/,E&L/,jhr18=%
7%+
-.-/J(l,£7%#4
0&34%+&K7%#4
-L&34%5&HeI
&7%B
-
/r&E&':[G/,2-MHY`F/,
4%+U6e%+F.'O2
#,
(l &Gj,%+.2
%+D18g#4
&'.-/g%p(l&'N%,-&'
& >%;JO
-
/
-7&37:-A%
,k%5Mj%2-M%+.#%+d%+K;%5\%B
O&'&Hb
Y%#%+
/MY%"/,,m6)
D,)4%5,;%+C&'7%B
#&Djh$_
&g;%5g
$\&3&D%=.j,E/,;%5J;%+",H
w0=";%5.=(*+ &'2
#4c%&0%E+{#,r+L(l2
-#,=#%!&
j,%+.2
%+F18:-/^-A
%\+\(*2-
#F2
[:
A&3,6
&'2--/D
%+e
p/,M
%1-\1O8N
;%+e(*2-
#,7&
e8g(l&'E%
&'&6>>"%+N%+E%
O&'&!;%5-&G
+C%%8
%+
)%5A-g-7%A(!-]&3+,HeI
L(k&'
-&'&p#
&3'4%
&0"
#.M
](l7%2
&H
3.1 Operational Semantics
&3G%jhD%+;A_
;%+.8A4%O
/E-J%---.%+D%+#,H
I
E)O2
7%+D2
\G/2-77
.%
&J-zMj%2B
%+c% «,¬, - &'&',H<`9E"5jh&E-=
%57#,8[(L
%54%A&3'2-#2-N%&'&'#k%5Y/,, =(k,³
E&3+\%+;
-k%+#&JJ%+2
,-&3.#E#,8^%+J%A(l&':%,-&'& -H
wp
J&%+"]",6--J#2-'O&34%+#$F.&O
-7=
j%2;%5,#,OJ(*+K%MD-&'&'.6G%;Y
&J
$&34%#4
&]p4%-)cY-N&')#.% «,¬, - &34%#4=(*+cH]`9^&'2-"7%+'86
L_;;%+&34%+#$A&
¯ E°±7¤ «,¬, % ¯0,f°± ¥
«,¬. - /N
I
=
2-)&'c(]
&"#,-&3'2
#s&\:-&'$jhM-c-(*+'B
7%+;%5DO2-.
&3#\(*$
#&K ^-c-K%-)%+K
D&34%+#$¤ «,¬, % ¯ , °5± ¥$H0I
D&')#.%+ «,¬,. - #,-&3'2
#
-&A-.&A18d-&'jO
/:-r-(*+7%+,s
%+7
r&34%+#$<&
.BU(*+":%M#,OJ;%5D&D/,,B9#.&'&')#$
* )H=I
"8
-/M2
"(*+N- «,¬,. - &34%#4(*+ 7%h&g-&
.-%J#&',HZI
0#,&'2]#;","
&34%#4]{2
&3_;&Z
"5j%!+(
DO2-.
&3#K/,,^
%54%"&3'2
#2D(k, &3J
#g-J#2-'O$-&'&',c
%&1)Mj%2;%5mH
I
K.%&3D)4%+,
%C2
K".
%+&L
7 *¢
S O *S¶ U¡+¢
*RS¶ UVL$B
/, ^(l -M&3+,H`iN
.%#&E
7(*$
#7 %7-2-"N87j%2
A¤*K2
&'D2
-$¥0%+;rO;&0-D&3D^%
(l&'=(*$
#J"%N.-%+0#O8A+( )
¤ 4 2 § . XSiXh¤ -¥ «,¬,. - /\
¯ K°5±% % ¥ ¤ 4 2 § . ¤h¥ / . XSiXh¤ -¥ 2 % ¥
q 4-
%+86O(0]D-k%+#g%+M2
,-&3.#]j,%+.2-0
%--j,%+2
]+(%K-98-)N¤¶&%86-(]-.%#M%K(l2
#$B
,Mj,%+.2-]=2-
$¥$6
L,2-.M1)]-E/2;%+4%+];%5p
&'2--/=&3N,2-.1)N>Bi(l"H\L5>jh62
NA
#,&'2"#,
-,-&K
K(*+7%+,:+((*2-
#:j,%+2
&D%+;
&3.%8)&6OJ#%+c/,2
%+4%+Og;%+p-&
.%#"&
&',2-;H@I-M&'2-.-/&3+=8)A.&\k%5dY
M/,
%
&3g98)]-2
/,M
g4%+&'2-g(l2
#$.
$Q'XR ¤3Q¶¢C¤ -¥'¥
¯ ¤¥
$Q'XR ¤ § ´ µ k¥ ¯ $Q'X+R ¤ § ¥ ´F $Q3XR ¤ ¥mµ $Q'XR ¤ /1 , ;¥
¯ / ,l$Q'XR ¤ ;¥ ¤¶( ¯ -¥
$Q'XR ¤ ;¥
¯ ¤¶+
'&'5¥
]+#";%+D-"&3'2
#2"(N$Q'X+R ¤ )¥L(l,5&N
"&3'2
#$B
2-p+(eVW¡R ¤ )¥!-%#$8\%
N;%5>-
Z
N#2&'L
K&3'2
#$2-K(Z(*2
-#,r8)&N¤U-2-K"
K#,&'2Nv2-$B
"&p,M(*2
-#,c(l7%+)¥$HZ:J(l0
D-$_;
,M(4%5B
&'2-A),&'7r#,O& $ZHY]A#%F+j,7
%+K
)O.%+.87-%-/,2
&e
.%#">+(ZQ¶¢¤ -¥18M¤¥-&e%,
"%N>Bi(l"M&3,6;%1)0,
g=98)7$Q'XR ¤ $G¥$
t,
H $4 8a¤ / . X+SiXh¤ -¥ ¥YL $&3<X¢ 4 8 ¤ / . XSiXh¤ -¥ l¥>.j,fX+¢ 4
4 S '
$¢ 4A8
¤ / . ¤h¥ *¥> ! ¤ $G¥&3V T
I
&Z"7%]%+.&>2-&Cg&'
d;%+C-p&3p7%+.-&CB
(*+"g
D
Z,)$4%+,
%2
e(l «¬,. - .&!#2-mHGLpB
jh$6+>E2-&3C%+.&'L&'
F;%5!->&34%#4D%
Kj%+.%+1
% 7%
.BU(*+"mHZI-h8KD-&e(m&e;%5e-7%g8) c¤¶+
#O$L $!¥.&p/,-Bi#&'m6
0&v2;%+m\&4%+&'2-,
£O
H $ ¤ ;¥JS '
$¢ ! ¤ )¥C¯ 5T
I
$(*+,6J2
&'-/d-#&'2-#,;.
&cb
^&34%#40
%
^-\j,%5.%1
% ."-.18r
E98
/A2
E(*+ «,¬,. - ¤ 4 232!" *¥ ¤ 4 2 ! +¥
( J
+0%Ej,%5.%1
¤ 4 2 2! % ¥ ¤ 4 23!" % *¥
¤ 4 2 3 ¤h¥'¥ ¤ 4 2 %#. ¤h¥3 % ¥
¤ 4 23 ¤ % ¥'¥ ¤ 4 2 +¥
( :¤ % ¥C¯ ¤,¥
¤ 4 2 3 % § ´ % µ % ¥ ¤ 4 / . % § ´ % 3&/
¥
( :¤ % ¥Z¯ X+SiXh¤ -¥%; 4
¤ 4 2 3 «,¬ % § ´ % ¯ /"°± ¥ ¤ 4 / 3 % § % Q % § % *¥
( :0¤ /-¥C¯ % § ´ % %+; 4
¤ 4 2 3 ¨ 4 % µ /
¥ ¤ 4 . ¨ 4
% 2 h¥
( :0¤ /-¥C¯ XSiXh¤ -¥%
4
¤ 4 2 3 % 4+ % ,¥ ¤ 4 2 % 3 4 Q 4i % Q % *¥
( :¤ % ¥C¯ ¨ 4+ % - %
4
¤ 4 2 3 ' µ *) % ;µ ( / , )¥ ¤ 4 / . ' µ *) % µ ( /1, 2 &/-¥
¤ 4 2 3 + ± ' µ *) /N¯ % °5
± ¥ ¤ 4 % 3 i / /l¥
( :¤ % ¥C ¯ ' µ ) Q / )µ Q ( /1, ¤ 4 2 3 4µ «,« % ¥ ¤ 4 2 / . XSiXh¤ -¥ . ' µ ) /O;µ ( / , Q¶ ¢C¤ -¥ 3 ¥
( :¤ % ¥C¯ ¤,¥%+; Q 4M \¤Y¥ M E¤Z¥
¤ 4 § 4 2 3 ¬,¬ % ¥ ¤ 4 § 4 3 % / . ¤h¥ 3 /-¥
( :¤ % ¥C¯ XSiXh¤ -¥
¤ 4 2 3 «,¬ % ¯ % )°5
± +¥ ¤ 4 2
3 % Q % l¥
¤ 4 2 3 «,¬. - 0¤ /-¥ % ¯ § °5± ¥ ¤ 4 / . XSiX¤ -¥ ¯ E° ±7¤ «,¬, % ¯0,f°± Z¥ & § Q /*¥
«,¬. - /E
( :0¤ /-¥C¯ XSiXh¤ -¥
¤ 4 2 § . XSiXh¤ -¥ «,¬, - /E¯ K°± % ¥ ¤ 4 § . ¤,¥ / . XSiXh¤ -¥ 2 % ¥
!V(.*76 4 2. ' "
%+=%1-.A5jhA
%+ %; % %+M&3.>BU98-)[[
$?7%#4
L&34%+,6
%
Mv2;%+8A")'4%+86O
%jhL-g&%"
8),H0IO2-&6;
DBU(*+"--&'&]+(Z-K%1
&3'4%+#g7%+#$-
D&
-&'jhM-2--/E
&p,)$4%+,
%G&3mH
:A;%jhA-5jh<%r8)A&',2-;--&'&E- (*+",2"#
.%-/,2;%+/,,Hc]jh^
E#J&'%+#4F,-5jO
/c&'2
;
&'&
(gI!(kY%
<IG%+
&\/.s#%+.#2
2
&r
t6gt
O60u507&'
2
.
#"c%&"-&'2-&'M
%+\>=$r%1-.A:%+
8[&384%##
#4
-kv2-&E
]-,1-cH
I!\&34%5D,2-LI8-)J},2-;
&'&p
c6OgC_;-]
RS -V =RSiXS9$RHDw &34%5 ?&NRS -V K( ?.&L
+J%\";%+!&34%+
(-7(l ¤ 4 2
% ¥K%+;-7&E
r&34%5" &'2
#4:;%+
iH£:%&'<2
&'Y
^
4%5, <--Y
!
.j,J%
A'4%-&'.j,J#,&'2-D+( sH
!"! #$#&%(' $ 8 <-/4%
X¢ )
S '
$¢ *R]¢;¡SRS -V T
3.2 Properties of the Core Language
}0(¶%56h,2"
"4%+N+(;
2
,-&3.#>.-%+8)
&38&3 %&1{#&^("2
,-&3.#F98-)^s1):&'
%+
¤3U T*V T
07%8"1)]7%+O8E),&D
&'L,1O{3#&4¥$H q 1O{3#$&
(Z
%5]98-)6),c-K+
L;%+;6%+N%p%8&]2-
&'
%+r%+;
$(*+N
$8c7%8=1)D#.#Y.""-.%+8c%+(l$]
$8r%+
2
&'mHrI-&'A-#.&'
&K.%,Y%=#"
8&34%+#A""'8
7%
%/"J.&'#.-.-,H"L-(*+'2
%+86
Nk%+#$Y+(p%.%&'-/
(*+p2
&%+1
\¤¶
%5$¥>,1O{3#$&p;%&p&p&%,-j%4%+/,&Zp&p
#$B
&'&%5'8c"#,8=.-%+],1O{3#&Lr&',"D&'2;%+
&L7&'jh
Y&'
/),=.Oj%+.%=%
@
&=#8--/d#%b%,s
2
-
#&'&%+'8F""'8^2
&',HwL
%+jh86\&N
#&'&%+'8:
#j,'K.-%+K/,
&Ec2
,-.&3#7/,
&D(*N&'/,-_-B
#%+O)',-&p(C%D-/4%+%
7N-.%8"/.c%#%+
1)8;7
g).L%+p-#$r%K/,,r&&'7%+O#%+8=-%,mH
|>
7%+6-]2-p%+;"xL#4hK +-),&'A%78A-(kB
(*$e"OO(
%5Z./,#,HZI-8E2-&'K$(*-##,2-.-/L
h='4%#4M+(C
JO2
N1)p+(),&p7%c1{#HpI-D.B
%5!8)&38&3?
&'2&
%+m(*$
#e#,2-&!%5e7%+.4%+.-
%##2-4%58HJxL$(*-#E#,2
&J%
Y%A8;%+".#D#"),-L
e""'8g7%;%+/,"O!&38&3o;%5C#"
"&G%0
28
&34%+#L%--h%+#$mHCxL%+
$Z
%"
%5jO
/LJ#,8\1{#&ee#,B
jh'N
%5E/.
&N.Y2
,
&3#7/,,-&6ZE&N)&'&'.1-
\7%+
2-k%5](l
#K#,2
&H
`M/,-4%¶6
,
J#%r%+2
/,"O>
J#%+.#2
2
&(jO,2
&p&'#B
,-&]:%"
4YvO2
%_;\+¤ *\¥]%
r7%;%+/,K/,,-&6G
%&6
#,&'2 &0-0
%+-B9%#%5=,1O{3#&L18"(l-#J#,2-'B
/H § L,6(lA&'"
#86>c#
#'4%5r#2
&'jh8<,
(l
#Bi#,2-O^/.
&6
#$YE/,jhE98-) QU, ¢¤ -¥$HNI
$98-)E((*$
#$B9#,2
^/,,-&E1)
/,&Dc
"#k%+&'&
3?(p
%5K,1O{3#& "
#J#,'4%+#,:+J%+h
-/c(
%&'&'2-"-,-&pA
&p8)g&
+]%-"&'&'1
,H
:=O;[
r.%-/,2;%+/,Y(D$-&'&',-&As)4%+,-&
[%#%5(l
#Bi#,2-O@/,,-&6]$--.#[email protected]#"
(l
#c#,2-&6%+;F
#8d-#"N-=#2
c¤U%+;
§ q -b-&F;%jh<f1)@#%5(*2-Af
&'2@;%5:(l
#B
#2
Y,1O{3#&J#,4%2
,-&3.#E,1O{3#&D
86m
g.B
%5p,1O{3#$&pp+
$(*-#]#,2
"1{#&HeI
&7%8"1)
%##,"-.&'-2-&'.-/=#4
-kv2-&g&'"k%5DM
&'"(pjO,2
&
&'#
&e-#$\
&'2-
%+Z,-8E2
,-.&3#0,1O{3#$&>%+
)%5
&'.-J+(O2-.
&3#J,1O{3#$&H
4. REFERENCE COUNTING
4 A
$ 8 J
%
4 & $>8 D
¤¥
4 &$A8 µ «h« , J1/1, QU, ¢¤-¥
$Y¯ $ § 0E G $
4 &$ § 8 D UQ , ¢¤-¥ 4 &$ % QU, ¢C¤-¥ / Q¶, ¢C¤-¥!8
4 &$>8 «,¬, % /E¯ °5± ]°5±
' 4 &$>8 DQU, ¢¤-¥
4 &$A8 ¬ D
¤h¥
$Y¯ $ § 0E G $ E0G $ 4 &$ 8B/AQU, ¢¤-¥
4 &$ )/ § QU¢¤-¥!8 § % §
4 &$ )/ Q¶, ¢C¤-¥ % § 8 %
4 &$A8 «,¬,.- ¤0
/ ¥ % ¯ § °5±
&3'2
#$.)¥$6O1-2-Z-(*$
#&>"Q,
(l
#L"Qg&
$¢G &>#.&'2-,6%g&'#,
N(l
#0&e%7%5/,2
"OCK¦X *QL%+;
%M-4Y(*$
#7&J4%-18r
\#%.-/r#,OH"b-
¦X *QA2--&6G
\(l-#7#,2-OK&N-#"^Yr%+;
L/,,r&0-%#%+H
+ ± ' µ *) !
¯ µ «h« , ¤h¥Z°5±
¯ °5± ¤ ! ¥°5±
«,¬
! !
¯ ¤ ¨ ¤h¥ ' µ ! ;µ ( ¥Z°5±
«,¬ $¢
«,¬. - ¤ ! ¥ % ¯?¦0X+ *Q i¤3t5 * ) $¢ ! ¥Z°5±
+ ± ' µ *) ¯ % C°±
¤
¥
´
/
¯ K°5±
«,¬. - ! !
«,¬. - ¤ ! *¥ % ´ % ¯ /E°5±
¬ ¤ ! l¥ ¬ ¤ ! ¥ %
¤VW¡R ¤ § ¥'¥
( V( ' 6*65"U ' * "
%#%5K-]/,c
A
J#2
p%#4
& ¥$
n ¯ µ «h« , «,¬, % /E¯ °5± ]°5
± ¬ G/2-Mr-_
&N%,--,;%+>2
&D(*+E98-)"#4
#$O
/c$-&3B
&'
&H
`9\
0-jO,2-&>&'#$.
&6- «,¬. - ,)4%5p7%-),&'&'B
1-DN")4%5.8A'%+0
%5L/,,-&g%&2
,-.&3#D,-&
%jh,.<#,&38d#,8
/-H<]$,6>>c#%<2
&'A
c&%+"=#-B
&3'2-#07")4%+8c-#%&'D(l
#N#2
&-,2L-
2-."A#&3M+(g
%5jO
/Y:-c%#$2;%
#$"\)4%+B
H]I
&L'#4c%&'A#,Ojh
8r%&g2
&0"2
&'N%!-
%+.#%+,b%+;F%+##&'&E2-&E(*+\
%&"%
:#,&'2&E(*+"1)
$(*-#Bi#2
M/,
&L%
M+
0&''&+(C/,,-&H
I=",-&3'4%+K,2-g
z(l-#E#2
/A,B
Example.
$4%+,-&6)D.G2-&'D,2-]-jO,2-&g¦X *QN-%"-,6;1-2-0
&
"J4%+-0;%Y%+.#%+
/7>A
%+]/,,-&6)J.C
8
%+.#%+c%c&'-/,"(*
#Bi#2
/,HrI
M¦0X+ *Q7(*2
-#B
^&'(e&]2
-#$
%-/,6;#L(l]&08),6;-#$r&')#_
&
%+>>)#&Z
]$¢=(*2-
#7D1)0.-%+p%;\J27%
$(*-#Bi#2
"/,,mHeI
]#O-L(lp-0(l2
#$.A(l,&H
p2
&'-p%1-1- jO.%+, (*+Z-8) /1 , Q¶, ¢¤ *¥C%
(l / , QU, ¢¤ ¥ ´¤ ´ µ ¥µ )H
¨ 9¤ % . l¢
S $¢;.¤h¥ ! .Q¶¢¤ -¥'¥ + ± ' µ *) ! ¯ $¢7¤,¥e°5±
«¬,. - ¤ ! 5¥ /E¯ % ´ % µ * ! °5±
' µ *) ! ´ /gµ ! ;µ ( I-e#O-e
%+#%&G
e¦X *Qe(*2
-#,N%#%+&%p$(*-#B
#,2
Y/,@QA%
^
#$"&]
N(*
#"#2
6
#$%+
/?%<&'#,
f(l
# ! H I-&^&'#,
o(*
#F&
&3+:[$¢G &K#,&'2-H=b-
"¦0X lQM(l2
#$.:&D#%m6
>\2
&'K
«,¬,. - )4%++JM")+4%+8^%"+K$(*'B
#&KFQM-:
A%5A(l-#=#2
&H^wN-&E),6
-D&g%E(l
#N#2
L(>r¤U-2
J\-K&'-/,"°± -B
%
q "+(p
".7%5'8>%O-&'&'&K(/,F1;%&':""'8
7%
%/"Z,7&>M&Z;%+>%)#4%
p
%+4%J&3'2-#2-&
%+ '-¡)%\¡$¢'¡)ORpr&')#L\
J/,
&]
%+0
LB
"&J
%1
H7`9-D+4-&6%+.e"&J(0%M.&36G',6
>-e#2-&'jh0
%54%+98-)0%5vO2-EJ
;%+1
Z
&%"
/.HE|>,-&'v2
86m%"&g+(%+8Y/,jhY&3Dg'
E2-&3J;%jh\-\&%"E.(l",Hc-D,-/Bi.j,#O4%+
&D(*+
#4M1)+7.-&'',-&%;7,
&%5]#"",m6h
&&3'4%5'B
/+8:#%+:
#2\v2
7%c#&3\%+&N-,-"(
"1{#&N
%+N%+
"5jhK(l,
p#,#,A#%"1)0%#%+A2-O
pB
J#,#r.&L-%#%+H
I!+(lJ%+;7
$&J 5;%jh]-jh.)M#.jhp,/4%+""
/
#4
-kv2-&>\%jh.A
&p,1
£.M7%8"#%+&'&HZ`A&'&'-#,6
$8"7%O2;%+87""#
g%+#,M(!-L#,8.-/E/,%+1;%+/,g#,B
#+Ha·=+&')#_;#%+.860
8<)O-#%+8?#,8<-Y#,B
4%-Y
%54%<&3'2-#2-Y(l ,-/.f<%-
$H w(l
=#,86Z
8[#%&'c:2-&'=
=
%+4%^<
=,.d/,s&'
7%8\&%5(*871)L-%+.#%+Heg%\F%+
/K%
7wL;O@wL
)
,
5>
%5j,E
&'"k%5Kk%&gAp7%M#"
E#,8OB
/M/h%+1
%/\#,#+E%798)E&%+(l".%
/2;%+/,E
%+J2-&'&g
/.
&H
wL-,2
/M#,8.-/E&
/,-8M$#jh]&'2-,cM7%87&''B
2;%5,
&6-p&p
+
,2&=5jh-%,H`9(m
]#,4%
$
%54%J&3'2
#2L&>.%5/,,6O
O'4%J&';%+#L%;\"pv2
E
#O8Y-".jh\
%+4%A(l, \/.r%+
-K7%8Y
K1)
%##-4%+1
,HZ`A,2.%
/2;%+/,,6
-,/+4%""&>;%jh]7%+8""
#4
,#&H q F
M,
=;%
m6Z
8:7%8:"
8F
M#,8
/
&',2.d
%+NA;%jhD{32
&3\-&'#2-&'&'mH q :
A
$\;%+;6
-/4%+""&e#%7"\
%58)&A/,
&eK&'jh0-&
-1
K
F%8-&H!`K;%5'.#2
.%+6,-,/+4%""&!#%N-_
'
$S9$Q3¡$¢')¡ OR7
%54%^&3'2-#2-&H[`d
$\+4-&6#,4%
$&
7%8=-,.c"&&3c.YL/,,-&g%
=
$(*
;.jO.-2
%m,1O{3#$&]7%871)K-%+.#%5c;);8M+(C
-0,1O{3#$&LM-J#,4%+.-H
I!E-"
&3'4%+0
&']k%&6].'O2
#]%K8)0(*&3&
W * RSµ )Hzhr-=
%+4%:&3'2-#2-&M&'2-#$?%+&M
%&c%+;
#,&'2&6.2-
&3#E&3&J%+N#,-&3'4%
Y&'7;%+L
8r-
+0#,4%c
%+0,1O{3#$&H
I
$J%+]g&3&p-&'&'
&HeI
g$-&'&',
µ 'O-2
#&C%D"8].&3GD8) D.D
/.E&'/,
%+
18 hHDI-N&'&', ± ( ¤ § ¥µ -);-*& § 7
&3 6^-E/.:&'/,;%51#8 HEI
\#%+&'"#,-&3'2
#
µ (+¬ § 75 ¤ % /-¥ (*.&>-_
&3Z1-4%+
#4\( §
5. CONTAINER DATA STRUCTURES
4 A
$ 8 J
%
4 & $A8 J
Q¶¢C¤-¥ 9
4 8 W * RSmµ 4 $A8
0µ J' W l R4Sµ $r¯ $ § E0G $ IE0G $ 4 $ § 8 § %
4 $ 8 % W lR4Sµ 4 $ 8
Q¶¢C¤-¥
4 &$>8 ) ± ( ¤ § ¥mµ % W * RSmµ $r¯ $ § E0G $ IE0G $ 4 &$ § 8 § ' W * RSmµ 4 &$ 8E Q¶ ¢¤- ¥
4 $ 8 % 4 $ % /) W * RS8 '
4 &$>8 µ ( ¬ § " ¤ % /
¥ %
(N &62 " 65" ' * "
&-L"8E.&30%+;"
0&'#,
A14%-#$A-'&',HeG./2-]
&'&p
]>Bi(l"
&'&2
&p(l0.&3L-&'&'.
&H
I-&'>98--
/p2
&¤¶D;%5'#2
.%+6
2
e(l#
&4¥mvO2-
%+D
E&'
"+(
\&3N.-;%+1
&K%=&'
/,\/,H L5>jh6
-""&D(p-".&3N7%8-;%1-EJ/,
&HY
+
$
%+"
,6%c
%+\&3N(0.&3&N"/,K1)"/,jh:-\(*,
/
98),
/ , QU ¢¤ -¥ ´ ¤'¤h¥ W *,RSmµ -¥ W * RS
`9E
&#%+&',6%+#$""O+()
p&3>&e%"&3.%-;%#4B
%+/,M#,4%-.-/^%Y
%\+(L%r$(*-#7%c/,d%
F%Y&3
-;%1-.-/:;%5M/,HnZ%#4b(D-&'Y.-
A&3&=7%8<1)
#&'&'7%+;"-%#%+7;);8N+(%8E+(
-
-
N.&3&Hc]j,6C&'
#"-\/,,-&\%5A
%+K
8#%
-]%.%&L,
D+
Hp`i(Z%\-/4%""$pv2
&L%"
%+4%\&3'2-#B
20
%+ej,,jh&>%.%&'
/N1)>\
0&3&>
7%g(l-#
#,2
/E&',2-,=#,2-kM1)J2
&'
/ , QU, ¢¤ -¥ ´ ¤'¤h¥ W *,RSmµ -¥ W * RS
I -RELATED
&L
%)L4%&pAND
,/
$FUTURE
097$WORK
1-4%-#$-&(C98-)
-'8N&'/,
N(*+>7%+;%/
/]#,"
2C&'2-#&Hx0&'%5#$
7.-%+e8)&Z/,;%5\=]4%54m &>
%5p,/.#Kt,t$m%;
x08
.-&&38O4%+##]#',(!.'(l-#\ ++iH>-%+p98-)
&38&3"&C>k%5e&32;-N1O8N7%8D&'%5#$-&0t6
6;t6O
6
O6O6!
+-6Ctu5UHDIZ8)K%
r#]&38-&3"&0>N'O-2-#r18
]+4^%+;cm2
#%+&'&'Ft5%
=
8A";%jhJ1)r
18A7%87+
&Dt56O6+6tUH
·=+A#86Z%YO2-E1)D+(L-a
%+E98)A&38&3"&6G
"+F/,-4%86^~&'2-1
&3'2
#$2-4%D8)-&6 %jh:1)
jh):&'2
#4[%&/4J,1;%8O%+&'
¶ &\v2;%+&'B9
%+E98)&7t+U6>yGB
.%+h %;AyC(*-
/ &+4-"8)0
+'8r ,O6;
5UHI-]&
%+&'K-\.&3>7-jh,-.-/J
<,/.#&>;%5e(*%#4%+
Lh%5Bi&38L%+&',
-/E%+1),2->
%+-B9%#%5M-%+4%D&3'2
#2&H
x08
.-&J ,u%
M`&'.%,v7%+; q L%+:t+G
%jhJ-jh,)
&'2-1
&3'2-#2-4%+./,#&C(*+){32-&3G
&G-2-),&'HwLD&3
/0.-
+(;&'%5#$E.&CL.Ojh&3./,%+p-5F-&'+
Z&38&3"&!(le%.%&
#,',.4%+#M/.-Bi1;%+&'c""+'877%;%+/,"OH
6.
I
$e%5e#.&'e#,
-#,-&!1)9g
&m>J%+;]:%h6
e| 4%+'8d%+;<·='&'' &7#%
%1-.8[#%#2
2-&r
OtUH@I
=#%;%5B
1
8[#%+#2
2
&"2-&'d%^-,d(].-%+8[^#,'/,,
%.%&'-/-H q 2-e#2-'eE;%&e
0%,j,%+O4%+/,L(1)
/D"
-&'&'.j,]c%K2-E1)e(p%8&J¤¶%##,""O
%5&_
&3'Bi#.%+&'&
/.
&6
/,-,2-&0
%+4%K&3'2
#2&0%
7(l-#J#,2-'B
/h¥$Hz]jh6
Y1),2-;sv2;%+O_
&7(D
r#%+;%+1
98
#%+.#2
2
&7%,]),&'&'1
gKpJ#,2
%+,Bi;%&'&'-/\-+B
/4%+"&L
%+]>N#%
-LpKY-N#%+.8OBi&'#,) «,¬. ,)$4%+L¤¶&'J
t$
(le%g-$4%E
.%+;%+)¥$HC`i&'"&.,8
;%5p
J&0%N%8A\#E1-.-]
L\%
h%+#$-&H
·c%O-,c6gL.&'&c%;?]
/,ntK
%5j,;%b&'.".%+YB
&'/,&Lr&')#$]\(l
#Bi#,2-Or/,,-&g%&0K;%jh
%
%5\jh,-
/A&'2
##&'&3(*2
8)K-(*$
#K#4
.v2
&](*+
%s.%-/,2;%+/,[a¤¶&'#;Bi#.%+&'&4¥Y(l
#Bi#,2-Of/,
&H
g%8c%+;MwLh O6)5!
%5j,J-j,,)M2--BU"]1-4%5.&]%+;
.%-/,2;%+/,\&'2-
)+'g(*+J(*
#Bi#2
r/,
&J:|LHI-
(l
#Bi#,2-O-/d&'#4
"r.&M&',"
%+=-7;%+s
,-"7;%jh"'O-2-#-7%&D
8#2
D
"O2
N1)D(
),&;%5L#$,&'&/,,Y1)2
;-%+&p4%+-0;%M
JO2
\B
1)p+(G).&eK-L/.c-%+4%D&3'2
#2]&'(HZg%+.#%+B
,A&p%7
7
]%+L
K"0),&>Kj,%+.2-&
%g;%5'#2
.%+Z/.7%
E&%+(l8E.
#4hN7%
8N%+2
N."H
gm
J%+;c%+ ;O#$ C%5D-jh.
/\%E
b98)Bi&%+(*
j%+.%C+(|#%+. >%+2
HCI-8D2
&'%(lz(-
e#%
%1
&
",-E%+1)+j,g#,'
%+##&'&ZJ%
&'+'&(-/4%+$B
&',2#&.-#2;.-/""'8/.
&HI-8g
%jh%&'L-jh.)
#$.j,p.#%
98-)>.(*
##4
-.vO2-&Z%
N;%jh>)
#
2
&'-/L
C98)e&38&3oL-(l#p&%5(*98K-,)$'.&C.E-jO#
jh$&He|>2-'86 >%+2
p'4%#4O&p.-%+&'2-#&
8c%+;7
"/,1)
_->(l£2- «,¬. - )4%+AD")4%5877%+h
%5L&'2-#&02
,-&3.#H
J%+FL,&'&'7%+6!Ijh+N, %
:L/Y·=+'&''\%5\#2'B
8\jh
/D%g&'#,;E98)Bi&%+(*j%+.%Z(!|L6,#%A|e8OB
#,-,HZ|>2'86,|e8#,->&C2
)E%#
&'j%+jhe/h%+1
%/
#.#$HcLjh$6!,/
$K[L&'&'7%?$SgX,W T.67%+
+.-/rp%8&Kr
#)4%5M&'"7(
7.-%+&E&'#1)
$J.\|e8-#.
,H
c· %8A(
g.%&A-&p;%)$0%+,&'g(k, .&'#2
&'&',-&
L/\·='&''H:2
.MhLD;%+
7·c%+O2
%+ ;O#$m6
J%+cL&'&'7%M%;"
]%-,8",2
&jO$&(l-#,\B
"&p,M%+Ljh&',-&(C
&p+)H
Acknowledgments
t$N}-%"&'cw01-4%"&'8H|>"
24%+,
%!4%+,-&(
.-%+0,/.#H '
'¡Q$S¶ ¶V4XWZ)¡ % S9$Q
;V i$¢)V4$6!tt,t
uO6
t,
H
KwL-%
-0w0.,6
·c%O2-!%+ #$m6;%+;Ax]%+
jOH >'$L&34%5#J""'877%+;%/"C`9"-5jO.-/
/,,Bi1;%&'c%
%8&'.&0(-/,
$'B9+4-.%+
/,2
%/&H)`
Z¡+¢ $$Q'$¢)V4E¡¢=¦Q'¡Q'X %%E l¢OX¢O) -XK$R .¢
X¢ &% )W. %"$¢
SiXS¶ ¶¡¢
6-;%+/,&Dt55;thu6m!%\,k%O6
|%(*-.%6CthuH
5K %+
-&'c%;=}5{3%,%=}"$&'&H
|>,Ojh,
%G%+;
2
.v2
&'&98--
/EM/4%-=pD&38&3"&J¤¶O;
%1
&3'4%+#$¥$H-`r}O8O%7%+&'2
;-%+6O6 ' *Q$S9$¢-S '
Z¡¢ $$Q'$¢)V4E¡¢rS '-!)¡ O¢ XS¶ U¡¢-RK¡ $
)¡ $4S>X+Q)&V '¢)¡,W¡ ²
X¢ '
'¡Q$S¶ ¶V4XWZ)¡ % S9$Q
;V i$¢)V4$6;j,,2
"gtD+(
G'VS Q'D¡+S9$Rg *¢Z)¡ % OS9$Q
;V i$¢)V4$6
;%/&0-t OuOt6
>,N1;%86t,
H)}--/,'B Z.%/-H
7. REFERENCES
+D!%5& >h
%+¶6·c%,&0I!(k,6)%+;r·c%+/,O2
& Z{3&3'2
mH
-a/,,=.(*
#J\jO,M]2-7%-M7%+#$-.-&pjO.%
/.=&'4%+,=.(*
#,H-` >$¢
S ² T ' *Q ² % ¡+R4 % ¡¢=¦Q$ l¢)V )W.$Rg¡ $L¦pQ3¡Q')X %
%E *¢!X¢) -X$R6
;%+/,&Dt5t t,
O6m}OH
yG&'1-2-/6;h%+O2;%+'8^t,OH
uK|e&3.%
M|%+.#%/,--Hm}'4%+_;M,)$4%+,
%!&'7%#&
(*+]&%5(*98c%+;A#'#$
&'&0(G/,,r#%+#2
2
&H
`
>$¢
S ² T . 'OS ' ² %¡R % ¡¢M¦pQ4 *¢;V )W.$RD¡ $
¦Q'¡Q'X %%E l¢O !X+¢O) -X$R6);%+/,&Jtu,u
t,uO6m;,6- 4\6
h%+2
%+'8ct,H
5Dh%p%+;%5J|>-7%56)|%5GwKH;]2
6-%+;c,YNH
x0.#$hH
x0(*$
#J#,2
/E%&L%E#"
2-4%5,;%+
-4%5,c+(.-%+0,/.#H O)¡ OQ$¢;X,WG¡ $ ¢;VS¶ U¡¢;X,W
¦Q'¡Q'X %%E l¢O6)¤i,¥$t,uO+,6!·c%+#4t,H
Jx0,1=]
D%+;=·c%O2
% -;O.#4H
-(*+#
/
/-Bijhm-+#,&0.=.pBijhm&'(k%+,H)`9 Z¡¢ $$Q$¢;V$N¡¢=¦pQ3¡Q')X %
%E *¢!X¢) -XN$R .¢^X¢ &% ;W. %7$¢
SiX+S¶ U¡¢
6)t,H;I!"%+
)%5H
5JJ%jO.cg%8c%+;MwLMwLhmH
·="'8M7%
%/,"
c
#/,
&H;`9 Z¡¢ $$Q$¢;V$N¡¢
¦Q'¡Q'X %%E l¢O !X+¢O) -XK$R4 ¢X+¢ &% )W. %"$¢
SiXS¶ U¡+¢
6
;%+/,&L
t
A
,
6·=,'%¶6;,2
-Et,H
5JJ%jO.cg%8c%+;MwLMwLhmH-!%-/,2
%/,D&'2-
)'p(l
/.
&H
` =¡Q +R '-¡ F¡+¢^R %\X¢
S¶ UVRª ;Q'¡Q3)X % X¢)X,W ² R *R
X¢ V)¡ % OS¶ *¢Oc$¢ *Q'¡+¢ %7$¢-S¶R $¡Q %" %"¡Q ² %"X¢;X %7$¢-S
O¦ 6);,6- 4\6-h%+O2;%+'8ctH
t+DEH 4\H
]+4c%
c-H;·H;m2
#%+&'&'H
`/+4%+
/
(*2-
#;%!%
M")4%+jh]-,/+4%""
/H` Z¡¢ $$Q$¢;V$N¡¢ *R X¢ O¢)VS¶ ¶¡¢)X,W)¦pQ3¡Q')X %
%E *¢6
|%N1-.-/,6;·c%&'&%#4O2
&''&6;wL2-/,2
&3Jt,H
ttK,%+-B gj,&0]4%+4mH;
%+0,/,#,H '
'¡Q$S¶ UVX,W Z)¡ % OS9$Q
)V U$¢)V4$6u+t th6CthOH
t5D]&g%+.1)$/-H|>E1-.-
/E/,%+1
%/,K#.#$.Y%
/.r-(*$
#J=-D·c 4JH;·c%&3 &
&'&6
g
%+'"p+(e|>,"-2-0}O#
#,6;L
jh&'87+(
|>,)
;%+/,m6!t,,OH
t
+N}"=].&'r%
=yGLI-.7%
mH
}O84%##]98-)
&',2-;
&'&p(*+
g/.c#%+.#2
2
&H
`e¡Q +R '-¡ :¡¢
'O . '-$QK¡Q $QN¡ -$Q3XS¶ U¡¢;X,W!S9'&V 'O¢- $RK l¢rR %\X¢
S¶ ¶VR46
;%+/,&Dt tO6}-N1)0,OH
tK- J]
/,m6
L
-.-/"·c%+-,c6
%;A]-
/N]&'&H
wo#L%--h%+#$M\#,'B !
5 &'-&'.j,
/.-Bi1;%+&'=""+'877%
%/,"H-`9 Z¡¢ $$Q$¢;V$N¡¢=¦pQ4 *¢)V )W.$RDX¢ ¦Q'XhVS¶ ¶V$N¡ $ N'VWXQ'X+S¶
¦Q'¡Q'X %%E l¢O6)G ,6
`94%86
}-N1)0tH
tu5N·c%+'cL(l7%
mH;w?8)g&38&3£(lL1),2-;-A&'
%#
%
A(l2
#$.;%+!-Bi
.%+#J2
-%+ hO;M%+1
&3'4%+#H;`9
]']}",%O6--6 OQ3¡ -'X¢ ² %¡R %³¡¢
¦Q'¡Q'X %%E l¢O6;j,,2
"Et,E( G'VS OQJ¡S9$RJ *¢
Z)¡ % OS9$Q
)V i$¢;V$$6-;%+/,>hu ;t5+6 e.m6)·c%5#$c,H
t+N}-%+"=`&'.%,v7%+;=yG$ q L%+mH e`p%&0%c%&'&'',
.%-/,2;%+/,J(*+]N2-4%+1
g-%+4%E&3'2-#2-&H-`
>$¢
S ² T . 'OS ' ² %¡R % ¡¢M¦pQ4 *¢;V )W.$RD¡ $
¦Q'¡Q'X %%E l¢O !X+¢O) -X$R6);%+/,&Jt+6m,
-,m6
4\6
h%+2
%+'8ct,H
t5Ky.$'N,2
j,L%
MEH 4\H)]+4mH
wL/,14%#
#
&3'2-#,c+(C8)&%
M#&H;`9 . 'OS9$¢
S '
² % ¡R % ¡¢=¦Q$ *¢;V )W.$RD¡ $L¦Q'¡Q3)X %%N *¢O
!X¢) -X$R6);%+/,&L
,
O
OtO6h%O2
%+'8^t,Ot,H
t+Dg%+,O 4J,1;%8O%+&'
¶H ]2;%&'Bi
%5L98-)&H-`9 >$¢
S ² T .©S '
² % ¡R % ¡¢=¦Q$ *¢;V )W.$RD¡ $L¦Q'¡Q3)X %%N *¢O
!X¢) -X$R6);%+/,&]6m}-%+cw0O
-6
h%+2
%+'8Yt,OH
t5 gjh&%+(l,H)I-g.-%+]%1-&3'4%#07%+#$-.-,H '
'¡Q$S¶ ¶V4XW
Z)¡ % OS9$Q
)V U$¢)V4$6u+t5u;t,O6Ct,H
5 E
H ·=;%".,6)NH;·='&''6)%;AxKH-g%5)H
IZ8)
#,&'2-D#Ojh&',mH
`9 >$¢
S ² T ' *Q ² %¡R %
¡¢=¦pQ4 *¢)V )W.$RJ¡ $L¦Q'¡Q'X %%E l¢OX¢O)-X$R6)
%/,&
,Ot +,
6}H-yG&'1
2/-6
h%O2
%+'8^t,H
Ot$Dg%-
gx0&0L&',r%+;cG""
/K]&'H
]/,-'Bi4-$L#,
#2-'-/4%+"&=_
#,"N2
#%5,7,),/8H;`9 >$¢
S ² T e *Q$RS ² % ¡R % ¡¢=¦pQ4 *¢;V )W.$RJ¡ $L¦Q'¡Q3)X %%N *¢O!X¢O) -X$R6
;%/&0 Oh6h%+2
%+'8^t-H
,K,yG,.%,5JH;/,#D-,/+4%""
/Kr%c+4-
#,OH` Z¡¢ $$Q'$¢)V4E¡¢=¦Q$ l¢)V )W.$RJX¢ ¦pQ3XhVS¶ UV4E¡ $
N'VWXQ'X+S¶ g¦Q'¡Q'X %%E l¢O6·='%¶6}O-E1)0+,H
5K,yG,.%,5o%
=-4%+
AyC(*-
/H)yC,)'&0(G$"&
.=#,O2;%+-Bi;%+&'&'.-/\&38gr%+c4M/,#%
(l4%"$)H-` c¡Q +R '-¡ :¡¢ !¡ UVX,W Q')X %" >¡+Q +RKX¢ $SiX,T !X¢O) -X$R6}%4% %51;%+4%O6),2-
D+,H
++K,,-Y|LH
x08
.-&H;}O84%##g#',m(C'(*$
#H;`
e $$S ' ² % ¡R % ¡¢=¦pQ4 *¢;V )W.$RD¡ $0¦Q'¡Q3)X %%N *¢O
!X¢O) -X$R6)
%/&0
, hhO6I!2
#&',6t,H
,uK,,-Y|LH
x08
.-&H-`2
,-.&3#g%+&',-.-/"%1)2-
&';%+=E24%1
]
%+4%N&3'2
#2,H
`9 Y *W*W.$¢
¢- UX,W
-$Q$R -'VS¶ $RK *¢^V)¡ % OS9$QDR$V i$¢)V4$6;yC%/5jh,6),H
5K-H ByGH
IG%-.c%;MyGH;,2
jh.+H)yG8"+
#]98),6
/,,m6)%+;M$#0-(*$
#H O)¡ OQ4¢)X,W!¡ $ O¢)VS¶ U¡¢;X,W
¦pQ3¡Q')X %
%E *¢6¤U
,¥$ +u Ot,6m2
8t,,OH
,N·c%,-&0I!+(l,6;!%5& e,
%+U6)·c%+'r&'7%6-]&
g%O1)/6)I!"N8" ${(l. q &'6
yG]}O&3(k6)%
yG >'&'mH)yC,/+4%""
/KM/,,-&L=-D·c
4JD¤*(l0jh&'r
h¥$H
I!#4
-.#%mxL)+'L,h,u6|>,"-2-
}#-#Jg
%+'"6O]-jh&'8A(|>,)-;%/6t,H
5N·c%,-&0I!+(lK%
=,%-B9y'KIG%
mH
x0/,-Bi1;%+&'
""'877%+;%/"H 4¢ $¡Q %\XS¶ U¡¢X¢ Z¡ % OSiXS¶ U¡+¢
6
t
hO¤i,¥$t t5O6t,,OH
5DJ%j.ANH-I!2--6
yZ-.=:%,-6
%
r|>-&3.%
·=,&'&'H q #g2-),r%K8),H` 4¢-S9$Q$¢;XS¶ U¡¢;X,W
Z¡¢ $$Q'$¢)V4N¡+¢ O¢)VS¶ U¡¢;X,W
¦pQ3¡Q')X %
%E *¢AX¢ Z)¡ % OS9$Q
Q'&V 'O *S9'VS OQ$6}%Mg/,6|wK6
,2-
\thuH
,5KyZ-.=:%,-H
-%+8)&p#%c#4;%+
/,g-]+. - `
·H e8M%
c|LH
,,-&6--&6)¦pQ3¡hX&Q %%E l¢O Z¡+¢)V4 ;S¶R
X¢ $S '-¡ R6)}%E+(eg%,6)`9&34%¶6
wL-t,H;]'
],.%
mH-`3G`y@I|?K:+O.-/7|>,(*
#,H
t$DJ%j.7F%h$64D%5G|e4%5'86;%+;cL/A·='&''H)I8)
""'877%+;%/"pjO.%E&34%+#J#%+;%+1
&H Q'X¢-R$XhVS¶ U¡¢-RE¡+¢M¦pQ3¡Q')X %
%E *¢ !X¢) X$RKX¢ ² R4S9 %NR6,O¤¶¥$ Ot O,Ot6,2
8c,H
hDJ%j.7F%h$0%;"4JjO.AF%5-&H q M.-%+08)&
%;7/,
&H;`9 =¡Q +R '¡ F¡¢ ) %"X¢-S¶ UVRªC¦Q'¡Q3)X %
¢)X,W ² R *RDX¢ Z)¡ % OS¶ *¢O p¢ *Q'¡+¢ %7$¢-S¶R !¡Q %\¡Q ²
X¢)X %7$¢
S ¦ 6;,
-6- 4\6-h%O2
%+'8
,Ot,H;wLj%.%1
D%5
O'm ,5ppJH #&H #N2H 2)5B9OL5;%+)&4OH
,
5DJ%-.G|LHF%+
/"%+;=w0;OfwL
)UH-I8-)$B9&'jO
/
/h%+1
%/J#,#+&H;` >$¢
S ² T . 'OS ' ² % ¡R %
¡¢=¦pQ4 *¢)V )W.$RJ¡ $L¦Q'¡Q'X %%E l¢OX¢O) -X$R6)
%/,&
t,;t6mm,
-,m6 4\6
h%O2;%5'8=,Ot,H
+ 4JMF%+
&'1,2
/r%
c}O."cyG8Oc,
&H q #
2
),=%E),8"-
#]98-)H-`9 >$¢
S ² T .©S ' ² % ¡R % ¡¢=¦pQ4 *¢;V )W.$RJ¡ $L¦Q'¡Q3)X %%N *¢O!X¢O) -X$R6
;%/&Jt5u O6m}-%+rwL
-6-h%+2
%+'8^t,H
© Copyright 2026 Paperzz