2010-08-03 56 views
5

FsUnit mã nguồn chứa một định nghĩa khác thường:Định nghĩa chữ "id" ở đâu?

let be = id

FSI đầu ra:

val was : ('a -> 'a)

Ngữ nghĩa của "id" là hình thức trong ngoặc đơn của tuyên bố sau:

let be x = x

Đầu ra FSI:

val be : 'a -> 'a

Bạn có thể thấy sự khác biệt nhỏ: ví dụ thứ hai thay thế biểu là đúng với đúng, trong khi cú pháp đầu tiên sẽ đại diện cho nó như (true).

Câu đố của tôi là tôi không thể tìm thấy bất kỳ tham chiếu nào đến "id" trong tham chiếu ngôn ngữ F #, không được mô tả trong sách "Lập trình F #". Hơn nữa, "id" không phải là một từ khóa dành riêng, tôi có thể xác định gán "id" cho một cái gì đó khác, và sau đó tôi không còn có thể sử dụng nó theo cách được hiển thị trong ví dụ đầu tiên. Vì vậy, tôi tự hỏi nếu có bất kỳ tài liệu F # nào mô tả chữ này và ngữ nghĩa của nó.

Trả lời

12

Hầu hết các hàm dựng sẵn này được xác định trong thư viện FSharp.Core, mô-đun Microsoft.FSharp.Core.Operators.

Chúng được ghi lại trên MSDN. Đây là id: http://msdn.microsoft.com/en-gb/library/ee353607.aspx

+0

Tôi hiểu. Cảm ơn, Tim. –

1

Điều này hoàn toàn không giống chữ. Nó trông giống như một hàm. Cụ thể, đoán bằng chữ ký và tên, nó trông giống như chức năng nhận dạng.

Các vấn đề liên quan