INTERCAL programmēšana: nelietojiet šo valodu

Atklāšana: Jūsu atbalsts palīdz vietnei darboties! Mēs nopelnām nodošanas maksu par dažiem pakalpojumiem, kurus mēs iesakām šajā lapā.


Tātad jūs esat pārgājis garām JavaScript apmācībām un sliktā PHP koda slinging. Jūs esat mazliet iedziļinājies Rubīnā, bet atklājāt, ka jums ļoti patika Python. Un tas nebija tik ļoti, ka jums patika Python lietojumprogrammu veidošanā, bet jūs patiešām iesaistījāties skriptu veidošanā.

Sākot ar skriptu veidošanu, jūs sākāt izpētīt Linux, un tas jūs visus interesēja par bezmaksas un atvērtā pirmkoda programmatūru, tāpēc sākāt lasīt par Ričardu Stallmanu un GNU projektu.

Pirms jūs to zināt, jūs runājat IRC tērzēšanā, smejaties par visiem jokiem katrā XKCD un esat lasījis katru žargona faila lapu. Divreiz. Ko tagad?

Jūs vēlaties uzlabot savas programmēšanas prasmes un savu hakeru ielu kredītu. Jūs domājāt par C apguvi, bet tas šķiet pārāk noderīgi.

Jūs cerat izlasīt Datorprogrammēšanas mākslu, taču esat nolēmis pagaidīt, līdz būs pieejams galīgais izdevums.

Kāds ir nākamais solis? Kāda ir nākamā nopelnu zīme jūsu Geek Scout vērtnei?

INTERCAL!

Vai esat kādreiz gribējis iemācīties pilnīgi bezjēdzīgu datoru valodu? Un nav bezjēdzīgi kā JavaScript 90. gados – nav bezjēdzīgi, jo tas ir pārāk viegli vai bezjēdzīgi, jo tas ir pārāk viegls.

Kad jūs bijāt bērns, vai jūs iemācījāties runāt Klingon vai Elvish? Vai vēlaties atkārtot šo pieredzi ar visu savu vientulību un nerd anglisku, bet atskaitot jautrību?

INTERCAL!

Kas ir INTERCAL??

Daži saka, ka INTERCAL ir valoda. Citi saka, ka INTERCAL ir joks. Varbūt INTERCAL ir tikai baumas, mānīšana, pilsētas leģenda. Iespējams, ka Artūru leģenda?

Tas ir tas viss. Tas nav neviens no šiem. Vai kāds zina? Nu, patiesībā, daudzi cilvēki to zina. Tas viss ir ļoti labi dokumentēts. Bet dokumentācija galu galā var būt meli.

INTERCAL!

Ko mēs zinām par INTERCAL?

Pirmkārt, mēs zinām, ka INTERCAL nav pat valodas īstais vārds. Valodas īstais nosaukums ir “Sastādītāja valoda bez izrunājama saīsinājuma”. INTERCAL, protams, ir izrunājams akronīms. Kas nozīmē, ka tas nav īstais saīsinājums.

Mēs arī zinām, ka INTERCAL tika izgudrots 1972. gadā Prinstonā. Abi izgudrotāji Dons Vudss un Džeimss M Liona sākotnēji to bija iecerējuši kā parodiju. Tas bija paredzēts darbam ar perfokartēm – savāda un novecojusi tehnoloģija, kas radās auduma aušanas stellēs.

INTERCAL dizains

INTERCAL tika izstrādāts atšķirīgi no visiem citiem datorprogrammēšanas valodām.

Visefektīvākais veids, kā datorprogrammēšanas valodu padarīt atšķirīgu no visām citām datorprogrammēšanas valodām, būtu izveidot tādu, kas patiesībā ir ērti lietojama, viegli lasāma un pabeidz lietas, kuras jūs vēlējāties paveikt, un tās nepaveic. ka jūs nevēlaties to paveikt.

Tomēr INTERCAL dizaineri gāja citu ceļu.

INTERCAL ir apzināti grūti. Ir gandrīz neiespējami lasīt vai rakstīt. Vissvarīgākā uzdevuma veikšana ir ārkārtīgi laikietilpīga un rada galvassāpes.

Sintaksei nav jēgas. Vārdnīcai nav jēgas. Un dīvaini kompilatoru vārdi padara praktiski pārliecinātu, ka programma, kas rakstīta INTERCAL, nedarbosies tā, kā gaidīts, pirmo reizi palaižot.

Citiem vārdiem sakot, kad tas patiešām nonāk līdz tam, INTERCAL ir tieši tāds pats kā jebkura cita datorprogrammēšanas valoda – vismaz tajā laikā. Un tas bija vairāk vai mazāk punkts.

Maza vēsture

INTERCAL izgudrotāji to ieviesa, nedaudz pasmējās un par to ātri aizmirsa.

