Skip to content

Instantly share code, notes, and snippets.

fac = lambda{|n| n.zero? ? 1 : n * fac.call(n-1)}
# Ruby 1.8.7
lambda{|n| (fac=lambda{|n| n.zero? ? 1 : n * fac.call(n-1)}).call(n) }
# Ruby 1.9
->(n){(fac=->(n){n.zero? ? 1 : n * fac.(n-1)}).(n)}
(λ f. f 3) (λ x. x + 2)
# Ruby 1.8.7
lambda{|f| f[3]}[lambda{|x| x+2}]
# Ruby 1.9
->(f){f.(3)}.(->(x){x+2})
#rails/actionpack/lib/action_view/helpers/form_helper.rb:508
if @object_name.sub!(/\[\]$/,'')
if object ||= @template_object.instance_variable_get("@#{Regexp.last_match.pre_match}") and object.respond_to?(:to_param)
@auto_index = object.to_param
else
raise ArgumentError, "object[] naming but object param and @object var don't exist or don't respond to to_param: #{object.inspect}"
end
end
[?x,?k,?c,?d].map(&'_-96').fold(&'+')
if ( window.addEventListener ) {
var kkeys = [], konami = "38,38,40,40,37,39,37,39,66,65";
window.addEventListener("keydown", function(e){
kkeys.push( e.keyCode );
if ( kkeys.toString().indexOf( konami ) >= 0 )
window.location = "http://example.com/";
}, true);
}
if ( window.addEventListener ) {
var kkeys = [], konami = "38,38,40,40,37,39,37,39,66,65";
window.addEventListener("keydown", function(e){
kkeys.shift();
kkeys[9] = e.keyCode;
if ( kkeys.toString() == konami )
window.location = "http://example.com";
}, true);
}
def Y
lambda { |f| f.call(f) }.call(
lambda do |g|
yield(lambda { |*n| g.call(g).call(*n) })
end)
end
Y { |this| lambda { |n| n == 0 ? 1 : n * this.call(n - 1) } }.call(12)
#=> 479001600