ทำไมประเภทตัวเลือก Scala ไม่ถูกเรียกว่าอาจจะเหมือนกับใน Haskell
อาจทำให้รู้สึก "ความหมาย" มากขึ้นสำหรับฉัน แต่บางทีตัวเลือกอาจมีพฤติกรรมที่แตกต่างกันซึ่งฉันไม่ทราบ
มีเหตุผลใดเป็นพิเศษหรือไม่ที่ตัวเลือกใน Scala ไม่ได้ถูกเรียกว่าอาจจะ?
ทำไมประเภทตัวเลือก Scala ไม่ถูกเรียกว่าอาจจะเหมือนกับใน Haskell
อาจทำให้รู้สึก "ความหมาย" มากขึ้นสำหรับฉัน แต่บางทีตัวเลือกอาจมีพฤติกรรมที่แตกต่างกันซึ่งฉันไม่ทราบ
มีเหตุผลใดเป็นพิเศษหรือไม่ที่ตัวเลือกใน Scala ไม่ได้ถูกเรียกว่าอาจจะ?
คำตอบ:
Scala นอกจากนี้ยังเป็นแรงบันดาลใจ Ocaml ซึ่งใช้ตัวเลือก
ตัวเลือกเป็นประเภทมาตรฐาน Ocaml ที่สามารถเป็นได้
None
(ไม่ได้กำหนด) หรือSome x
ที่ x สามารถเป็นค่าใด ๆ ตัวเลือกที่ใช้กันอย่างแพร่หลายใน Ocaml เพื่อแสดงค่าที่ไม่ได้กำหนด (เช่น NULL ใน C แต่ในรูปแบบที่ปลอดภัยและหน่วยความจำ)
ฉันคิดว่าชื่อที่เลือกนั้นเป็นเรื่องของรสนิยม
Option
ได้ชัดคือมันเป็นoptional
คุณค่า (ไม่ว่าคุณจะได้มาหรือไม่สนใจ) Maybe
แสดงถึงระดับความไม่แน่นอนในส่วนของโปรแกรมเมอร์ อาจจะมีค่าหรือไม่ ฉันไม่รู้ .. ฉันควรจะได้รับสิ่งที่คุ้มค่าหรือไม่? ถ้อยคำนั้นoptional value
ฟังดูมีเจตนามากขึ้นในความคิดของฉัน
คำถามที่ดีกว่าที่นี่จะเป็นเหตุผลที่ตัวเลือกประเภทของ Haskell Maybe
จะเรียกว่า ประเภทตัวเลือก ML ของน่าจะเป็น grandaddy option
ทุกประเภทตัวเลือกและก็เรียกว่า
ไม่ว่าในกรณีใด ๆ นี่เป็นคำถามเชิงศัพท์ดังนั้นจึงไม่มีคำตอบที่ชัดเจน คนที่เลือกชื่อใน Haskell ชอบมันมากกว่า
option
optional
ในกรณีนี้ตัวเลือก (หลายตัว) จะลดลงเหลือเพียงสองตัวเลือก: มีหรือไม่มี
Maybe