ทำไมประเภทตัวเลือก 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