Tomēr valodas rokasgrāmata dzīvoja. Pati dokumentācija bija smieklīgāka par valodu; tam ir jēga, jo dokumentācija tika uzrakstīta angļu valodā un valoda bija pilnīgi necaurlaidīga.

Valodas rokasgrāmatas eksemplāri tika pārnesti no geek uz geek, un pa ceļam glāstīja neskaitāms skaits neskaitāmas bārdas..

Galu galā valoda ieguva jaunu dzīvi C-INTERCAL ieviešanā, kas joprojām pastāv mūsdienās.

Ir arī otrā ieviešana – CLC-INTERCAL. Tas nozīmē, ka vismaz divi dažādi datorprogrammētāji un, iespējams, daudz vairāk par to, ka ir pagājuši netriviāla procentuālā daļa no viņu ierobežotā mūža, lasot, saprotot un ieviešot dokumentāciju valodā, kurai nav nekādas jēgas un kura nevar patiesībā dara daudz.

Kas ir vēl pārsteidzošāks nekā tas, kas ir milzīgais spožuma un matemātiskā intelekta līmenis, kas vajadzīgs, lai no tā izveidotu galvas vai astes..

Valodas funkcijas

Kā minēts iepriekš, pati INTERCAL valoda ir gandrīz nesaprotama. Viss, kas INTERCAL ir faktiski noderīgs, gandrīz noteikti ir kļūda, un jebkura viegli saprotamā dokumentācijas daļa gandrīz noteikti ir joks.

Sintakses piemērs

Šeit ir mazliet koda paraugi, kas ņemti tieši no INTERCAL dokumentācijas:

LŪDZU, 1 <- # 2
DO .1 <- # 2
DO, 1 SUB .1 <- # 1
DO, 1 SUB # 1 <- ,1 SUB # 2
LŪDZU; 1 <- # 2 ar # 2
DARĪT; 1 SUB # 1 # 2 <- ,1 SUB, 1 SUB .1
NOLASĪT; 1SUB # 1.1
DAUDZIES

Es varētu jums pateikt, ko šis kods dara, bet tam nebūtu īsti nozīmes.

Kļūdas paraugā

Iespējams, ka visslavenākā kļūda INTERCAL ir saistīta ar atslēgvārdu LŪDZU. INTERCAL programmā pietiekami daudz reižu jāiekļauj vārds PLEASE. Tomēr nav skaidrs, kas tas ir pietiekams skaits.

Ja programmētājs pietiekami bieži nesaka LŪDZU, kompilators to noraidīs, jo nav pietiekami pieklājīgs. Tomēr, ja programmētājs pārāk daudz lieto vārdu PLEASE, programma tiks noraidīta, jo tā ir pārāk pieklājīga un dedzīga.

Ja šāda veida uzvedību vēlaties redzēt kompilatorā, jūs esat slims, slims cilvēks.

Citas neticami noderīgas kļūdas ir:

  • E111 ATKLĀTS KOMUNISTISKAIS PLOTS, SASTĀVDAĻS IR SICĒJS

  • E277 TIKAI VARAT IZTIRDĪT MATEMĀTIKAS LIKUMUS

  • E405 PROGRAMMA, KAS ATBILDĪTS PĀRTIKAS VESELĪBAS IEMESLIEM

  • E666 SASTĀVDAĻAM IR JEBKĀDA INDIGĪCIJA

  • E774 RANDOM SASTĀVDAĻA BUG.

Šī pēdējā kļūda, nejauša kompilatora kļūdu faktiski var izslēgt, palaižot konkrētu opciju, palaižot programmu. Šī ir “atlīdzība par rokasgrāmatas lasīšanu”. (Tāpēc es jums neteicu, kāda bija konkrētā iespēja.)

Valodu resursi

  • INTERKĀLĀS PROGRAMMĒŠANAS VALODAS ATSAUCES ROKASGRĀMATA – oriģinālais teksts no 1973. gada.

  • INTERCAL programmēšanas valodas pārskatītā rokasgrāmata – pārskatītais, modernais teksts.

  • INTERCAL resursu lapa – viss, kas jums varētu būt jāzina par INTERCAL.

  • Žargonu fails – manu cilvēku kultūras vēsture.

  • INTERCAL – tāda paša nosaukuma mākslinieka house / deju mūzikas albums, kas nosaukts pēc valodas.

Virzīties uz priekšu

Jūs nevēlaties virzīties uz priekšu ar INTERCAL. Tā ir parodijas valoda, kas bija paredzēta, lai uzsvērtu problēmas ar programmēšanas valodām, kas pastāvēja 60. gadu beigās un 70. gadu sākumā. Bet tas joprojām ir labs atgādinājums par to, kā neveidot programmēšanas valodu.

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