????????????bar????????????????????????????bar(5)???????????????????12????????????????bar(5??12)?????????????????

???????Щ?????????????? Haskell ?? OCaml?????е?????????????????????????

????????????????????foo??????OCaml????д????????

    let foo = fun a -> 
    
      fun b -> 
        a * a + b * b

????????????????bar??????OCaml????д????????

    let bar = fun a b -> 
    
      a * a + b * b

???????????????????“???????”???????????“???????”??

??????Javascript?????????OCaml??????foo??????bar????????????????????????????????????????

    # foo 3 4;; 
    - : int = 25
    # bar 3 4;; 
    - : int = 25

??????????????????????????????????????????????

    # let foo5 = foo 5;; 
    val foo5 : int -> int = <fun> 
    
    # let bar5 = bar 5;; 
    val bar5 : int -> int = <fun> 
    # foo5 12;; 
    - : int = 169
    # bar5 12;; 
    - : int = 169

???????????????????????????????????

fun arg1 arg2 ... argN -> exp

????????????????????????д??

fun arg1 -> fun arg2 -> ... -> fun argN -> exp

??????????????????????????

?????? ???????????????????????????е?????????????????????μ??????

?????? ??????????????????????????????????????????????????

?????? ????????????????????????Щ???????á?

?????? ??Щ????????? Haskell??OCaml?????е??κ????????????????????????????