           IO.puts "Invalid argument given"
       catch
         value ->
-          IO.puts "caught \#{value}"
+          IO.puts "caught #{value}"
       else
         value ->
-          IO.puts "Success! The result was \#{value}"
+          IO.puts "Success! The result was #{value}"
       after
         IO.puts "This is printed regardless if it failed or succeed"
       end

  """
  defmacro case(condition, blocks)

  @doc """
  Evaluate the given expressions and handle any error, exit
  or throw that may have happened.


      end

      try do
        throw(:sample)
      catch
        :throw, :sample ->
          IO.puts "sample thrown"
      end

  catch values also support `:error`, as in Erlang, although it is
  commonly avoided in favor of raise/rescue control mechanisms.

  ## Else clauses

