Closure: Lazy Evaluation And Eager Evaluation
Last updated
Last updated
Lazy Evaluation
Closure Lazy Evaluation And Eager Evaluation
ν¨μ λ΄λΆμ μ§μ κ°μ²΄λ₯Ό μμ±νκ³ νμμ μΈ λ²μλ₯Ό μ¬μ© νλ μΌκΈ ν¨μλ₯Ό λ€λ£° λ μ§μ° μ°μ°μ μμ§ λ§μμΌνλ€.
Lazy Evaluationμ μνμ¬ addend
λ λ°λ³΅λ¬Έμ κ°μ₯ λ§μ§λ§ κ°μΈ 1000μΌλ‘ μ°μ λλ€. κ·Έ μ΄μ λ ν΄λ‘μ κ° νμμ μΈ λ²μλ₯Ό μ¬μ© νλ μΌκΈ ν¨μλΌλ κ²μ μλ€.
λμ μμ
λ°λ³΅λ¬Έμ μν νλ©° funcs
λΌλ Listμ ν¨μμ μ€λΈμ νΈ μ£Όμλ₯Ό λ΄μλλ€.
λ°λ³΅λ¬Έ μνκ° λλλ©΄ ν¨μμ μ£Όμκ°μ΄ λ΄κ²¨μλ Listλ₯Ό λ°ννλ€.
adders
λ₯Ό λ€μ μν νλ©΄μ λ΄λΆμ μ‘΄μ¬νλ ν¨μ μ€λΈμ νΈ μ£Όμ κ°μ μ΄μ© νμ¬ Callable κ°μ²΄λ₯Ό μ€ν μν¨λ€.
μ€λΈμ νΈ μ£Όμκ° λ΄κ²¨μ Έ μμΌλ©° μ΅μ’
μ μΌλ‘ λ©λͺ¨λ¦¬μ λ¨μ μλ addend
κ°μΈ 1000μ μ΄μ© νκ³ xμ νλΌλ―Έν° μ λ³΄μΈ 5λ₯Ό μ¬μ© νκ² λλ€.
κ²°κ³Ό
Eager Evaluation
Lazy Evaluation λ°©μμ κ°μ λ‘ Eager EvaluationμΌλ‘ λ³κ²½ ν μ μλ€. λ©λͺ¨λ¦¬μ λ§μ§λ§ κ°μ μ¬μ© νλ λ°©μμ λΉλμ΄ λ³΄λ©΄ default κ°μ μ§μ ν΄μ£Όμμ λ μμ μν¬ μ μμ κ²μ΄λ€.
κΈ°μ΅ ν΄λ³΄μλ©΄ νμ΄μ¬μ μΈμ λ κ°μ²΄λ₯Ό μ°Έμ‘°νλ κ°μ μ¬μ©νμ¬ μ¬μ¬μ©λ₯ μ λνλ€.
λ¬λΌμ§ μ
μ¬κΈ°μ μ€μν ν¬μΈνΈλ ν¨μ νλΌλ―Έν°μ κΈ°λ³Έ κ°μ μ¬μ© νλ€λ μ μ΄λ€. _addend=addend
λ νμ¬ κ°μ ν¨μ λ΄λΆμμ μ¬μ© ν μ μλλ‘ κ°μ²΄ μ°Έμ‘°κ°μ λ£μ΄μ£Όμλ€.
Lambda λ΄λΆμμ Print ν μ μλ€λ κ²μ λ νλ² λλΌμ΄ μ¬μ€μμ μ μ μλ€.
κ²°κ³Ό