Alþjóðleg forritun: Ekki nota þetta tungumál

Birting: Stuðningur þinn hjálpar til við að halda vefnum í gangi! Við þénum tilvísunargjald fyrir sumar þjónusturnar sem við mælum með á þessari síðu.


Svo þú hefur fært þig yfir JavaScript námskeið og slengur slæmur PHP kóða. Þú hefur kært svolítið í Ruby en komst að því að þér líkaði Python mjög vel. Og það var ekki svo mikið að þér líkaði vel við Python til að smíða forrit, heldur komstu virkilega inn á forskriftir.

Frá skriftum byrjaðir þú að kanna Linux og það vaktir öllum áhuga á ókeypis og opnum hugbúnaði, svo að þú byrjaðir að lesa um Richard Stallman og GNU verkefnið.

Áður en þú veist af því ertu að tala í IRC spjalli, hlæja að öllum brandarunum á hverjum XKCD og þú hefur lesið allar blaðsíður í hrognamálaskránni. Tvisvar. Hvað nú?

Þú vilt bæta forritunarhæfileika þína og gagna í tölvusnápur. Þú hefur hugsað um að læra C, en það virðist bara allt of gagnlegt.

Þú ert að vonast til að lesa The Art of Computer Programming, en þú hefur ákveðið að bíða þangað til lokaútgáfan verður fáanleg.

Svo hvað er næsta skref? Hver er næsta verðmætaskiltið í Geek Scout röndinni þinni?

INTERKAL!

Hefur þú einhvern tíma langað til að læra tölvumál sem var alveg ónýtt? Og ekki gagnslaus eins og JavaScript á níunda áratugnum – ekki gagnslaus vegna þess að það er of auðvelt eða gagnslaust vegna þess að það er of létt.

Þegar þú varst barn, lærðir þú að tala Klingon eða Elvish? Myndir þú vilja endurtaka þá upplifun, með allri einmanaleika hennar og nörda angist, en mínus skemmtuninni?

INTERKAL!

Hvað er INTERCAL?

Sumir segja að INTERCAL sé tungumál. Aðrir segja að INTERCAL sé brandari. Kannski er INTERCAL bara orðrómur, gabb, borgarleg goðsögn. Arthurísk þjóðsaga, kannski?

Það er allt þetta. Það er ekkert af þessu. Veit einhver það? Jæja, reyndar vita margir. Það er allt mjög vel skjalfest. En skjölin geta verið lygi á endanum.

INTERKAL!

Hvað vitum við um INTERCAL?

Í fyrsta lagi vitum við að INTERCAL er ekki einu sinni raunverulegt nafn tungumálsins. Raunverulegt nafn tungumálsins er „Compiler Language with No Pronounceable Acronym.“ INTERCAL er auðvitað áberandi skammstöfun. Sem þýðir að það er ekki hið sanna skammstöfun.

Við vitum líka að INTERCAL var fundið upp árið 1972 í Princeton. Uppfinningamennirnir tveir, Don Woods og James M Lyon, ætluðu það upphaflega sem skopstæling. Það var hannað til að vinna á götuspjöld, furðulega og úrelt tækni sem er upprunnin með klút vefnaðarvötnum.

INTERCAL Hönnun

INTERCAL var hannað frábrugðið öllum öðrum núverandi tölvuforritunarmálum.

Skilvirkasta leiðin til að gera tölvuforritunarmál frábrugðin öllum öðrum tölvuforritunarmálum væri að búa til það sem er í raun auðvelt í notkun og auðvelt að lesa og framkvæma það sem þú vildir ná og gerir það ekki að þú viljir ekki að það nái fram að ganga.

Hönnuðir INTERCAL fóru hins vegar í hina áttina.

INTERCAL er vísvitandi erfitt. Það er næstum ómögulegt að lesa eða skrifa. Að ná því léttvægasta verkefni er óvenju tímafrekt og höfuðverkur örvandi.

Setningafræði er ekkert vit í. Orðaforði skiptir engu máli. Og skrýtnir þýðendatilkynningar gera það nánast víst að forrit sem er skrifað í INTERCAL hegðar sér ekki eins og búist var við í fyrsta skipti sem það er keyrt.

Með öðrum orðum, þegar það kemur raunverulega niður á þessu þá er INTERCAL nákvæmlega eins og hvert annað forritunarmál tölvu – að minnsta kosti á þeim tíma. Og það var meira og minna málið.

Smá saga

Uppfinningamenn INTERCAL útfærðu það, hlógu nokkur og gleymdu því fljótt.

