Curiosities: Ngôn ngữ lập trình bí truyền

Ngôn ngữ lập trình bí truyền là những ngôn ngữ tối giản, được tạo ra như một bằng chứng về khái niệm và / hoặc thách thức, cả để lập trình ngôn ngữ và viết cho nó. Chúng ta hãy xem đánh giá của một số trong số họ:

chết tiệt


Nó được biết đến nhiều nhất và phổ biến nhất, cú pháp của nó khá đơn giản:

 
 +++++++++++
 [          Vòng lặp để bắt đầu ký ức (lặp lại 10 lần)
    >+++++++>+++++++++++>+++++++++++>+ + +>+<<<<-
       70 100 110 30 10
 ]
 >++.              'H' (72) 1
 >>+.              'hoặc' (111) 3
 ---.              'l' (108) 3
 <---.             'a' (97) 2
 >>++.             không gian (32) 4
 <+.               'm' (109) 3
 ++++++++.         'u' (117) 3
 -------.          'n' (110) 3
 <+ + +.             'd' (100) 2
 >+.               'hoặc' (111) 3
 >+.               '!' (33) 4
 >.                '\ n' (10) 5

Để giải thích cú pháp của nó, cách tốt nhất là sử dụng các ngôn ngữ lập trình khác. Vì vậy, trong trang Wikipedia của anh ấy cung cấp cho chúng tôi bảng tương đương này, trong đó ptr tương đương với một char không dấu:

khốn nạn C Perl
> ++ ptr; $ con trỏ ++;
< –Ptr; $ pointer–;
+ ++ * ptr; $ băng [$ pointer] ++;
- * ptr; $ băng [$ pointer] -;
. putchar (* ptr); in chr $ tape [$ pointer];
, * ptr = getchar (); $ tape [$ pointer] = ord (<>);
[ trong khi (* ptr) { trong khi ($ tape [$ pointer]) {
] } }

Ook!


Nó dựa trên cái trước, nhưng thay vào đó sử dụng kết hợp từ Ồ?, Được chứ! y Ngoài ra. Nó là một sự bắt chước của thủ thư từ Discworld, được biến thành một con đười ươi và chỉ có thể phát âm ba từ đó. Hãy xem xét một đoạn mã.

Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook. Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook. Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook? Ook? Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook? Ook! Ook! Ook? Ook! Ook? Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook? Ook. Ook! Ook. Ook. Ook. Ook. Ook. Ook. Ook. Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook! Ook. Ook. Ook? Ook. Ook? Ook. Ook. Ook! Ook. 

Được cho là "chương trình" này những gì nó làm là viết "chào thế giới" điển hình.

Befunge


Theo quan điểm của tôi, cấu trúc điều khiển luồng của nó dựa trên các mũi tên cho biết chương trình sẽ đi đâu. Ngoài ra, nó giúp tạo mã đột biến (mã tự sửa đổi) dễ dàng hơn nhiều:

vv << 2 ^ v <v13v4 ^ ^ >>?>?> 5 ^ vv v97v6 câu <8. >> ^ ^

Đoạn mã trên là một trình tạo số ngẫu nhiên vô hạn, sẽ tạo ra một số từ 1 đến 9. Dễ đọc hơn nhiều so với những đoạn trước đó.

Malbolge


