Great idea, +1.

--  
Atenciosamente,
Bruno Ferreira Pinto


On quarta-feira, 7 de setembro de 2011 at 23:25, Andrés Mejía wrote:

> I don't know if this was discussed already, but it's definitely a great idea!
>  
> On Wed, Sep 7, 2011 at 8:54 PM, Rodrigo Rosenfeld Rosas <[email protected] 
> (mailto:[email protected])> wrote:
> > Is there any reason why Rails decided not to support argument binding in 
> > controller actions like Merb?
> >  
> > https://github.com/wycats/merb/tree/master/merb-action-args
> >  
> >  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?
> > end
> >  end
> >  
> >  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:
> >  
> > http://perlgeek.de/en/article/5-to-6#post_14
> >  
> >  ---
> >  
> >  # file doit.pl (http://doit.pl)
> >  
> > #!/usr/bin/perl6
> > sub MAIN($path, :$force, :$recursive, :$home = '~/') {
> > # do stuff here
> > }
> >  
> > # command line
> > $ ./doit.pl (http://doit.pl) --force --home=/home/someoneelse 
> > file_to_process
> >  
> >  ---
> >  
> >  I like this style of automatic bindings.
> >  
> >  I'm not sure if one can inspect method arguments names in Ruby 1.8 though, 
> > but I guess this is possible since it seems that Merb supported this 
> > feature on Ruby 1.8 too...
> >  
> >  Was this feature already suggested on this list? If so, what was the 
> > reason it was rejected? Performance impact, maybe?
> >  
> >  Thanks in advance,
> >  
> >  Rodrigo.
> >  
> >  --  
> >  You received this message because you are subscribed to the Google Groups 
> > "Ruby on Rails: Core" group.
> >  To post to this group, send email to [email protected] 
> > (mailto:[email protected]).
> >  To unsubscribe from this group, send email to 
> > [email protected] 
> > (mailto:rubyonrails-core%[email protected]).
> >  For more options, visit this group at 
> > http://groups.google.com/group/rubyonrails-core?hl=en.
> >  
>  
>  --  
>  You received this message because you are subscribed to the Google Groups 
> "Ruby on Rails: Core" group.
>  To post to this group, send email to [email protected] 
> (mailto:[email protected]).
>  To unsubscribe from this group, send email to 
> [email protected] 
> (mailto:[email protected]).
>  For more options, visit this group at 
> http://groups.google.com/group/rubyonrails-core?hl=en.

-- 
You received this message because you are subscribed to the Google Groups "Ruby 
on Rails: Core" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/rubyonrails-core?hl=en.

Reply via email to