通常のパターン

def plus(a, b)
  a + b
end

デフォルト値ありのパターン

下の場合は引数を渡さなくてもエラーにならない(全て山本になる)

def name(n = "山本")
  puts "僕は#{n}です"
end

キーワード引数

def appointment(:patient, :day, :time)
  ~~
end

メソッドを渡すパターン(ブロック引数)

def method(&block)
  block.call
end

method{ puts "hello" }
#=> "hello"

引数に*をつけるパターン(可変長引数)