الفضول: لغات البرمجة الباطنية

لغات البرمجة الباطنية هي لغات مبسطة ، تم إنشاؤها كدليل على المفهوم و / أو التحدي ، لبرمجة اللغة والكتابة لها. دعونا نرى مراجعة لبعض منهم:

مخادع


إنها الأكثر شهرة والأكثر شيوعًا ، تركيبها بسيط للغاية:

 
 + + + + + + + + + +
 [          التكرار لبدء الذكريات (يتكرر 10 مرات)
    >+++++++>+ + + + + + + + + +>+++++++++++>+ + +>+<<<<-
       70 100 110
 ]
 >++.              'ح' (72) 1
 >>+.              "أو" (111) 3
 ---.              'l' (108) 3
 <---.             أ '(97) 2
 >>++.             مساحة (32) 4
 <+.               م (109) 3
 ++++++++.         'u' (117) 3
 -------.          ن '(110) 3
 <+ + +.             د '(100) 2
 >+.               "أو" (111) 3
 >+.               "!" (33) 4
 >.                "\ n" (10) 5

لشرح تركيبها ، من الأفضل استخدام لغات برمجة أخرى. حتى في صفحته على ويكيبيديا زودنا بجدول المعادلات هذا ، حيث يعادل ptr حرفًا غير موقع:

عقلي C بيرل
> ++ ptr ؛ مؤشر ++ $ ؛
< –Ptr ؛ المؤشر $–؛
+ ++ * ptr ؛ شريط $ [مؤشر $] ++؛
- - * ptr ؛ شريط $ [مؤشر $] -؛
. بوتشار (* ptr) ؛ طباعة شريط $ chr [$ pointer]؛
, * ptr = getchar () ؛ $ tape [$ pointer] = ord (<>)؛
[ بينما (* ptr) { بينما (شريط $ [$ pointer]) {
] } }

اوك!


يعتمد على الكلمة السابقة ، لكنه يستخدم مجموعة الكلمات بدلاً من ذلك اوك؟, اوك! y أيضا. إنها محاكاة ساخرة لأمين المكتبة من ديسوورلد، الذي يتحول إلى إنسان الغاب ويمكنه فقط نطق هذه الكلمات الثلاث. لنلقِ نظرة على جزء من الكود.

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

من المفترض أن يقوم هذا "البرنامج" بكتابة "عالم الترحيب" النموذجي.

بيفونج


في رأيي الأكثر أصالة على الإطلاق ، يعتمد هيكل التحكم في التدفق على الأسهم التي تخبر البرنامج إلى أين يذهب. كما أنه يجعل إنشاء كود متحولة (كود يعدل نفسه) أسهل كثيرًا:

vv << 2 ^ v <v13v4 ^ ^ >>؟>؟> 5 ^ vv v97 ضد 6 فف <8. >> ^ ^

الكود أعلاه هو مولد رقم عشوائي لانهائي ، والذي سينشئ رقمًا بين 1 و 9. أكثر قابلية للقراءة من الأعداد السابقة.

Malbolge


هنا لدينا لغة برمجة تم إنشاؤها لتكون مزعجة وغير قابلة للقراءة (لا ، ليست كذلك C، و لا ، ليس كذلك بيرل). يتعلق الامر ب Malbolge، الذي يأتي اسمه من الدائرة الثامنة من الجحيم في الكوميديا ​​الإلهية. إليك "مرحبًا بالعالم" (أو هذا ما قيل لي إنه كذلك):

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

Lolcat


نكتة بسيطة. دعنا نرى الكود الخاص بك:

HAI
CAN HAS STDIO?
انا املك VAR
IM IN YR عقدة
   UP VAR!!1
   مرئي VAR
   IZ VAR أكبر من 10? KTHX
IM أوتا YR عقدة
KTHXBYE

نظرًا لأنها أكثر قابلية للقراءة من لغات البرمجة السابقة ، سأدعك تخمن ما يفترض أن تفعله. 😉

انتركال


وأخيرًا وليس آخرًا ، لدينا محاكاة ساخرة للغة برمجة FORTRAN. بيني. وهنا مرحبا العالم.
DO ,1 <- #13
يرجى DO ,1 فرعي #1 <- #238
DO ,1 فرعي #2 <- #108
DO ,1 فرعي #3 <- #112
DO ,1 فرعي #4 <- #0
DO ,1 فرعي #5 <- #64
DO ,1 فرعي #6 <- #194
DO ,1 فرعي #7 <- #48
يرجى DO ,1 فرعي #8 <- #22
DO ,1 فرعي #9 <- #248
DO ,1 فرعي #10 <- #168
DO ,1 فرعي #11 <- #24
DO ,1 فرعي #12 <- #16
DO ,1 فرعي #13 <- #162
يرجى اقرأ OUT ,1
يرجى يعطى UP
حسنًا ، هذا كل شيء.

