Explicar el código usando el arte ASCII

Nota del traductor: típicamente un artículo de viernes el martes por la mañana ... ¿por qué no?



La mayoría de las personas son visuales. Usan imágenes para llegar al fondo del problema. Pero los lenguajes de programación convencionales, por el contrario, se basan en la representación textual. La brecha resultante entre el texto y los gráficos se llena con imágenes ASCII dibujadas con caracteres de texto e insertadas en el código fuente del programa. Los adoro! Una vez lancé un grito en Twitter y me enviaron muchos más ejemplos de los que esperaba. Gracias a todos los involucrados. Este tema surgió con algunos ejemplos excelentes que recopilé y puse en categorías. Para cada imagen, se proporciona un enlace al repositorio correspondiente.

Estructuras de datos


Uno de los usos más comunes del arte ASCII en el código es ilustrar la estructura de datos.

Primer ejemplo del código fuente de LLVM:


Código fuente

Ubicación de los campos en la estructura de datos en Jikes RVM:


Código fuente

Rotar un árbol en Musl:


Código fuente

Cola de dos vías en Rust:


Código fuente

Componentes internos del compilador Swift:


Código fuente

Diseño del elemento en el encabezado Malloc:


Código fuente

Máquinas de estado


Perfiles de Javascript:


Código fuente

RPC en Cloud Spanner:


Código fuente

Estados de flujo de E / S:


Código fuente

Dominio Lógico


Control de flujo en el programa descompilado NWScript:


Código fuente

ECC Insides:


Código fuente

Formato de número:


Código fuente

Circuito cuántico:


Código fuente

Equilibrar las tareas de administración de memoria en el kernel del sistema operativo:


Código fuente

Compatibilidad de tipos (este es un caso particularmente impresionante, ¡porque aquí el arte ASCII es código!)


Código fuente

Formato de archivo DBF:


Código fuente

Tabla de búsqueda para el procesamiento de imágenes:


Código fuente

Forma de función de color:


Código fuente

Estructura de URL:


Código fuente

Una breve referencia sobre las operaciones de cancelación en emacs:


Código fuente
Nota del traductor: todavía hay muchos cuadros similares en el enlace

Geometría


Control de altitud en la computadora de a bordo Apollo (!!!):


Código fuente

Segmentación de la imagen:


Código fuente

Trayectorias de bumerang de Nethack:


Código fuente

Dibujar bordes de elementos en CSS:


Código fuente

Árbol cuadrante:


Código fuente

Control de velocidad de la máquina:


Código fuente

Desplazamiento de página web:


Código fuente

¡Espero que lo hayas disfrutado!

Ejemplo adicional del traductor:

Valores de interpolación de gráficos:


Código fuente

Source: https://habr.com/ru/post/440830/


All Articles