pipe and defpipe macros for Elixir