เริ่มดัวยทักทายกับ C
#include <stdio.h> int main(void) { printf("Hello, world!\n"); return 0; }
จะเห็นว่า C เป็นภาษาที่มี boilerplate เยอะพอสมควร แต่ก็น่าจะแพ้ภาษาถัดมาอย่าง Java
public class IJustWannaSayHelloWhyINeedToNameThis { public static void main(String[] args) { System.out.println("Hello, world!"); } }
ส่วน C++ นั้นจะต่างออกไป ตรงที่มองข้อความที่จะพิมพ์ในรูปของ stream
#include <iostream> using namespace std; int main() { cout << "Hello, world!" << endl; return 0; }
ย้ายมาดูฝั่งภาษาขั้นสูง ซึ่งเป็นที่นิยมสำหรับคนทำ web อย่าง PHP บ้าง
<?='Hello, world!'?>
สั้นดี แต่ถ้าไม่รู้จักกันมาก่อนนี่คงงงไปพักใหญ่ เทียบไม่ได้กับ Python ที่เน้นเรื่อง readability สุดๆ
print 'Hello, world!'
ลองมาดูภาษาที่หลายคนคงมึนใน syntax อย่าง Common LISP
(write-line "Hello, world!")
นอกจากจะจัดวงเล็บประหลาดแล้ว ชื่อฟังก์ชันยังประหลาดกว่าชาวบ้านเค้าด้วย ... แต่นี่ก็คงไม่ประหลาดเท่าแนวคิดที่ว่า ตัวแปรไม่สามารถเปลี่ยนค่าได้ใน Haskell
main = do putStrLn "Hello, wolrd!"
อันที่จริง ภาษาขั้นสูงก็ควรจะช่วยโปรแกรมเมอร์ให้ทำงานได้ง่ายขึ้นอยู่แล้ว เพราะถ้าเจอแบบ Brainfuck เข้าไปคงมึน
++++++++++ [>+++++++>++++++++++>+++>+<<<<-] >++.>+.+++++++..+++.>++. <<+++++++++++++++.>.+++.------.--------.>+.>.
แต่ถ้า obfuscate แล้วสวยงามอย่างนี้ก็ยอมนะ (จาก Piet Program Gallery)
สวัสดีกันมาตั้ง 9 ครั้งแล้ว ครั้งที่เหลือก็ลองออกไปค้นหาสิ่งใหม่ๆ ดูบ้างนะฮะ
No comments:
Post a Comment