Malbolge

Vikipedi, özgür ansiklopedi

Malbolge
Malbolge'de bir cat programı
ParadigmasıEsoteric, imperative, scalar, value-level
İlk çıkışı1998
TasarımcıBen Olmstead[1]
GeliştiriciBen Olmstead[1]
EtkilendikleriBrainfuck, INTERCAL (Tri-INTERCAL), Befunge
EtkiledikleriDis, Malbolge Unshackled
Olağan dosya uzantıları.mal, .mb

Malbolge (/mælˈbl/), Ben Olmstead tarafından 1998'de icat edilmiş kamu malı bir ezoterik programlama dilidir. İsmini Dante'nin Inferno adlı eserindeki Malebolge'den almıştır. Malbolge, özel olarak, sezgiye aykırı bir 'çılgın işlem', üç tabanlı aritmetik ve kendi kendini değiştiren kod yoluyla kullanılması imkansıza yakın olacak şekilde tasarlanmıştır.[2] Daha önceki zorlayıcı ezoterik dillerin (Brainfuck ve Befunge gibi) zorluğu üzerine inşa edilmiştir, ancak bilgisayar bilimi ve şifrelemenin karmaşık tarihlerinden yararlanarak bu yönü aşırı derecede abartmaktadır. Bu tasarıma rağmen kullanışlı Malbolge programları yazmak mümkündür.

Malbolge'de Programlama

[değiştir | kaynağı değiştir]

Malbolge ilk ortaya çıktığında anlaşılması oldukça zordu ve ilk Malbolge programının ortaya çıkması iki yıl sürmüştü. Yazarın kendisi hiçbir zaman bir Malbolge programı yazmamıştır.[2] İlk program bir insan tarafından yazılmadı; Andrew Cooke tarafından tasarlanan ve Lisp'te uygulanan bir ışın arama algoritması tarafından oluşturuldu.[3]

Daha sonra Lou Scheffer, Malbolge'un kriptanalizini yayınladı ve girdisini çıktısına kopyalamak için bir program sağladı.[4] Ayrıca orijinal sitenin işleyişi durduktan sonra orijinal yorumlayıcıyı ve spesifikasyonu sakladı ve Malbolge'de program yazmanın genel bir stratejisinin yanı sıra Turing'in bütünlüğü hakkında bazı düşünceler de sundu.[5]

Olmstead, Malbolge'nin doğrusal sınırlı bir otomat olduğuna inanıyordu. Malbolge'de mantıklı döngülerin uygulanıp uygulanamayacağına dair bir tartışma var; ilk bitmeyen döngünün tanıtılması uzun yıllar aldı. Önemsiz olmayan döngüler ve koşullarla ilgilenen doğru bir 99 Bottles of Beer programı yedi yıl boyunca duyurulmadı; İlk doğru olanı 2005'te Hisashi Iizawa'ya aitti.[6]

  1. ^ a b "Malbolge - Esolang". 27 Ağustos 2022 tarihinde kaynağından arşivlendi. Erişim tarihi: 27 Ağustos 2022. 
  2. ^ a b Temkin, Daniel (3 Kasım 2014). "Interview with Ben Olmstead". esoteric.codes. 20 Mart 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 7 Ocak 2021. 
  3. ^ "andrew cooke: malbolge "hello world"". web.archive.org. 6 Aralık 2019. 6 Aralık 2019 tarihinde kaynağından arşivlendi. Erişim tarihi: 15 Aralık 2023. 
  4. ^ "Programming in Malbolge". www.lscheffer.com. 11 Haziran 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 15 Aralık 2023. 
  5. ^ http://progopedia.com/user/Nickolas. "Programming language Malbolge". progopedia.com (İngilizce). 9 Haziran 2023 tarihinde kaynağından arşivlendi. Erişim tarihi: 15 Aralık 2023. 
  6. ^ "99 Bottles of Beer | Language Malbolge". web.archive.org. 14 Mayıs 2020. 14 Mayıs 2020 tarihinde kaynağından arşivlendi. Erişim tarihi: 15 Aralık 2023.