Anonymous user
Parametric polymorphism: Difference between revisions
→{{header|Perl 6}}: make work
(→{{header|REXX}}: added the REXX language. -- ~~~~) |
(→{{header|Perl 6}}: make work) |
||
Line 472:
| Node (x,l,r) -> Node (f x, map_tree f l, map_tree f r)</lang>
=={{header|Perl 6}}==
<lang perl6>role BinaryTree[::T] {
has T $
has BinaryTree[T] $.left;
has BinaryTree[T] $.right;
Line 480 ⟶ 479:
method replace-all(T $value) {
$!value = $value;
$
$
}
}
Line 493 ⟶ 492:
$it.replace-all(42);
say $it.perl;</lang>
{{out}}
<pre>IntTree.new(value => 42, left => IntTree.new(value => 42, left => BinaryTree[T], right => BinaryTree[T]), right => IntTree.new(value => 42, left => BinaryTree[T], right => BinaryTree[T]))</pre>
=={{header|PicoLisp}}==
|