Skip to content

Instantly share code, notes, and snippets.

View Shinpeim's full-sized avatar

Shinpei Maruyama Shinpeim

View GitHub Profile
var f = function(a){
return a + 1;
}
var g = function(b){
return - b
}
function compose(f, g){
return function(a){
var f = function(a){
return a + 1;
}
var g = function(b){
return - b
}
function compose(f, g){
return function(a){
nyan = ->(a, b){a + b}
curried_nyan = nyan.curry
p curried_nyan.(1) # => Proc "->(b){1 + b}"
p curried_nyan.(1).(2) #=> 3
nyan = ->(a, b){a + b}
curried_nyan = nyan.curry
fun_list = [1, 2, 3, 4, 5, 6].map(&curried_nyan) # => [->(b){1 + b} , ->(b){2 + b}...]
p fun_list.first.(1) #=> 2
nyan = ->(a, b){a + b}
curried_nyan = nyan.curry
p [1, 2, 3, 4, 5, 6].map(&curried_nyan.(4)) # => [5, 6, 7, 8, 9, 10]
nyan = ->(a, b){a + b}
curried_nyan = nyan.curry
p [1, 2, 3, 4, 5, 6].map(&curried_nyan.(4))
user = User.first
duped = user.dup
duped.changes # => {"email"=>["","[email protected]"],"name"=>["","shinpei"]}
user = User.first
user.email = 'nyan'
user.changes # => {"email"=>["[email protected]", "[email protected]"]}
duped = user.dup
duped.name_chanded? # => true
duped.changes # => {"email"=>["", "[email protected]"]], "name"=>[""=>"shinpei"]}
require 'benchmark'
n = 500000
def lm
lambda{1}.call
end
def bg
begin
#!/bin/sh
php -S localhost:8000