Ключевым моментом, который следует помнить, является то, что вы можете использовать только тот синтаксис, в котором вы пропускаете хеш-символы {}, если хеш-параметр является последним параметром функции. Таким образом, вы можете сделать то, что сделал Аллин, и это сработает. Также
def login_success(name, hsh)
puts "User #{name} logged in with #{hsh[:some_hash_key]}"
end
И вы можете позвонить с
login_success "username", :time => Time.now, :some_hash_key => "some text"
Но если хэш не является последним параметром, вы должны окружить элементы хеша {}.