10

Có một thuật ngữ mô tả một hàm không có đối số ngắn gọn hơn "hàm không có đối số" không? (Giống như "hàm bậc cao hơn" có nghĩa là "hàm lấy hàm làm đối số hoặc trả về hàm")Chức năng không có đối số được gọi là gì?

Tôi tự nhiên nghĩ về "void", nhưng tôi cũng nghĩ về tác dụng phụ khi tôi thấy "void ". Tình hình tôi đang nghĩ đến việc là loại tìm thấy trong cuộc thảo luận này của constantly:

What is this functional "pattern" called?

nơi bạn có thể tạo ra một kết thúc mà không có đối số, không có tác dụng phụ, nhưng vẫn làm điều gì đó thú vị.

Trả lời

16

Một chức năng nullary, thường là: http://en.wikipedia.org/wiki/Arity

Cho dù một hàm có tác dụng phụ là trực giao với bao nhiêu lý lẽ nó có, vì vậy trong một ngôn ngữ mà không có chức năng bao giờ có tác dụng phụ, bạn không cần phải có thuật ngữ cụ thể hơn. Trong các ngôn ngữ có tác dụng phụ, tôi cho rằng bạn sẽ gọi nó là hàm rỗng "không có tác dụng phụ" hoặc "thuần túy".

Và sau đó với (ví dụ) ghi nhớ, một hàm có thể được tinh khiết về mặt logic ngay cả khi bạn biết rằng đằng sau hậu trường, nó có tác dụng phụ.

+0

Hah! Như thường là trường hợp khi tôi nhận được một câu trả lời ở đây, bây giờ tôi cảm thấy giống như một tổng số dork. Của couse tôi biết "unary", "nhị phân", vv, nhưng không làm cho kết nối. stackoverflow là cách tốt hơn so với Google (mà tôi đã bắt đầu với) cho các tình huống như thế này! – jtolle

3

A nullary hoặc niladic chức năng.

       

+0

Cảm ơn bạn. Tôi chưa bao giờ nghe thuật ngữ "niladic". – jtolle

4

Một Thunk?

+0

Cảm ơn. Tôi không biết "thunk" như một cái tên khác cho việc này. Nhưng "vô giá trị" là thuật ngữ chung tôi đang tìm kiếm. – jtolle

+0

Đó là, tôi nên nói rằng tôi biết "thunk" về tính toán chậm trễ, nhưng không phải là một từ đồng nghĩa cho "nullary". – jtolle

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