Categorías de bucles 'for'


11

Recuerdo que una vez la lectura de algunas investigaciones donde se había analizado un conjunto de código C, y los resultados fueron que la gran mayoría de los forbucles se podría clasificar en unos cinco categorías, que corresponden a los equivalentes funcionales de map, filter, fold, etc.

Parece que ya no puedo encontrar este artículo / artículo. ¿Alguien puede señalarme?


3
Encontré algo similar en el desbordamiento de la pila: stackoverflow.com/a/2647704/1009414 Tal vez allí encontrará información sobre este artículo.
Thaven

1
homomorfismos, catamorfismos y anamorfismos, etc. pueden valer un google, para bucles que no están en las listas
jk.

Respuestas:


11

Esta no es una coincidencia exacta para lo que estaba solicitando, pero creo que se acerca bastante a la raíz de su pregunta.

La página de este sitio en Loops discute una serie de patrones de bucle.

  • contando
  • recuento filtrado
  • acumular
  • filtrado-acumulado
  • buscar
  • extremo
  • índice extremo
  • filtrar
  • mapa
  • barajar
  • unir
  • fosilizado
  • condición perdida

También tienen una página sobre Recursión que cubre muchos de los mismos patrones de manera recursiva.


14
... esperaba que los bucles "extremos" fueran más, bueno, extremos ...;)
Izkata

0

Creo que también lo he escuchado. En algún lugar de los videos SICP o del libro, creo que escuché que la mayoría (si no todos) los programas / algoritmos se pueden expresar usando flujos y filtros. Las corrientes comienzan en la clase 6A.

En cuanto a todos los bucles (para, while, do-while, etc.), todos se implementan con etiqueta, comparación y salto condicional, por lo que son solo azúcar sintáctico para que sea más fácil de leer y comprender.

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.