Aller au contenu

Shakespeare Programming Language

Un article de Wikipédia, l'encyclopédie libre.
Ceci est une version archivée de cette page, en date du 1 février 2008 à 03:47 et modifiée en dernier par Dereckson (discuter | contributions) (Nouvelle page : {{Pas fini}} {{sérieLangagesInfo}} Le '''Shakespeare Programming Language''' ou '''SPL''' est un langage de programmation créé par Karl Hasselström et Jon Åslund en févri...). Elle peut contenir des erreurs, des inexactitudes ou des contenus vandalisés non présents dans la version actuelle.
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)

Modèle:SérieLangagesInfo

Le Shakespeare Programming Language ou SPL est un langage de programmation créé par Karl Hasselström et Jon Åslund en février 2001 dont le code source ressemble à une pièce de théâtre. Il est inspiré de langages comme le Malbolge ou le Brainfuck et doit son noms au dramaturge anglais.

Écrire un programme en SPL

Le développeur écrit son code source sous la forme d'une pièce de théâtre répondant aux conventions suivantes :

  • Les premières lignes du programme forment le titre (jusqu'à ce qu'un point soit rencontré) et sont ignorées. Elles n'ont qu'un but esthétique et sont stricto sensu des commentaires.
  • Les lignes suivantes sont une liste des personnages de la pièce, chacun correspondant à une variable. Il n'existe qu'un seul type de variable, pouvant contenir un nombre entier signé (positif ou négatif). Toutes les variables doivent être déclarées. Seules le nom des personnages de Shakepeare peuvent e^tre utilisés (e.g. Romeo, Juliet, Hamlet, ...)
  • Le programme est un ensemble d'actes et en scènes, servant à la foi de découpage esthétique de la pièce et d'étiquette pour le parser. Chaque acte ou scène est annoncé par une ligne débutant par le mot Act ou Scene suivi d'un nombre romain, et éventuellement d'une titre qui sera considéré comme un commentaire (e.g. Scene I ou Act III : The tree revolution).
  • Chaque scène peut débuter par une entrée de personnages. Pour qu'une variable soit utilisée dans cette scène, il y a lieu de la faire monter sur les planches avant de pouvoir l'utiliser. Cette entrée se traduit par une ligne entre crochet sous la forme [Enter Romeo and Juliet].
  • Chaque scène peut de même se clôturer par une sortie des variable sous la forme d'une ligne comme [Exit Lady MacBeth] ou, s'il y a plusieurs variables, [Exeunt Achilles and Paris]. Si un personnage sort et entre ultérieurement, la variable ne conservera pas sa valeur précédente et sera réinitialisée.
  • Entre les lignes d'entrée et de sortie des personnages, viennent les répliques contenant les instructions du programme. Chaque réplique commence par un personnage (e.g. Ajax:) et une ou plusieurs phrases.
  • Sauf cas particulier énoncé ci-dessous, chaque phrase assignera une valeur. Chaque nom correspond à une constante 1 s'il est joli, -1 dans le cas contraire. Ainsi, flower, joy ou angel vaudront 1, tandis que devil, bastard ou Microsoft vaudront -1. D'autres noms, plus neutres, comme tree vaudront également 1. Tout adjectif précédent un nom le multipliera par deux. Ainsi pour construire des nombres, il y a lieu généralement d'écrire une somme ou une différence de puissances de deux. Ainsi, the sum of a charming cute golden flower and the silly beggar assignera la valeur de 6 ().

Annexes

Notes et références

Voir aussi

Liens externes