Functional pattern matching
func foo((1)) { say "one" }
func foo((2)) { say "two" }
func foo (n) { say n }
foo(1) # calls the first function
foo(2) # calls the second function
foo(3) # calls the third functionfunc fib((0)) { 0 }
func fib((1)) { 1 }
func fib (n) { fib(n-1) + fib(n-2) }
say fib(12) # prints: 144func fib({.is_neg}) { NaN }
func fib({.is_zero}) { 0 }
func fib({.is_one}) { 1 }
func fib(n) { fib(n-1) + fib(n-2) }
say fib(12) # prints: 144Last updated