Ditambahkan
Baru menemukan dua pertanyaan terkait
/programming//a/2582804/156458
Dalam bahasa pemrograman, dari Bahasa Pemrograman Pragmatik Michael Scott
Secara umum, nilai dalam bahasa pemrograman dikatakan memiliki status kelas pertama jika dapat dilewatkan sebagai parameter, dikembalikan dari subrutin, atau ditugaskan ke dalam variabel. Jenis sederhana seperti integer dan karakter adalah nilai kelas pertama di sebagian besar bahasa pemrograman. Sebaliknya, nilai "kelas dua" dapat dilewatkan sebagai parameter, tetapi tidak dikembalikan dari subrutin atau ditugaskan ke dalam variabel, dan nilai "kelas tiga" bahkan tidak bisa diteruskan sebagai parameter.
Label adalah nilai kelas tiga di sebagian besar bahasa pemrograman, tetapi nilai kelas dua di Algol. Subrutin menampilkan variasi terbanyak. Mereka adalah nilai kelas pertama dalam semua bahasa pemrograman fungsional dan sebagian besar bahasa scripting. Mereka juga nilai-nilai kelas pertama dalam C # dan, dengan beberapa batasan, dalam beberapa bahasa imperatif lainnya, termasuk Fortran, Modula-2 dan -3, Ada 95, C, dan C ++. 11 Mereka adalah nilai kelas dua di sebagian besar bahasa imperatif lainnya, dan nilai kelas tiga di Ada 83.
Apa dasar matematika untuk nilai-nilai kelas pertama / kedua / ketiga dalam bahasa pemrograman?
Terminologi mengingatkan saya pada logika urutan pertama / kedua, tetapi apakah mereka terkait?
Tampak bagi saya bahwa perbedaan di antara mereka adalah kasus spesifik mana nilai dapat digunakan
- dilewatkan sebagai parameter,
- kembali dari subrutin, atau
- ditugaskan ke dalam variabel.
Mengapa kasus spesifik itu penting, sementara kasus lain tidak disebutkan?
Terima kasih.