26 คะแนน โดย jamiecha 2025-07-28 | 7 ความคิดเห็น | แชร์ทาง WhatsApp

สวัสดีครับ/ค่ะ ขอแชร์บทความที่อธิบาย "Monad" ซึ่งเป็นแนวคิดสำคัญของการเขียนโปรแกรมเชิงฟังก์ชันได้ค่อนข้างเข้าใจง่าย
บทความนี้ค่อย ๆ พาให้ทำความเข้าใจผ่านตัวอย่างเล็ก ๆ ที่อ้างอิงจากภาษา Rust

7 ความคิดเห็น

 
t7vonn 2025-08-05

ขอบคุณสำหรับบทความดีๆ

 
roxie 2025-08-05

ที่บริษัทได้ใช้ Rust ด้วย น่าอิจฉาจัง

 
carnoxen 2025-07-30

อยากให้แสดงโค้ดเป็นข้อความแทนรูปภาพครับ

 
2k1m0 2025-08-06

เห็นด้วย

 
simnalamburt 2025-07-29

เป็นบทความที่ดีครับ! แต่คำอธิบายเกี่ยวกับ endofunctor มีข้อผิดพลาดอยู่ จึงน่าจะดีหากมีการแก้ไข https://x.com/simnalamburt/status/1950074970647761168?s=46

 
jamiecha 2025-07-29

ชี้ประเด็นได้อย่างแม่นยำครับ!
ดูเหมือนว่าจะมีความเข้าใจคลาดเคลื่อนเกิดขึ้นในกระบวนการนำเนื้อหาที่เขียนด้วยภาษาอื่นมาปรับใช้โดยอิงตาม Rust
เนื่องจากระบบชนิดข้อมูลของ Rust ก่อเป็นหมวดหมู่เดียว การแยกความแตกต่างระหว่าง endofunctor กับ functor ทั่วไปจึงน่าจะไม่มีความหมาย
เสียดายที่ในบล็อกไม่มีฟังก์ชันคอมเมนต์ คงต้องลองสอบถามดูว่าสามารถขอให้แก้ไขได้หรือไม่ครับ

 
simnalamburt 2025-07-29

ไม่ใช่ว่าทุกอย่างจะเป็น endofunctor ทั้งหมด ของที่มี type parameter หลายตัวอย่างเช่น Result<T, E> นั้นไม่ใช่ 𝒞 → 𝒞 แต่เป็น Result : 𝒞 × 𝒞 → 𝒞 ดังนั้นแบบนี้จึงเป็น bifunctor