Parmi les nombreux langages de programmation existants se trouve le Whitespace. La programmation dans ce langage se fait uniquement avec des espaces, des tabulations et des retours à la ligne. Le code d'un programme en Whitespace sera donc invisible.
Le but de ses créateurs n'était pas de créer un langage de programmation opérationnel, mais était plutôt une plaisanterie.
Commentaires préférés (3)
Imaginez... juste imaginez chercher une erreur dans ce code...
D'ailleurs je vous livre ci-dessous, en exclusivité pour SCMB, les lignes du premier code ayant été écrit avec ce langage:
Voilà.
ces langages de programmations sont dits "exotiques" ou "esoteric" en anglais, et il en existe bien d'autres.
L'un des plus connu est le Brainfuck, un langage a 8 caractères reproduisant la machine de Turing. En gros, imaginez que vous avez un bandeau de logeur illimité, et vous pouvez faire des opérations simple : décaler le bandeau a gauche, a droite, augmenter ou baisse la valeur de la case sur laquelle vous êtes positionné de 1, lire la valeur, et d'autres plus complexe comme aller a la case dont la valeur est écrite sur la case actuelle (un pointeur), ou sauter une instruction/revenir a une instruction si la case actuelle contient 0 (permettant de faire des boucles). Et c'est tout. Malgré la simplicité des actions possible, il est possible de faire n’importe quel programme avec.
Un autre langage assez drôle est le SPL (Shakespeare Programming Language), qui a pour but de faire un code ressemblant a une pièce de théâtre Shakespearienne. Par exemple, pour déclarer les variables, on fait rentrer un personnage. La liste des variables est d'ailleurs limité a des noms existants dans des pièces de Shakespeare. Le programme est divisé en scène et en acte, qu'on déclare au début. Pour les calculs, les mots positifs valent 1, les mots négatif valent -1, et précéder un mot par un adjectif le multiplie par deux. On peut ainsi construire n'importe quel nombre en enchaînant des mots positifs et négatifs avec des adjectif. Les programmes écrits en SPL sont très verbeux mais drôle a lire, et ressemblent vraiment a une pièce. Par contre, un simple "Hello World!", programme basique, prend plusieurs lignes.
On peut aussi parler du GolfScript, qui est utilisé pour les code golf : le but est de construire un programme ayant le moins de caractère possible. Certaines personnes bien motivées ont donc créée un langage spécialisé pour ça, et la c'est le contraire du SPL, tout est réduit au minimum, rendant la compréhension du code difficile
Tous les commentaires (30)
Imaginez... juste imaginez chercher une erreur dans ce code...
D'ailleurs je vous livre ci-dessous, en exclusivité pour SCMB, les lignes du premier code ayant été écrit avec ce langage:
Voilà.
Preuve qu'il s'agissait bien d'un troll et pas d'un truc sérieux : le langage de programmation a été inventé le 1er avril 2003 !
ces langages de programmations sont dits "exotiques" ou "esoteric" en anglais, et il en existe bien d'autres.
L'un des plus connu est le Brainfuck, un langage a 8 caractères reproduisant la machine de Turing. En gros, imaginez que vous avez un bandeau de logeur illimité, et vous pouvez faire des opérations simple : décaler le bandeau a gauche, a droite, augmenter ou baisse la valeur de la case sur laquelle vous êtes positionné de 1, lire la valeur, et d'autres plus complexe comme aller a la case dont la valeur est écrite sur la case actuelle (un pointeur), ou sauter une instruction/revenir a une instruction si la case actuelle contient 0 (permettant de faire des boucles). Et c'est tout. Malgré la simplicité des actions possible, il est possible de faire n’importe quel programme avec.
Un autre langage assez drôle est le SPL (Shakespeare Programming Language), qui a pour but de faire un code ressemblant a une pièce de théâtre Shakespearienne. Par exemple, pour déclarer les variables, on fait rentrer un personnage. La liste des variables est d'ailleurs limité a des noms existants dans des pièces de Shakespeare. Le programme est divisé en scène et en acte, qu'on déclare au début. Pour les calculs, les mots positifs valent 1, les mots négatif valent -1, et précéder un mot par un adjectif le multiplie par deux. On peut ainsi construire n'importe quel nombre en enchaînant des mots positifs et négatifs avec des adjectif. Les programmes écrits en SPL sont très verbeux mais drôle a lire, et ressemblent vraiment a une pièce. Par contre, un simple "Hello World!", programme basique, prend plusieurs lignes.
On peut aussi parler du GolfScript, qui est utilisé pour les code golf : le but est de construire un programme ayant le moins de caractère possible. Certaines personnes bien motivées ont donc créée un langage spécialisé pour ça, et la c'est le contraire du SPL, tout est réduit au minimum, rendant la compréhension du code difficile
Sinon ya aussi le langage pikachu et ses trois instructions: "pi", "pika" et "pikachu". Si si, il existe vraiment : trove42.com/introducing-pikachu-programming-language/
Devinez ce qui est écrit juste au-dessous.
Je parie que vous trouverez pas !
Citons aussi le Ook, le Lolcode, le Malbolge, et leur père à tous, Intercal (qui date des années 70)!
Si j'étais recruteur je posterais une offre d'emploi demandant "5 ans d'expérience en brainfuck orienté objet"...
Seulement 2 anecdotes aujourd'hui ?
Cela dit, je crois que tu as tout à fait raison.
Pour ceux qui voudraient "voir" un vrai programme écrit en whitespace:
99-bottles-of-beer.net/language-whitespace-154.html
Il s'agit d'une boucle qui va écrire 99, 98, 97... 0 bottle(s) of beer on the wall. Le site est célèbre pour présenter le code source de ce petit programme dans un très grand nombre de langages informatique.
Ah, dès que les anecdotes deviennent vraiment inutiles, je les connais déjà !
Un des langages que j'apprécie beaucoup est le COW. Les seules instructions disponibles sont les différentes casses de "moo" ("Moo", "MoO", "MOO",...). Ça ne sert à rien, mais c'est joli.
Certains ont parlé de CodeGolf, un exercice/jeu très intéressant dans lequel il faut minimiser la taille de son code. Un forum existe (codegolf.stackexchange.com/), sur lequel plein de sujets ont été posés. Voir des réponses à des questions tordues qui tiennent en moins de 5 caractères est, à mon sens, magnifique. Les langages utilisés sont généralement optimisés pour le golf et sont illisibles par un néophyte. Ce qui fait passer les résultats, pourtant commentés, pour de la magie !
On peut aussi fakre du js avec des caractère spéciaux ([{}]). C'est tellemrnt plus simple qu'un alert('hello world !'); s'écrit en... Environ 8000 caractère ( je dis ça de tête ). J'encourage les gens à visité la page dédiés aux langages de programations exotiques sur wikipédia d'ailleurs ;-)