Branch :
def zero = 0
zero
zero
0
def one_two_three = [1, 2, 3]
one_two_three
one_two_three
[1, 2, 3]
def double = fn (x) { x * 2 }
double
double
fn (x) { x * 2 }
double(200)
400
double(zero)
0
def double_tuple = macro (x) do
quote do
x = ^ unquote(x)
{x, x}
end
end
double_tuple
double_tuple
macro (x) do
quote do
x = ^ unquote(x)
{x, x}
end
end
double_tuple(200)
{200, 200}
double_tuple(zero)
{0, 0}
double_tuple(one_two_three)
{[1, 2, 3], [1, 2, 3]}
def reverse = fn {
(x) { reverse(x, []) }
([], acc) { acc }
([a | b], acc) { reverse(b, [a | acc]) }
}
reverse
reverse
fn {
(x) { reverse(x, []) }
([], acc) { acc }
([a | b], acc) { reverse(b, [a | acc]) }
}
reverse([1, 2, 3])
[3, 2, 1]
def reverse = fn {
(x) { reverse(x, []) }
([], acc) { [:reversed | acc] }
([a | b], acc) { reverse(b, [a | acc]) }
}
reverse
reverse
fn {
(x) { reverse(x, []) }
([], acc) { [:reversed | acc] }
([a | b], acc) { reverse(b, [a | acc]) }
}
reverse([1, 2, 3])
[:reversed, 3, 2, 1]
def reverse = fn {
(x) { reverse(x, []) }
([], acc) { acc }
([a | b], acc) { reverse(b, [a | acc]) }
}
reverse
reverse
fn {
(x) { reverse(x, []) }
([], acc) { acc }
([a | b], acc) { reverse(b, [a | acc]) }
}
reverse([1, 2, 3])
[3, 2, 1]
def reverse = fn (x) { List.reverse(x) }
reverse
reverse
fn (x) { List.reverse(x) }
reverse([1, 2, 3])
[3, 2, 1]
module()
KC3
search_modules()
[KC3]
reverse
fn (x) { List.reverse(x) }
def reverse = fn (x) { [:reversed | List.reverse(x)] }
reverse
reverse
fn (x) { [:reversed | List.reverse(x)] }
reverse([1, 2, 3])
[:reversed, 3, 2, 1]
module()
KC3
search_modules()
[KC3]
reverse
fn (x) { [:reversed | List.reverse(x)] }
def reverse = fn (x) { List.reverse(x) }
reverse
reverse
fn (x) { List.reverse(x) }
reverse([1, 2, 3])
[3, 2, 1]
module()
KC3
search_modules()
[KC3]
reverse
fn (x) { List.reverse(x) }