يجب أن أقول إن بعض لغات البرمجة هذه مفيدة جدًا للتعرف على بعض مفاهيم الكمبيوتر. فمثلا، مخادع إنه مثالي للتعرف على المؤشرات.


محتوى المقال يلتزم بمبادئنا أخلاقيات التحرير. للإبلاغ عن خطأ انقر فوق هنا.

11 تعليقات ، اترك لك

اترك تعليقك

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها ب *

*

*

  1. المسؤول عن البيانات: ميغيل أنخيل جاتون
  2. الغرض من البيانات: التحكم في الرسائل الاقتحامية ، وإدارة التعليقات.
  3. الشرعية: موافقتك
  4. توصيل البيانات: لن يتم إرسال البيانات إلى أطراف ثالثة إلا بموجب التزام قانوني.
  5. تخزين البيانات: قاعدة البيانات التي تستضيفها شركة Occentus Networks (الاتحاد الأوروبي)
  6. الحقوق: يمكنك في أي وقت تقييد معلوماتك واستعادتها وحذفها.

  1.   دافيدلج قال

    أنا أفضل تقريبا رمز ثنائي

    1.    desikoder قال

      نعم ، أنا بالتأكيد أفضل البرمجة في ثنائي أو في المجمّع مباشرة ، يمكنك فعل أي شيء (ينتهي الأمر باللغات عالية المستوى في العمل على المعالج بعد كل شيء) ، لكن الشيء المثير للاهتمام حول اللغات الباطنية هو التحدي الذي تمثله. بالمناسبة ، رودر (مؤلف هذا المقال) ، أنت تزعجني. كيف تكون لغة سي وبيرل غير مقروءة ومزعجة؟ يا لها من جريمة لا تطاق !! يا له من غضب! لكن إذا كانت لغة C رائعة ، فأنا لم أبرمج في بيرل ولكني رأيت تعليقات جيدة حول هذه اللغة لأنها على ما يبدو مناسبة جدًا للتعامل مع الملفات والسلاسل وهذه البودات ، على سبيل المثال بالنسبة لعمليات الاستغلال فهي جيدة جدًا ، على الرغم من أن cy python في عمليات استغلال اعمل جيدا ...

      Saludos!

      1.    رودر قال

        كان كل من رجل ، سي وبيرل مزحة ، ونعم ، إنهما لغات يمكن قراءتها تمامًا ، وعملية جدًا و "جميلة" في اليد اليمنى. بالطبع في CI رأيت أن بعض الأشخاص ينتهي بهم الأمر إلى إنشاء مجموعة متشابكة من شفرة السباغيتي غير المفهومة ، ودون تسجيل. بالنسبة لـ Perl ، لا يحدث نفس الشيء كما هو الحال مع C فقط ، ولكن نظرًا لكونك مرنًا للغاية ، يمكنك العثور على أشياء تتحدى الفطرة السليمة. يجب أن أقول إنني لا أمتلك خبرة في البرمجة بلغة Perl ، لكنني أعرف تركيبها جيدًا.

  2.   خواكين قال

    الأول هو كيفية الكتابة في كود مورس 😀

    1.    رودر قال

      والثاني أن يكون إنسان الغاب ، والرابع ، يسبب احتشاءات دماغية.

  3.   تيرسو جونيور قال

    جيد جدا المنشور.

  4.   جوانفغس قال
    1.    رودر قال

      والشيف ، وألمدا ، ومساحة بيضاء وتنك. لكنني لم أرغب في جعل المقالة كبيرة جدًا.

  5.   ديازيبان قال

    انه وقت العرض
    تكلم باليد «أهلاً بالعالم»
    لقد تم إنهاء عملك

    مرحبًا بالعالم في ArnoldC

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

    1.    رودر قال

      واو ، لم يكن يعرف ذلك ، أعتقد أن الفكرة تم تقديمها بواسطة "فاصل فارغ"

  6.   إليوتيمي 3000 قال

    الحقيقة هي أن لغات البرمجة هذه جعلتني أضحك. حسن.