Is there any reason why Rails decided not to support argument binding in controller actions like Merb?
The idea is to be able to do stuff like this:
class MyController < ApplicationController
def find(term, limit=10, offset=0)
# if params[:limit] exists, it would be passed as the limit argument when the method is called by ActionDispatcher. Otherwise, 10 would be assumed
# raise BindingNotPresent unless params[:term].present?
Grails 2 will also bring such kind of feature and, as types can be optionally declared in Groovy, it is able to automatically type cast params too.
As a curious note, Perl 6 has a great feature (among several others) that will enable you to write a main function that will bind arguments from the command line to the function params names too: