Đăng ký nhận RSS Feed

<?php echo 'Welcome to my blog!' ?>

one true brace

viết về những thứ tớ quan tâm, thế là đủ

Những ngôn ngữ lập trình thú vị

Có rất nhiều ngôn ngữ lập trình, và nếu ngồi liệt kê hết thì chắc tới sáng tớ cũng không kết thúc được. Tớ đã từng tiếp xúc với khá nhiều ngôn ngữ: từ PHP, JavaScript đến Perl, từ Pascal, C đến Python, Ruby,… nhưng nếu hỏi đâu là ngôn ngữ tạo ấn tượng mạnh nhất, thì dứt khoát tớ không thể không nhắc đến Brainfuck, WhitespacePiet.

1. Brainfuck

Theo Wikipedia, ngôn ngữ này ra đời năm 1993, với mục tiêu trở thành ngôn ngữ có compiler mang kích thước khiêm tốn nhất (dưới 200 byte!).

Cả ngôn ngữ chỉ gồm 8 command, mỗi command là 1 ký tự: > < + - . , [ ]

Hoàn toàn không có sự xuất hiện của các ký tự alphabet, hay số má 0 - 9, hay bất cứ gì khác. Thế nên đoạn chương trình in ra dòng chữ “Hello World” của Brainfuck trông thật ấn tượng:

++++++++++[>+++++++>++++++++++>+++>+<<<<-]>++.>+.+++++++..+++.>++.<<+++++++++++++++.>.+++.------.--------.>+.>.

Tớ từng dành ra không dưới 15 phút đánh vật với đoạn code này để thay chữ “Hello World” bằng tên tớ, và tin tớ đi, đánh vật có nghĩa là đánh vật đấy!

2. Whitespace

Ngôn ngữ thú vị thứ 2 mang tên Whitespace, và chắc bạn có thể đoán được, nó bao gồm các… whitespace. Với chỉ 3 loại ký tự: khoảng trắng, tabdấu xuống dòng, việc phải “đọc” một đoạn code viết bằng Whitespace biến Brainfuck trở thành ngôn ngữ dễ đọc nhất trên đời.

Bạn có thể nhìn thử đoạn chương trình Hello World viết bằng Whitespace ở đây, nếu muốn thử trình độ đọc hiểu của mình.

3. Piet

Nếu như khi code bằng các ngôn ngữ lập trình khác, bạn “chơi với các ký tự”, thì khi code bằng Piet, bạn sẽ… tập vẽ tranh trừu tượng.

Hãy nói “Hello World” bằng Piet:

Hello World

Hay giải thử bài toán Tháp Hà Nội với ngôn ngữ này:

Towers of Hanoi

Nếu bạn cũng như tớ, không mê xem tranh trừu tượng thì có thể sẽ thích “bức tranh” này:

Pi

Bạn nghĩ chương trình này làm được gì? Dĩ nhiên là tính toán số Pi! Và đoán xem làm thế nào để tăng hay giảm độ chính xác của nó? Hãy làm cho hình tròn to lên hoặc bé lại…

Cả 3 ngôn ngữ tớ vừa nêu đều được xếp vào loại esoteric programming language (hay esolang). Danh sách các ngôn ngữ như vậy bạn có thể xem ở esolang wiki, và tớ nghĩ bạn sẽ không ngạc nhiên mấy, khi biết rằng bên cạnh Brainfuck còn có Brainfuck++

Bài viết được gửi hôm 26.03.08 · Mang các từ khóa ,

Nào ta cùng “chuyển động”
Chia tay Windows… &rarr

Bài viết liên quan:


4 phản hồi

  1. c40 gửi hôm 26.03.08 lúc 2:59 am #

    Tớ từng xem qua Brainfuck nhưng chưa bao giờ … dám thử.
    Không kì dị như 3 ngôn ngữ trên, nhưng mà Logo cũng khá thú vị đấy ;)

  2. nhc1987 gửi hôm 26.03.08 lúc 12:59 pm #

    nhc thích cái Piet hơn. Đơn giản vì … nó khó hiểu nhất =))

  3. htl gửi hôm 27.03.08 lúc 7:20 am #

    sao lại là braìnuck mà ko phải là …fuck nhỉ :014:

  4. MTuấn gửi hôm 28.03.08 lúc 4:41 pm #

    Đọc bài này xong mất ngủ thật. Điên đầu

Gửi phản hồi




Gõ tiếng Việt: Tự động TELEX VNI Off


Đăng ký nhận email dù không gửi phản hồi