我想在一個lambda中使用一個變量,並使結果Proc
保留該值,就像它是一個常數一樣。固定值lambda
如果我做了以下
x = 5
f = lambda {x}
x = 4
f.call
我得到4.如何構建一個lambda(或PROC對象,或類似的東西),所以它總是返回什麼x
在其施工時,無論x
的價值在當時的價值?
我有一個(可能很大)的一組動態生成的類,我希望每個人對於某個常量(連接客戶端的主機名,FWIW)都有不同的值。由於我無法控制的原因,我不得不堅持使用多種子體系結構 - 我無法修改代碼,以便各種主機名作爲參數傳遞給構造函數。
你真的需要它是一個lambda? – Kroltan
我需要能夠在代碼中使用猴子補丁:'myclass.class_eval {define_method :: new_method,maybe_lambda_expression}' –
@AndrewCone你能解釋一下你實際上想要做什麼嗎?真的,非假設的,未經編輯的條款? –