Shakespeare este un limbaj de programare ezoteric dezvoltat de John Aslaud și Karl Hasselstrom. Limbajul Shakespeare este conceput pentru a deghiza codul sursă al programului ca piesele lui Shakespeare , la fel cum limbajul de programare Chef le deghizează în rețete .
Lista de caractere de la începutul programului servește la anunțarea numărului de stive care poartă nume precum „Romeo” și „Julieta”. Acești eroi comunică între ei - efectuând astfel operațiuni I/O , ei pot pune întrebări (analog cu un operator condiționat ). În general, modelul de programare este foarte asemănător cu limbajul de asamblare , dar semnificativ mai verbos.
Primul paragraf (de la începutul documentului până la prima linie goală) din program este un epigraf și este privit de compilator ca un comentariu .
Aceasta este secțiunea în care sunt declarate variabilele . Fiecare variabilă poate conține doar un număr întreg, iar declarația sa arată astfel:
nume, descriereAici Nume este numele variabilei, iar Descrierea (descrierea variabilei) este ignorată de compilator.
Părțile codului sursă de pe Shakespeare se numesc Acte ( Act), care sunt împărțite în Scene ( Scene). Fiecare act și scenă sunt numerotate cu cifre romane și servesc ca etichete pentru GOTO. Orice text după două puncte este considerat un comentariu și este formatat astfel:
Actul I: insultele și lingușirile lui Hamlet. Scena I: Injuria lui Romeo.Înainte ca personajele să poată participa, trebuie mai întâi să intre pe scenă. Pentru a plasa un personaj pe scenă, acesta trebuie apelat cu comanda Enter. Doar două personaje pot fi pe scenă în același timp. În caz contrar, nu este clar cu cine se realizează comunicarea. Pentru ca personajul să părăsească scena, trebuie să-l contactați cu comanda Exit. Dacă actul se termină sau trebuie doar să alungați câteva caractere, atunci trebuie să utilizați comanda Exeunt. Se folosește următorul format:
[Intră Julieta] [Intră Romeo și Julieta] [Ieși din Romeo] [Ies Romeo și Julieta] [Ies]Romeo, a young man with a remarkable patience. Juliet, a likewise young woman of remarkable grace. Ophelia, a remarkable woman much in dispute with Hamlet. Prince Hamlet, the flatterer of Andersen Insulting A/S.
Conform modulului Perl Lingua::Shakespeare
Adjective Negativerău, laș, blestemat, blestemat, murdar, dezgustător, dezgustător, prăfuit, rău, gras, cu rinichi gras, orfan de tată, murdar, păros, pe jumătate, oribil, oribil, infectat, mincinos, mizerabil, folosit greșit, curgând, putred, urât mirositoare, mocos, scuze, împuțit, umplut, prost, ticălos, ticălos, îngrijorat
Neutrualb, mare, negru, albastru, cel mai albastru, fără fund, blănos, verde, greu, imens, mare, mic, normal, mov, roșu, rural, mic, mic, galben
Pozitivuimitor, frumos, înflorit, îndrăzneț, curajos, fermecător, clar, viclean, drăguț, delicios, brodat, corect, fin, blând, auriu, bun, frumos, fericit, sănătos, cinstit, drăguț, iubitor, puternic, nobil, pașnic, drăguț, prompt, mândru, cel mai roșu, bogat, neted, însorit, dulce, dulce, de încredere, cald
Substantive NegativeIad, ticălos, cerșetor, blister, codpiece, laș, blestem, moarte, diavolul, pescaj, foamete, flirt-gill, capră, ură, porc, câine, lipitor, minciună, porc, ciumă, foame, broască râioasă, război, lup
Neutruanimal, mătușă, frate, pisică, chihuahua, văr, vacă, fiică, ușă, față, tată, tovarăș, nepoată, bunic, bunica, nepot, păr, hamster, cal, lampă, felinar, vâsc, lună, dimineață, mamă, nepot, nepoată, nas, poșetă, drum, roman, soră, cer, fiu, veveriță, zid de piatră, lucru, oraș, copac, unchi, vânt
PozitivRai, Rege, Domnul, înger, floare, fericire, bucurie, prune, ziua de vară, erou, trandafir, regat, ponei