Monthly Archives: April 2013

พูดถึง Ruby Block

วันก่อนอ่านไปเห็น tweet ของพี่ @wiennat พูดถึง syntax block ของ Ruby ตามนี้

จะส่ง function ไปเป็น parameter ของ Ruby นี่ทำลำบากแหะ ต้องสร้างเป็น Proc แทนเอาเหรอเนี่ย https://twitter.com/wiennat/status/324438254210396160

แบบนั้นก็ได้แหลครับ แต่มันไม่สวยแบบ javascript หรือ python ที่ส่งไปเป็น callable เลย (จริงๆ คือขี้เกียจ) https://twitter.com/wiennat/status/324439144463990786

ทำให้นึกถึงตอนเริ่มเขียน Ruby ใหม่ๆ ที่เคยสงสัยว่าทำไมมันต้องแยก method ออกจาก function (Proc, lambda) ด้วย และมีความรู้สึกว่ามันสับสน และไม่เท่เลย ตอนนั้นผมคิดว่ามันต้องมีแค่อย่างเดียวอย่างที่ Javascript ทำสิถึงจะเท่ ความคิดนี้เป็นความคิดที่่ติดมาจากที่เคยศึกษา Haskell กับ Scala มาใหม่ๆ ณ ช่วงนั้น แต่ตอนนี้ผมเห็นประโยขน์ของการแยกกันนี้แล้ว เลยเอามาเล่าสู่กันฟัง

Continue reading