In Groovy you can set default values for optional closure parameters, like so:
static at = { year=null, geo=null ->
...
}
I think that'll clear ya up. :)
update
Ok, I know you don't need it anymore, but I made this for my own use when I was learning Groovy, and I thought someone might find it helpful:
{ -> ... }
a closure with exactly zero parameters. Groovy will blow up if you call it with params.{ ... }
a closure with one optional parameter, named "it"{ foo -> ... }
a closure with one parameter named "foo" (foo can be any type){ foo, bar, baz -> ... }
a closure with 3 parameters named "foo", "bar" and "baz"{ String foo -> ... }
You can specify the type of the parameters if you like