مالبۆلج
A cat program in Malbolge | |
| پارادایم | Esoteric, imperative, scalar, value-level |
|---|---|
| داڕێژەر | Ben Olmstead[١] |
| پەرەپێدەر | Ben Olmstead[١] |
| یەکەم دەرکەوتن | 1998 |
| جۆری دراو (تایپ) | Untyped |
| پاشگری پەڕگە | .mal, .mb |
| کاریگەربووە بە | |
| Brainfuck, INTERCAL (Tri-INTERCAL), Befunge | |
| کاری کردۆتە | |
| Dis, Malbolge Unshackled | |
مالبۆلج زمانێکی پرۆگرامسازیی ئاڵۆز و نامۆیە (esoteric programming language) کە لە پاوانی گشتیدایە، لەلایەن بێن ئۆلمستێد لە ساڵی ١٩٩٨ داهێنراوە، و بە ناوی بازنەی هەشتەمی دۆزەخ لە کتێبی "دۆزەخی دانتێ"ـەوە کە پێی دەوترێت مالیبۆلج (Malebolge) ناونراوە. ئەم زمانە بە تایبەتی وا دیزاین کراوە کە بەکارهێنانی نزیک بێت لە مەحاڵەوە، ئەویش لە ڕێگەی "کردارێکی شێتانە"ی پێچەوانەی لۆژیک (counter-intuitive)، ژمێرکاریی بنچینە سێ (base-three arithmetic)، و کۆدی خۆگۆڕ (self-altering code).[٢] ئەمە لەسەر بنەمای قورسیی زمانە پرۆگرامسازییە ئاڵۆزەکانی پێش خۆی (وەک Brainfuck و Befunge) داڕێژراوە، بەڵام بە ڕادەیەکی لەڕادەبەدەر زیادەڕەویی لەم لایەنەدا کردووە، بە جۆرێک یاری بە مێژووە تێکئاڵۆزەکانی زانستی کۆمپیوتەر و کۆدکردن (encryption) دەکات. سەرباری ئەم دیزاینە، دەکرێت پرۆگرامی بەسوود بە مالبۆلج بنووسرێت.
بەرنامەسازی لە مالبۆلج
[دەستکاری]لە سەرەتای دەرکەوتنیدا تێگەیشتنی زۆر قورس بوو، بە جۆرێک دوو ساڵی خایاند تا یەکەم پرۆگرامی مالبۆلج دەرکەوت. خودی داهێنەرەکە خۆی تا ئێستا هیچ پرۆگرامێکی بە مالبۆلج نەنووسیوە.[٣] یەکەم پرۆگرام لەلایەن مرۆڤەوە نەنووسرابوو؛ بەڵکو لەلایەن ئەلگۆریتمێکی گەڕانی تیشکی کە لەلایەن ئەندریو کوک دیزاین کرابوو و بە زمانی لیسپ (Lisp) جێبەجێ کرابوو، دروست کرا. [٤]
دواتر، لۆو شێفەر شیکارییەکی کۆدی (cryptanalysis) بۆ مالبۆلج بڵاوکردەوە و پرۆگرامێکی دابین کرد کە تێدراوەکانی (input) بۆ دەرکراوەکانی (output) کۆپی دەکرد. [٥] هەروەها دوای ئەوەی ماڵپەڕە ڕەسەنەکە لە کارکەوت، وەرگێڕە ڕەسەنەکە (original interpreter) و تایبەتمەندییەکانی زمانەکەی پاراست، و ستراتیژییەکی گشتی بۆ نووسینی پرۆگرام بە مالبۆلج خستە ڕوو، لەگەڵ چەند بۆچوونێک دەربارەی تەواویەتیی تیورینگ (Turing completeness) لە زمانەکەدا. [٦]
ئۆلمستێد پێی وابوو کە مالبۆلج ئامێرێکی خۆکاری سنووردارکراوی هێڵییە (linear bounded automaton). گفتوگۆ هەیە لەسەر ئەوەی کە ئایا دەکرێت مرۆڤ گرێ یان لووپی لۆژیکی لە مالبۆلجدا جێبەجێ بکات یان نا — چەندین ساڵی خایاند تا یەکەم لووپی بێکۆتا ناسێنرا. پرۆگرامێکی دروستی "99 شووشە بیرە" (99 Bottles of Beer)، کە مامەڵە لەگەڵ لووپ و مەرجە ئاڵۆزەکاندا دەکات، بۆ ماوەی حەوت ساڵ نەتوانرا ڕابگەیەندرێت؛ یەکەم پرۆگرامی دروست لەلایەن هیساشی ئیزاوا لە ساڵی ٢٠٠٥ ڕاگەیەندرا. [٧] هەروەها هیساشی ئیزاوا و هاوکارەکانی ڕێبەرێکیان بۆ پرۆگرامسازی بە مالبۆلج پێشنیار کرد بە مەبەستی تەڵخکردن و شاردنەوەی کۆد (obfuscation) بۆ پاراستنی نەرمەکاڵا. [٨]
لە ساڵی ٢٠٢٠، کامیلا شێڤچیک وەرگێڕێکی زمانی لیسپ (Lisp interpreter)ـی بڵاوکردەوە کە بە ڤێرژنی مالبۆلجی ئازادکراو (Malbolge Unshackled) نووسرابوو. [٩] [١٠]
سەرچاوەکان
[دەستکاری]- 1 2 «Malbolge - Esolang». لە ٢٧ی ئابی ٢٠٢٢ لە ڕەسەنەکەوە ئەرشیڤ کراوە. لە ٢٧ی ئابی ٢٠٢٢ ھێنراوە.
- ↑ Temkin، Daniel (٣ی تشرینی دووەمی ٢٠١٤). «Interview with Ben Olmstead». esoteric.codes. لە ٢٠ی ئازاری ٢٠٢٣ لە ڕەسەنەکەوە ئەرشیڤ کراوە. لە ٧ی کانوونی دووەمی ٢٠٢١ ھێنراوە.
- ↑ Temkin، Daniel (٣ی تشرینی دووەمی ٢٠١٤). «Interview with Ben Olmstead». esoteric.codes. لە ٢٠ی ئازاری ٢٠٢٣ لە ڕەسەنەکەوە ئەرشیڤ کراوە. لە ٧ی کانوونی دووەمی ٢٠٢١ ھێنراوە.
- ↑ Cooke، Andrew. «malbolge: hello world» (بە ئینگلیزی). لە ڕەسەنەکە لە ٦ی کانوونی یەکەمی ٢٠١٩ ئەرشیڤ کراوە. لە ٨ی کانوونی دووەمی ٢٠٢١ ھێنراوە.
- ↑ Scheffer، Lou (١٧ی نیسانی ٢٠١٥). «Introduction to Malbolge». لە ١١ی حوزەیرانی ٢٠٢٣ لە ڕەسەنەکەوە ئەرشیڤ کراوە. لە ٩ی حوزەیرانی ٢٠١٧ ھێنراوە.
- ↑ Mykhailova، Mariya (١١ی ئایاری ٢٠١٢). «Programming language Malbolge». لە ڕەسەنەکە لە ٩ی حوزەیرانی ٢٠٢٣ ئەرشیڤ کراوە. لە ٩ی حوزەیرانی ٢٠١٧ ھێنراوە.
- ↑ «Language Malbolge». 99 Bottles of Beer. ٢٩ی کانوونی یەکەمی ٢٠٠٥. لە ڕەسەنەکە لە ١٤ی ئایاری ٢٠٢٠ ئەرشیڤ کراوە. لە ١٩ی تشرینی دووەمی ٢٠٢٠ ھێنراوە.
- ↑ Iizawa، Hisashi. (بە ژاپۆنی) https://web.archive.org/web/20170623131043/http://www.sakabe.i.is.nagoya-u.ac.jp/~nishida/DB/pdf/iizawa05ss2005-22.pdf. لە ڕەسەنەکە (PDF) لە ٢٣ی حوزەیرانی ٢٠١٧ ئەرشیڤ کراوە. لە ٩ی حوزەیرانی ٢٠١٧ ھێنراوە.
{{cite web}}: پارامەتری|title=ونە یانیش واڵایە (یارمەتی) - ↑ Szewczyk، Kamila (٤ی ئازاری ٢٠٢١)، iczelia/malbolge-lisp، لە ٢٣ی ئازاری ٢٠٢١ ھێنراوە
- ↑ Laughlin، Gregory (٢٦ی ئازاری ٢٠٢٢). «Malbolge (a second look) | oklo». oklo (بە ئینگلیزیی ئەمەریکایی). لە ٢٤ی تشرینی یەکەمی ٢٠٢٣ ھێنراوە.
ئەم وتارە بۆ ھیچ پۆلێکی ناوەڕۆک زیاد نەکراوە. تکایە بە زیادکردنی پۆلێک یان زیاتر یارمەتیی بدە تا لەگەڵ وتارە لێکچووەکان پێڕست بکرێت. (تەممووزی ٢٠٢٦) |