view src/ploki/examples/ref.pk @ 9154:a54e1016e690

<oerjan> learn E-modules are modules over a web ring. Uaneb invented them.
author HackBot
date Wed, 05 Oct 2016 15:05:28 +0000
parents ac0403686959
children
line wrap: on
line source

GOTO 496
FOR *&ref-assign*& LET $(\@ . 0) \@ . 1
KTHX \@ . 1
FOR *&ref-call&* LEET id \@ . 0
	LEET arg \@ . 1
	IF \L arg : "set"
		LEET ref $$ref$$(id)
		KTHX @OMFG @*&ref-assign*& #<ref \@#>
	FI
KTHX $($$ref$$(id))
FOR ref LEET val \@
	LET $$ref$cnt$$ += 1
	LEET ref @OMFG @*&ref-call&* #<$$ref$cnt$$ \@#>
	LET $$ref$$($$ref$cnt$$) ref
	LET $(ref) \@
KTHX ref
496 #!