[Stackless] Logic Variable Thread Synchronization PEP

Jim Bowery janotforboweryspam at earthlink.net
Fri May 16 23:22:25 CEST 2003


I'd appreciate any feedback the stackless list can provide on the attached
draft PEP.

http://sourceforge.net/tracker/index.php?func=detail&aid=738948&group_id=5470&atid=355470

Basically if you want to see the idea, read section 2.5.1 at:

ftp://ftp.ps.uni-sb.de/pub/papers/ProgrammingSysLab/TOPLAS99.ps.gz

The abstract of that paper is at:

http://www.mozart-oz.org/papers/abstracts/TOPLAS99.html

The abstarct of the PEP is as follows:

Stackless Python [1] is an ideal environment within which to implement logic
variables for thread
synchronization [2]. The 3 additions required for this are 1) the addition
of the "unknown" keyword that declares a logic variable, 2) the "final"
keyword that declares a logic variable to be single-assignment and 3) the
"=:=" operator that performs a unification of a logic variable with an
expression.


begin 666 pep-lv.txt
M4$50.B!86%@-"E1I=&QE.B!,;V=I8R!687)I86)L92!4:')E860 at 4WEN8VAR
M;VYI>F%T:6]N#0I697)S:6]N.B D4F5V:7-I;VXZ(#$N.2 D#0I,87-T+4UO
M9&EF:65D.B D1&%T93H@,C P,B\P."\R-B Q-CHR.3HS,2 D#0I!=71H;W(Z
M($IA;65S($$N($)O=V5R>2 \:F%N;W1B;W=E<GEF;W) <W!A;65A<G1H;&EN
M:RYN970^#0I$:7-C=7-S+51O.B!S=&%C:VQE<W- =W=W+G1I<VUE<BYC;VTN
M#0I3=&%T=7,Z($1R869T#0I4>7!E.B!3=&%N9&%R9', at 5')A8VL-"E)E<75I
M<F5S.B R,3D-"D-O;G1E;G0M5'EP93H@=&5X="]P;&%I;@T*0W)E871E9#H@
M,38M36%Y+3(P,#,-"E!Y=&AO;BU697)S:6]N.B R+C0-"E!O<W0M2&ES=&]R
M>3H-"@T*#0I!8G-T<F%C= T*#0H@(" @4W1A8VML97-S(%!Y=&AO;B!;,5T@
M:7, at 86X@:61E86P at 96YV:7)O;FUE;G0@=VET:&EN('=H:6-H('1O#0H@(" @
M:6UP;&5M96YT(&QO9VEC('9A<FEA8FQE<R!F;W(@=&AR96%D('-Y;F-H<F]N
M:7II871I;VX at 6S)=+ at T*(" @(%1H92 S(&%D9&ET:6]N<R!R97%U:7)E9"!F
M;W(@=&AI<R!A<F4@,2D@=&AE(&%D9&ET:6]N(&]F('1H90T*(" @(")U;FMN
M;W=N(B!K97EW;W)D('1H870 at 9&5C;&%R97, at 82!L;V=I8R!V87)I86)L92P@
M,BD@=&AE#0H@(" @(F9I;F%L(B!K97EW;W)D('1H870 at 9&5C;&%R97, at 82!L
M;V=I8R!V87)I86)L92!T;R!B92!S:6YG;&4M#0H@(" @87-S:6=N;65N="!A
M;F0@,RD@=&AE("(].CTB(&]P97)A=&]R('1H870@<&5R9F]R;7, at 82 -"B @
M("!U;FEF:6-A=&EO;B!O9B!A(&QO9VEC('9A<FEA8FQE('=I=&@@86X at 97AP
M<F5S<VEO;BX-"@T*#0I2871I;VYA;&4-"@T*(" @(%-T86-K;&5S<R!0>71H
M;VX@<')O;6ES97,@=&\@9&5L:79E<B!M:6-R;W1H<F5A9',N#0H-"B @("!4
M:&4@<V5M86YT:6-S(&]F('1H<F5A9&5D(&-O;7!U=&%T:6]N<R!A<F4@=6YN
M96-E<W-A<FEL>2!C;VUP;&5X+ at T*(" @( T*(" @($QO9VEC('9A<FEA8FQE
M<R!C86X@<F5P;&%C92!V:7)T=6%L;'D at 86QL(&]T:&5R('-Y;F-H<F]N:7IA
M=&EO;@T*(" @('-E;6%N=&EC<R!W:71H('1H92!S:6UP;&4 at 86YD(&EN='5I
M=&EV92!N;W1I;VYS(&]F(&1A=&$@9FQO=RX-"B @("!&=7)T:&5R;6]R92P@
M:6UP;&5M96YT871I;VYS(&]F(&QO9VEC('9A<FEA8FQE<R!A<F4@<W1A8VML
M97-S+ at T*#0H@(" @5VAI;&4@;&]G:6,@=F%R:6%B;&5S(&-A;B!B92!U<V5D
M('1O(&EM<&QE;65N="!L;V=I8R!P<F]G<F%M;6EN9RP-"B @("!L;V=I8R!P
M<F]G<F%M;6EN9R!I<R!N;W0@<F5Q=6ER960 at 9F]R('1H92!I;7!L96UE;G1A
M=&EO;B!O9 at T*(" @(&QO9VEC('9A<FEA8FQE<RX-"@T*(" @($9O<B!A(&9U
M;&P at 9&5S8W)I<'1I;VX@;V8@=&AE(&)E;F5F:71S(&]F(&QO9VEC('9A<FEA
M8FQE<R!I;@T*(" @(&1I<W1R:6)U=&5D(&-O;F-U<G)E;G0 at 8V]N<W1R86EN
M="!P<F]G<F%M;6EN9RP@<V5E('1H92!P87!E<B -"B @(" B169F:6-I96YT
M($QO9VEC(%9A<FEA8FQE<R!F;W(@1&ES=')I8G5T960 at 0V]M<'5T:6YG(B!;
M,ETN#0H-"B @("!&;W(@82!D97-C<FEP=&EO;B!A;F0 at 97AA;7!L97,@;V8@
M=&AE(&YE=R!L86YG=6%G92!F96%T=7)E<R -"B @("!R97%U:7)E9#H@(G5N
M:VYO=VXB+" B9FEN86PB(&%N9" B/3H](BP@<V5E(%-E8W1I;VX@,BXU+C$@
M6VEB:61=+ at T*#0H-"E)E9F5R96YC97,-"@T*(" @(%LQ72!015 @,C$Y+"!3
M=&%C:VQE<W, at 4'ET:&]N+"!-8TUI;&QA;@T*(" @(" @("!H='1P.B\O=W=W
M+G!Y=&AO;BYO<F<O<&5P<R]P97 M,#(Q.2YH=&UL#0H-"B @("!;,ET at 169F
M:6-I96YT($QO9VEC(%9A<FEA8FQE<R!F;W(@1&ES=')I8G5T960 at 0V]M<'5T
M:6YG+ T*(" @(" @("!B>2!(87)I9&DL=F%N(%)O>2P at 0G)A;F0L($UE:&PL
M(%-C:&5I9&AA=7(@86YD(%-M;VQK82 -"B @(" @(" @:'1T<#HO+W=W=RYM
M;WIA<G0M;WHN;W)G+W!A<&5R<R]A8G-T<F%C=',O5$]03$%3.3DN:'1M; T*
M#0H-"D-O<'ER:6=H= T*#0H@(" @5&AI<R!D;V-U;65N="!H87, at 8F5E;B!P
M;&%C960@:6X@=&AE('!U8FQI8R!D;VUA:6XN#0H-"@T*# T*3&]C86P at 5F%R
M:6%B;&5S. at T*;6]D93H@:6YD96YT960M=&5X= T*:6YD96YT+71A8G,M;6]D
M93H@;FEL#0IS96YT96YC92UE;F0M9&]U8FQE+7-P86-E.B!T#0IF:6QL+6-O
0;'5M;CH at -S -"D5N9#H-"@``
`
end

_______________________________________________
Stackless mailing list
Stackless at www.tismer.com
http://www.tismer.com/mailman/listinfo/stackless




More information about the Stackless mailing list