Ở đây chúng tôi có một ngôn ngữ lập trình được tạo ra để gây khó chịu và không thể đọc được (không, nó không phải Cvà không, nó không phải Perl). Nói về Malbolge, tên của người đến từ vòng tròn thứ 8 của địa ngục trong Phim hài thần thánh. Đây là "xin chào thế giới" (hoặc đó là những gì tôi đã được nói với nó):

 (=<`:9876Z4321UT.-Q+*)M'&%$H"!~}|Bzy?=|{z]KwZY44Eq0/{mlk**
 hKs_dG5[m_BA{?-Y;;Vb'rR5431M}/.zHGwEDCBA@98\6543W10/.R,+O<

Lolcat


Một trò đùa đơn giản. Hãy xem mã của bạn:

HẢI
CAN HAS NGHIÊN CỨU?
TÔI CÓ MỘT VAR
IM IN YR LOOP
   UP VAR!!1
   CÓ THỂ NHÌN THẤY VAR
   IZ VAR TO HƠN HƠN 10? KTHX
IM NGOÀI YR LOOP
KTHXBYE

Vì nó dễ đọc hơn rất nhiều so với các ngôn ngữ lập trình trước đây, tôi sẽ để bạn đoán xem nó phải làm gì. 😉

GỌI LIÊN HỆ


Và cuối cùng nhưng không kém phần quan trọng, chúng tôi có một bản sao của ngôn ngữ lập trình FORTRAN. THƯƠNG MẠI. Và đây xin chào thế giới.
DO ,1 <- #13
XIN DO ,1 phụ #1 <- #238
DO ,1 phụ #2 <- #108
DO ,1 phụ #3 <- #112
DO ,1 phụ #4 <- #0
DO ,1 phụ #5 <- #64
DO ,1 phụ #6 <- #194
DO ,1 phụ #7 <- #48
XIN DO ,1 phụ #8 <- #22
DO ,1 phụ #9 <- #248
DO ,1 phụ #10 <- #168
DO ,1 phụ #11 <- #24
DO ,1 phụ #12 <- #16
DO ,1 phụ #13 <- #162
XIN ĐỌC OUT ,1
XIN ĐƯA CHO UP
Vâng, đó là nó.

Tôi phải nói rằng một số ngôn ngữ lập trình này rất hữu ích để học về một số khái niệm máy tính. Ví dụ, chết tiệt nó hoàn hảo để tìm hiểu về con trỏ.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.

  1.   davidlg dijo

    Tôi gần như thích mã nhị phân hơn

    1.    người giải mã dijo

      Vâng, tôi chắc chắn thích lập trình bằng nhị phân hoặc trong trình hợp dịch trực tiếp, bạn có thể làm bất cứ điều gì (các ngôn ngữ cấp cao cuối cùng chạy trên bộ xử lý), nhưng điều thú vị về các ngôn ngữ bí truyền là thách thức mà chúng đại diện. Nhân tiện, người đi đường (tác giả của bài viết này), bạn đang chọc tức tôi. Làm thế nào mà C và Perl không thể đọc được và gây khó chịu ?. Thật là một hành vi phạm tội không thể dung thứ !! Thật là một sự phẫn nộ! Nhưng nếu C là tuyệt vời, trong perl tôi chưa lập trình nhưng tôi đã thấy những nhận xét tốt về ngôn ngữ này vì rõ ràng nó rất thích hợp để xử lý các tệp, chuỗi và các pod này, ví dụ để khai thác thì nó khá tốt, mặc dù cy python trong khai thác làm việc tốt ...

      Saludos!

      1.    người đi đường dijo

        Trời đất, thứ C và perl chỉ là một trò đùa, và vâng, chúng là những ngôn ngữ khá dễ đọc, rất thực tế và "đẹp" khi thuận tiện. Tất nhiên trong CI đã thấy rằng một số người cuối cùng đã tạo ra một mớ mã spaghetti khó hiểu, và không cần lưu hồ sơ. Đối với Perl, không chỉ điều tương tự xảy ra như với C, mà còn cực kỳ linh hoạt, bạn có thể tìm thấy những điều bất chấp lẽ thường. Tôi phải nói rằng tôi không có kinh nghiệm lập trình trong Perl, nhưng tôi biết khá rõ về cú pháp của nó.

  2.   Joaquin dijo

    Đầu tiên là cách viết mã morse 😀

    1.    người đi đường dijo

      Và thứ hai là một con đười ươi, và thứ tư, nó gây nhồi máu não.

  3.   Tyrus Junior dijo

    Rất tốt bài viết.

  4.   johnfgs dijo
    1.    người đi đường dijo

      Và đầu bếp, unlamda, khoảng trắng và mày mò. Nhưng tôi không muốn làm cho bài báo quá lớn.

  5.   diazepam dijo

    ĐẾN GIỜ DIỄN RỒI
    NÓI VỚI TAY «xin chào thế giới»
    BẠN ĐÃ ĐƯỢC CHẤM DỨT

    Xin chào thế giới trong ArnoldC

    http://www.genbetadev.com/actualidad/arnoldc-el-lenguaje-basado-en-frases-de-arnold-schwarzenegger

    1.    người đi đường dijo

      Chà, anh ta không biết điều đó, tôi đoán ý tưởng đó là do "kẻ hủy diệt null" đưa cho anh ta

  6.   eliotime3000 dijo

    Sự thật là những ngôn ngữ lập trình đó đã khiến tôi bật cười. Tốt.