Tungumál handbókarinnar lifði þó áfram. Skjölin sjálf voru fyndnari en tungumálið; þetta er skynsamlegt þar sem skjölin voru skrifuð á ensku og tungumálið var alveg órjúfanlegt.

Afrit af tungumálahandbókinni fór frá gáfuð til gáfuð og óteljandi fjöldi ógeðslegs skeggs var strauk á leiðinni.

Að lokum fann tungumálið nýtt líf í C-INTERCAL útfærslunni, sem er enn til í dag.

Það er líka önnur framkvæmd, hringdu í CLC-INTERCAL. Þetta þýðir að að minnsta kosti tveir mismunandi tölvuforritarar, og líklega miklu meira en það, hafa eytt óhagstæðri prósentu af endanlegri ævi sinni í að lesa, skilja og útfæra skjölin fyrir tungumál sem er ekki skynsamlegt og getur ekki gera reyndar mikið.

Það sem er enn ótrúlegra en það er hreinskilnisstigið og stærðfræðigreindin sem þarf til að gera höfuð eða hala af einhverju af þessu.

Tungumálareiginleikar

Eins og áður hefur komið fram er INTERCAL tungumálið sjálft næstum óskiljanlegt. Allt sem er í INTERCAL sem er raunverulega gagnlegt er næstum vissulega mistök, og allir hlutar skjalanna sem auðvelt er að skilja er næstum örugglega brandari.

Dæmi setningafræði

Hér er smá sýnishornskóði tekinn beint úr INTERCAL skjölunum:

VINSAMLEGAST, 1 <- # 2
DO .1 <- # 2
DO, 1 SUB .1 <- # 1
DO, 1 SUB # 1 <- ,1 SUB # 2
VINSAMLEGAST; 1 <- # 2 BY # 2
DO; 1 SUB # 1 # 2 <- ,1 SUB, 1 SUB .1
LESA UPP; 1SUB # 1.1
GEFA UPP

Ég gæti sagt þér hvað þessi kóði gerir en það skiptir ekki máli.

Dæmi um villur

Kannski er frægasta villan í INTERCAL að gera með leitarorðið VINSAMLEGAST. Alþjóðlegt forrit verður að innihalda orðið VINSAMLEGAST nægilegan fjölda skipta. Hins vegar er óljóst hver sá nægi fjöldi er.

Ef forritari segir ekki PLEASE nógu oft verður forritinu hafnað af þýðandanum fyrir að vera ekki nógu kurteis. Hins vegar, ef forritarinn notar orðið PLEASE of mikið, verður forritinu hafnað vegna þess að það er of kurteist og of ákaft.

Ef þetta er svona hegðun sem þú vilt sjá í þýðanda, þá ertu veikur, veikur maður.

Aðrar ótrúlega gagnlegar villur eru ma:

  • E111 SAMKVÆMD LÖGREGLA greind, keppandi er að saka

  • E277 ÞÚ GETUR AÐ AÐ AÐ AÐ AÐ AÐ RETTA LÖGÐ Í GÆÐUM ERU FARA

  • E405 áætlun hafnað vegna geðheilbrigðismála

  • E666 SAMSTJÓRN ER MÁLMYND

  • E774 RANDOM COMPILER BUG.

Síðasta villan er hægt að slökkva á Random Compiler Bug með því að fara í tiltekinn valkost þegar forrit er sett af stað. Þetta er „verðlaun fyrir að lesa handbókina.“ (Þess vegna sagði ég þér ekki hver sérstakur valkostur var.)

Tungumálanotkun

  • INTERCAL PROGRAMMING LANGUAGE REFERENCE MANUAL – Upprunalega textinn frá 1973.

  • INTERCAL forritunarmálið Endurskoðuð tilvísunarhandbók – Endurskoðaður, nútímalegur texti.

  • INTERCAL auðlindasíðan – Allt sem þú gætir þurft að vita um INTERCAL.

  • The Jargon File – Menningarsaga fólks míns.

  • INTERCAL – Plata af húsi / danstónlist eftir listamann með sama nafni, nefnd eftir tungumálinu.

Halda áfram

Þú vilt ekki halda áfram með INTERCAL. Þetta er skopstæling tungumál sem var ætlað að varpa ljósi á vandamálin við forritunarmálin sem voru til seint á sjöunda áratugnum og snemma á áttunda áratugnum. En það er eftir sem góð áminning um hvernig eigi að hanna forritunarmál.

Jeffrey Wilson Administrator
Sorry! The Author has not filled his profile.
follow me
    Like this post? Please share to your friends:
    Adblock
    detector
    map