b'\n_START_ARTICLE_\nTipado sensitivo al flujo\n_START_PARAGRAPH_\nEn teor\xc3\xada de lenguaje de programaci\xc3\xb3n, tipado sensitivo al flujo es un sistema de tipos donde el tipo de una variable es determinado por el flujo de control._NEWLINE_Cl\xc3\xa1sicamente, en los lenguajes con tipado est\xc3\xa1tico, una variable queda ligada a un tipo durante todo su tiempo de uso. En los sistemas de tipado sensible al flujo, el tipo de una variable puede cambiar dentro del cuerpo de un m\xc3\xa9todo, mientras atraviesa (o fluye a trav\xc3\xa9s de) las estructuras de control. El tipo se determina usando inferencia de tipos y la informaci\xc3\xb3n de tipos fluye usando Tipo de dato algebraico.\n_START_SECTION_\nEjemplo\n_START_PARAGRAPH_\nEl siguiente ejemplo en Ceylon ilustra el concepto:_NEWLINE_ 1 // Object? significa que la variable "name" es de tipo Object pero puedes ser null 2 void hello(Object? name) { 3     if (is String name) { 4         // Ahora "name" has tipo String en este bloque 5         print("Hola, ``name``!"); 6         // es posible ahora usar m\xc3\xa9todos sobre String en ella 7         print(" String.size vale ``name.size``"); 8     } 9     else if (exists name) {10         // Ahora "name" tiene tipo Object en este bloque11         print("Hola, objeto ``name``!");12     }13     else {14         print("Hola a todos!");15     }16 }17 18           _NEWLINE_19 hello(null);20 hello(1);21 hello("Pedro P\xc3\xa9rez");_NEWLINE_Su salida es la siguiente:_NEWLINE_Hola a todos!_NEWLINE_Hola, objeto 1!_NEWLINE_Hola, Pedro P\xc3\xa9rez!_NEWLINE_ String.size vale 8\n_START_SECTION_\nBeneficios\n_START_PARAGRAPH_\nEsta t\xc3\xa9cnica en conjunto con la inferencia de tipos reduce la necesidad de escribir anotaciones de tipo para todas las variables o hacer conversi\xc3\xb3n de tipos, como ocurre en lenguajes con sistemas din\xc3\xa1micos de tipos, reduce la verbosidad en los lenguajes y ayuda a producir c\xc3\xb3digo m\xc3\xa1s conciso, m\xc3\xa1s f\xc3\xa1cil de leer y modificar._NEWLINE_Puede tambi\xc3\xa9n ayudar a obtener implementaciones m\xc3\xa1s r\xc3\xa1pidas de lenguajes con tipos din\xc3\xa1micos al predecir est\xc3\xa1ticamente el tipo de objetos.\xe2\x80\x8b\n_START_SECTION_\nImplementaciones\n_START_PARAGRAPH_\nWhiley, creado por David J. Pearce, fue el primer lenguaje en hacer uso de tipado sensitivo al flujo en 2009.\xe2\x80\x8b\xe2\x80\x8b_NEWLINE_Desde su introducci\xc3\xb3n, otros lenguas han hecho uso de \xc3\xa9l, concretamente Ceylon, Kotlin, TypeScript\xe2\x80\x8b y Facebook Flow.\xe2\x80\x8b\xe2\x80\x8b\xe2\x80\x8b\xe2\x80\x8b'