Pointers and references: Difference between revisions

Content added Content deleted
(Added EchoLisp)
Line 444: Line 444:
to walkThrough() { require(open) }
to walkThrough() { require(open) }
}
}

=={{header|EchoLisp}}==
No pointers in EchoLisp. '''Boxes ''' or vectors can be used to perform call-by-reference operations.
<lang scheme>
(define B (box 42))
→ B ;; box reference
(unbox B)
→ 42 ;; box contents

;; sets new value for box contents
(define ( change-by-ref abox avalue)
(set-box! abox avalue) )
(change-by-ref B 666)
→ #[box 666]
(unbox B)
→ 666
</lang>


=={{header|Forth}}==
=={{header|Forth}}==