Note du traducteur: généralement un article du vendredi mardi matin ... pourquoi pas?
La plupart des gens sont des visuels. Ils utilisent des images pour aller au fond du problème. Mais les langages de programmation traditionnels, au contraire, sont basés sur une représentation textuelle. L'écart qui en résulte entre le texte et les graphiques est rempli d'images ASCII dessinées à l'aide de caractères de texte et insérées dans le code source du programme. Je les adore! Une fois, j'ai lancé un cri sur Twitter et ils m'ont envoyé beaucoup plus d'exemples que ce à quoi je m'attendais. Merci à toutes les personnes impliquées. Ce sujet a proposé d'excellents exemples que j'ai rassemblés et classés en catégories. Pour chaque image, un lien vers le référentiel correspondant est donné.
Structures de données
L'une des utilisations les plus courantes de l'art ASCII dans le code est d'illustrer la structure des données.
Premier exemple du code source LLVM:
Code sourceEmplacement des champs dans la structure de données dans Jikes RVM:
Code sourceFaites tourner un arbre dans Musl:
Code sourceFile d'attente bidirectionnelle à Rust:
Code sourceInternes du compilateur Swift:
Code sourceDisposition de l'article dans l'en-tête Malloc:
Code sourceMachines d'état
Profilage Javascript:
Code sourceRPC dans Cloud Spanner:
Code sourceLe flux d'E / S indique:
Code sourceLogique de domaine
Flux de contrôle dans le programme décompilé NWScript:
Code sourceECC à l'intérieur:
Code sourceFormatage des nombres:
Code sourceCircuit quantique:
Code sourceÉquilibrage des tâches de gestion de la mémoire dans le noyau du système d'exploitation:
Code sourceCompatibilité des types (c'est un cas particulièrement impressionnant, car ici l'art ASCII
est du code!)
Code sourceFormat de fichier DBF:
Code sourceTable de recherche pour le traitement d'image:
Code sourceForme de la fonction couleur:
Code sourceStructure URL:
Code sourceUne brève référence sur l'annulation des opérations dans emacs:
Code sourceNote du traducteur: il y a encore beaucoup de graphiques similaires sur le lienGéométrie
Contrôle d'altitude dans l'ordinateur de bord Apollo (!!!):
Code sourceSegmentation de l'image:
Code sourceTrajectoires Nethack boomerang:
Code sourceDessiner les bordures des éléments en CSS:
Code sourceArbre quadrant:
Code sourceContrôle de la vitesse de la machine:
Code sourceDéfilement des pages Web:
Code sourceJ'espère que ça vous a plu!
Exemple supplémentaire du traducteur:Valeurs d'interpolation du graphique:
Code source