6
Tất cả các ví dụ tôi đã nhìn thấy cho đến nay tạo ra một "wrapper" chức năng xung quanh Basics.+
và sau đó một phần áp dụng rằng:Làm cách nào để áp dụng một phần chức năng của tệp infix như Thông tin cơ bản.
sum x y =
x + y
plusOne =
sum 1
Tuy nhiên, tôi chắc chắn rằng có một cách để tránh những gói thêm.
Ah, đó phải là lý do tại sao các tài liệu cho thấy các phương pháp với dấu ngoặc đơn. – Shepmaster
Một ý tưởng về lý do tại sao nó không phải là '(+ 1)' như trong Haskell? Và tại sao '(-) 1' có một hành vi rất tò mò ... nhưng' (+) -1' công trình có ý định :-) –
Chức năng của Infix được định nghĩa hơi khác so với các hàm thông thường. '(+ 1)' là cách bạn sẽ áp dụng một phần hàm bình thường nhưng đối với infix bạn phải bọc nó trong '()' để làm cho nó hoạt động như một hàm bình thường trước. '(-)' có chữ ký 'số -> số -> số'. Nó trừ số thứ hai từ số đầu tiên. '(-) 1' áp dụng một phần 1 làm số đầu tiên, vì vậy nó giống với' f x = 1 - x'. Nếu bạn muốn nó theo cách khác, bạn có thể sử dụng [flip] (http://package.elm-lang.org/packages/elm-lang/core/3.0.0/Basics#flip) function 'flip (-) 1 ' – robertjlooby