PP
Size: a a a
R
R
ʰ
ʰ
ʰ
ʰ
--> (def point x y
... (ret x &x
... y &y
... (if (len &args)
... (ret other &args)
... )
... )
... )
--> (set a (point 14 88))
(x 14 y 88)
--> (import "modify.rf")
--> (modify)
Error! Too few arguments to macro call
--> (modify 12 &a)
Error! modify: invalid arguments
--> (modify x &a 0)
(x 0 y 88)
ʰ
ʰ
(def modify member structure
(if (+ (!= (len &member) 1)
(!= (type &member) token)
)
(raise "modify: invalid arguments")
)
(if (len (search &member &structure))
(for x &structure
(if (== (type &x) token)
(if (* (== &x &member)
(len &args)
)
(get x args)
else
(get x)
(struct &x &structure)
)
)
)
else
(ret &structure &member &args)
)
)
ʰ
R
𝘎(
𝘎(
𝘎(
𝘎(
𝘎(
𝘎(
𝘎(