Esoteerinen ohjelmointikieli

Kokeneet kirjoittajat eivät ole vielä tarkistaneet sivun nykyistä versiota, ja se voi poiketa merkittävästi 3.10.2021 tarkistetusta versiosta . tarkastukset vaativat 3 muokkausta .

Esoteerinen ohjelmointikieli  on ohjelmointikieli , joka on suunniteltu tutkimaan ohjelmointikielen kehityksen rajoja, todistamaan jonkin idean mahdollista toteutusta (ns. " proof of concept ", englanninkielinen  proof of concept ), ohjelmistotaideteoksena tai vitsinä (tietokonehuumori).

Monet esoteeriset kielet on keksitty huvin vuoksi, usein ne parodioivat "oikeaa" tai ovat järjettömiä "vakavia" ohjelmointikonsepteja. Jotkut esoteeriset kielet ovat tarkoituksella rajoitettuja (kuten HQ9+ -kieli ), toiset ovat Turingin täydellisiä eli yleiskäyttöisiä kieliä. Kaikille esoteerisille kielelle ominaista yhteinen ominaisuus on, että siinä oleva ohjelman teksti on vain "aloittajan" ymmärrettävissä tai se on käsittämätöntä ollenkaan, koska ohjelman laatimiseksi sinun on kirjoitettava ohjelma tavallisella ohjelmointikielellä. . Vaikka "oikeiden" ohjelmointikielten kehittäjät yrittävät tehdä syntaksin mahdollisimman selkeäksi ja ohjelmointi - käteväksi, esoteeristen kielten luojat asettavat itselleen muita tavoitteita.

Käytännössä tällaiset kielet ovat yleensä hyödyttömiä, mutta joidenkin ohjelmointi on hyvä käytäntö. Esoteeriset kielet sisältyvät usein ohjelmointikilpailujen sallittujen kielten luetteloon.

Joidenkin esoteeristen kielten luokat

INTERCALin kaltaisista kielistä, joiden pääajatuksena on tarkoituksella suurin ero olemassa oleviin kieliin, FALSE -kieli tunnetaan .

Suuri luokka on Brainfuck- kaltaisia ​​kieliä, jotka keskittyvät vähentämään syntaksia (alkuperäisessä Brainfuckissa on 8 komentoa) samalla kun säilytetään Turingin täydellisyys ), kuten CaneCode , Ook ! (orangutankieli), COW (artiodaktyylikieli), Brainfork (monitehtävä Brainfuck), f*ckf*ck , DoubleFuck , välilyönti , lusikka , LOLCODE , HQ9 + (ei Turing-valmis).

Kielet, jotka käyttävät ohjelmien moniulotteisia esityksiä erottuvat omassa luokassa: kaksiulotteinen Byter , Befunge , Befunge-93 (kaksiulotteinen, ei Turing-täydellinen ), yksiulotteinen Unefunge , kolmiulotteinen Trefunge , neliulotteinen 4DL ja Piet - värikoodauksella .

Toinen luokka koostuu kielistä, jotka perustuvat oman koodinsa kopioimiseen - Smetana , Smith , Muriel .

Black box -kielet , kuten Malbolge ja Alpaca , on suunniteltu vaikeuttamaan koodin kirjoittamista.

Useat kielet toteuttavat "kirjallista" syntaksia, kuten Chef (reseptit), Shakespeare ( Shakespearen näytelmät), Haifu ( haikurunot), ArnoldC ( Arnold Schwarzeneggerin lauseet ), FiM++ (kirjeet prinsessa Celestialle ).

Var'aq - kieli , joka perustuu Star Trek -sarjan klingonirodun logiikkaan , on luokiteltu kieliluokkaan, jolla on "ei-ihmislogiikka" .

Jotkut muut esoteerisiin tarkoituksiin luodut kielet ovat Cool , GOTO++ , Lithp , vainoharhainen , Sartre , Simple , Whenever , smilescript , hymiö , iot , Lazy K , Beatnik , reMorse , YoptaScript [1] .

Joskus esoteeriset kielet sisältävät myös matemaattisten käsitteiden testaamiseen suunniteltuja kieliä, kuten Thue ja Unlambda .

Muihin tarkoituksiin luotujen kielten joukossa, joita joskus kutsutaan esoteerisiksi, ovat P′′ , QuakeC , MC++ , Autocode "Engineer" (matala tason muistokoodi tietokoneelle " Minsk ").

Muistiinpanot

  1. YoptaScript - ohjelmointikieli gopnikille ja selkeille pojille . yopta.space . Haettu: 6. maaliskuuta 2022.

Linkit