En los primeros días de la programación los programadores introducían instrucciones en el computador como secuencias de unos y ceros. Los códigos mnemónicos del lenguaje ensamblador fueron abstracciones diseñadas para liberar a los programadores de recordar los patrones de bits que componían cada instrucción.
El próximo nivel de abstracción vino de la mano de la posibilidad de crear instrucciones definidas por el programador. El conjunto de instrucciones de una máquina dada podía, de esta manera, ser extendido al agrupar secuencias de estas instrucciones nativas en macro instrucciones. A estas macro instrucciones los programadores podían asociarle un nombre, de modo que la invocación de este nombre involucraba la ejecución de las instrucciones asociadas a él.
Un nivel más de abstracción se introdujo con los llamados lenguajes de alto nivel. Los lenguajes de alto nivel permitieron que los programadores tomaran distancia de la arquitectura de una máquina dada. En este punto también se reconoció que ciertas secuencias de instrucciones resultaban universalmente válidas y los programas comenzaron a escribirse en términos a estas.
La programación estructurada propició otro nivel de abstracción al reconocer estructuras de control tales como la iteración y la selección, que al ser incorporadas a los lenguajes de alto nivel permitieron que los programadores se abstrajeran de los detalles involucrados en el control de la secuencia de ejecución de sus expresiones.
Más recientemente, un nuevo nivel de abstracción se introdujo con el concepto de tipo de dato abstracto que permitió que los programadores escribieran código sin considerar la forma en la cual los datos se representan. A este nivel los programadores pueden producir código en un nivel de abstracción superior al considerar solamente que puede ser hecho con los datos no como es hecho ni como estos están representados.
El siguiente nivel de abstracción vino de la mano de la provisión de mecanismos lingüísticos que permitieron a los programadores expresar la relación de semejanza existente entre ciertos tipos de datos abstractos.
Bueno, eso es todo para esta entrada. Saludos lectores! y hasta mañana!
Soy amante de la programación, me gusta ver y crear cosas nuevas... Me gusta el metal, rock, y también daftpunk jajaja