initializing
guards
pattern matching
more examples in readme