ทีมงาน Facebook ออกมาเผยว่าระบบจัดการสแปมสำหรับเว็บไซต์ขนาดใหญ่ระดับ Facebook เขียนด้วยภาษาที่บางคนอาจเพิ่งเคยได้ยินชื่ออย่าง Haskell
Haskell เป็นภาษาที่ถูกออกแบบในปี 1990 จากฝั่งชุมชนนักวิชาการที่ต้องการสร้างภาษาโปรแกรมตัวอย่างขึ้นมาสักตัว แนวทางของ Haskell คือภาษาโปรแกรมที่เรียกว่า "Purely Functional" คือโปรแกรมหนึ่งตัวสร้างขึ้นจาก "ฟังก์ชัน" หลายตัวที่ทำงานเป็นอิสระจากกัน งานสามารถรันขนานกัน (concurrent) ได้หมด ไม่ต้องรอรันต่อเนื่องตามกันแบบภาษาโปรแกรมทั่วไป
Facebook ตัดสินใจเลือก Haskell ด้วยเหตุผลหลักคือระบบสแปมต้องทำงานเร็ว มีอัตราความหน่วง (latency) ต่ำเพื่อหยุดยั้งการโพสต์สแปมในแทบจะทันที แถมแนวทางพัฒนาระบบสแปมของ Facebook คือแยกตัวกฎ (rules) สำหรับแยกแยะสแปมออกมาจากตัวโปรแกรมหลัก เพื่อให้แก้ไขกฎได้ง่ายถ้าเจอสแปมรูปแบบใหม่ๆ ที่บุกเข้ามา
บริการออนไลน์ที่มีผู้ใช้จำนวนมากย่อมต้องการภาษาโปรแกรมที่ตอบสนองด้านนี้ นอกจาก Haskell แล้ว ภาษารุ่นใหม่อย่าง Google Go และ Mozilla Rust ก็แสดงให้เห็นความต้องการของโปรแกรมเมอร์เช่นกัน ถึงแม้ประสิทธิภาพของ Go/Rust อาจไม่ดีเท่า Haskell แต่หัดเขียนง่ายกว่ามาก
ที่มา - Wired
Comments
งาน ICFP คนใช้ Haskell แล้วชนะเยอะเหมือนกัน
ผมไม่เข้าใจเลย ตามไม่ทันอยากรู้เรื่องบ้าง
ต้องเลือก Haskell สิ เพราะคน Design ภาษา Haskell ทำงานอยู่ที่ FB นี่
จำได้ว่าภาษานี้กว่าจะอ่านพอรู้เรื่องเล่นเป็นชั่วโมงๆอยู่
เป็นสัปดาห์ครับ
ลองเล่น tutorial ที่ haskell.org แล้วก็ "แอบ" ง่ายนะครับ
แต่ละ statement อ่านเป็นเสียงออกมาเป็นภาษาคนได้เลย
ง่ายตอนรู้ว่าเอาอันนี้มาต่อกับอันนี้ได้อะไรครับ
ถ้าตั้งชื่อฟังก์ชัน / ตัวแปรดีๆ หน่อย ก็แทบอ่านได้เหมือนภาษาอังกฤษเลย
แต่มันจะยากตอน error กะ debug เนี่ยแหละ ;___;
ที่เลือกใช้ภาษา Haskell คงจะเพราะความสามารถในการทำ pattern matching ของตัวภาษาเองมากกว่าที่เป็นเหตุผลหลัก