# access tuple values
(def t [:a :b :c]) # test tuple
(first t)
# => :a
(last t)
# => :c
(slice t 0 2)
# => (:a :b)
# Index as function
(0 t)
# => :a
# Tuple as function
(t 0)
# => :a
# With destructuring
(let [[_ b _] t]
b)
# => :b
# With pattern matching
(match t
[:a _ :d] (print "does not match")
[:a b :c] (print b)
_ (print "anything"))
# => :b