See the original English version of this article here
มีภาษา Programming เกิดขึ้นมากมาย แต่ก็มีบางภาษาที่ไม่เพียงยาก แต่ Software Developers ส่วนใหญ่แทบจะไม่สามารถเข้าใจพวกมันได้เลยด้วยซ้ำ ภาษาเหล่านั้นถูกเรียกว่า “Esoteric Programming Language” (หรือ Esolang) ซึ่งถูกสร้างขึ้นเพื่อพิสูจน์ Concept บางอย่าง หรือเพื่อความตลกขบขันเท่านั้น และในบทความนี้ก็คือ 5 ภาษา Programming ที่เข้าใจยากที่สุดในโลก
1. Malbolge
Malbolge ถูกคิดค้นขึ้นในปี 1998 โดย Ben Olmstead ซึ่ง Esolang ตัวนี้ ได้รับการขนานามว่าเป็น ภาษา Programming ที่มีความซับซ้อนมากที่สุด
ว่ากันว่าผู้คิดค้นเจ้าภาษา Malbolge นี้ ไม่เคยเขียน Program โดยใช้ภาษา Programming ใด ๆ มาก่อน ที่สำคัญคือต้องใช้เวลาเกือบจะ 2 ปีหลังจากที่ Olmstead คิดค้นภาษานี้ขึ้นมา ถึงจะมีคนเขียน Code ของ “Hello World” ใน Malbolge ได้
นี่คือ ตัวอย่าง Code เพื่อ Print คำว่า “Hello World!” ในภาษา Malbolge
และนี่ก็คือ ผลลัพธ์:
by the author — code executed using tio.run
2. INTERCAL
Jim Lyon และ Don Woods เป็นผู้พัฒนา INTERCAL ขึ้นในปี 1972 ก็เพื่อที่จะล้อเลียนภาษา Programming ต่าง ๆ ซึ่งในตอนแรกชื่อของภาษานี้ ก็คือ “Compiler Language With No Pronounceable Acronym”
INTERCAL มี Features มากมายที่ถูกออกแบบมาเพื่อสร้างความหงุดหงิดและข้องใจให้กับเหล่า Programmer
“เช่น: มันใช้ Modifiers อย่างคำว่า “PLEASE” โดย Compiler สามารถปฏิเสธ Code ได้หากไม่ได้ใช้คำว่า “PLEASE” ใน Code บ่อยมากพอ เพราะมันจะถือว่า Program นั้น “ไม่สุภาพเพียงพอ” แต่หากใช้ Modifiers “PLEASE” หลายครั้งมากจนเกินไป Compiler ก็จะปฏิเสธ Code นั้น เพราะว่ามัน “สุภาพมากเกินไป”
นี่คือ ตัวอย่าง Code เพื่อ Print คำว่า “Hello World!” ในภาษา INTERCAL
และนี่ก็คือ ผลลัพธ์:
by the author — code executed using tio.run
3. Brainfuck
Brainfuck (มันใช้ชื่อนี้จริง ๆ นะ -_-‘) ได้รับการพัฒนาโดย Urban Muller ในปี 1993 โดยภาษานี้ถูกคิดค้นขึ้นมาเพื่อความสนุกสนานสำหรับ Programmer เท่านั้น
แค่ชื่อของมันก็พอจะเดาได้ว่า ภาษานี้คงจะยากมากในการทำความเข้าใจสำหรับ Programmer
โดยรวมแล้วภาษานี้ประกอบไปด้วย อักขระที่แตกต่างกันเพียงแค่ 8 ตัวในการนำ Code ไปใช้งาน ซึ่งก่อนหน้านี้ Compiler ที่ถูกพัฒนาโดย Muller ใช้เพียงแค่ 296 Bytes เท่านั้น
นี่คือ ตัวอย่าง Code เพื่อ Print คำว่า “Hello World!” ในภาษา Brainfuck
และนี่ก็คือ ผลลัพธ์:
by the author — code executed using tio.run
4. COW
COW ถูกพัฒนาขึ้นในปี 2003 โดย Sean Heber ถ้าคุณได้เห็น Code ของ “Hello World” หากจะว่าไปแล้วภาษา COW ก็คล้ายกับ Brainfuck ในเรื่องของระดับความยาก และคุณจะรู้ว่า สาเหตุที่ภาษานี้ถูกตั้งชื่อว่า “COW” ก็เพราะว่ามันมีแต่คำว่า “moo” เท่านั้น แต่ก็ใช้ตัวพิมพ์ใหญ่และตัวพิมพ์เล็กเพื่อสร้างความแตกต่างของแต่ละคำสั่ง
นี่คือ ตัวอย่าง Code เพื่อ Print คำว่า “Hello World!” ในภาษา COW
และนี่ก็คือ ผลลัพธ์:
by the author — code executed using tio.run
5. Whitespace
Whitespace ถูกพัฒนาขึ้นที่ University of Durham โดย Chris Morris และ Edwin Brady โดยภาษานี้ถูกเผยแพร่ในวัน “April Fools Day” ของปี 2003
โดยทั้งหมดของภาษานี้จะใช้แค่ Space, Tab และ Linefeed ในการเขียน Program ซึ่ง Whitespace Interpreter จะไม่สนใจอักขระที่เป็น Non-Whitespace และจะถือว่า มันเป็น Comment ของ Code
นี่คือ ตัวอย่าง Code เพื่อ Print คำว่า “Hello World!” ในภาษา Whitespace
โดยใน Code ด้านล่างนี้ จะเห็นว่า แต่ละอักขระ Space, Tab หรือ Linefeed จะถูกนำหน้าด้วย Comment “S”, “T” หรือ “L” ตามลำดับ
และนี่ก็คือ ผลลัพธ์:
by the author — code executed using tio.run
ISM Technology Recruitment Ltd. (#1 Tech Recruiter in Thailand) เราเชี่ยวชาญในธุรกิจ IT Recruitment & IT Outsourcing โดยเฉพาะ เปิดทำการกว่า 30 ปี มีพนักงานทุกสายและทุกระดับทางด้าน IT ที่ได้ร่วมงานกับลูกค้าองค์กรใหญ่ที่มีชื่อเสียงและบริษัทข้ามชาติมากมาย หากคุณเป็นคน IT ที่อยากทำงานท้าทายและร่วมงานกับองค์กรชั้นนำ สามารถฝากประวัติการทำงาน (Resume) ของคุณไว้กับ ISM ได้ที่ https://www.ismtech.net/submit-your-resume แล้วคุณจะพบว่าอนาคตและโอกาสก้าวหน้ากำลังรอคุณอยู่