Está en la página 1de 14

6.

000 años de diseño del lenguaje de programación:


Una meditación sobre el lenguaje perfecto de Eco
Alan F. Blackwell
Hecho abstracto 1: Un lenguaje de programación es una forma de decir lo que
debería suceder.
Dato 2: la mayoría de los lenguajes de programación solo pueden ser entendidos por
expertos. Este corto
El capítulo analiza las implicaciones de estos dos hechos, a la luz de muchos otros
lenguajes que históricamente han sido utilizados por expertos para especificar lo que
debería
bolígrafo. El argumento semiótico subyacente a la discusión ofrece algunos
paralelos a
El clásico de Umberto Eco "La búsqueda del lenguaje perfecto".
Prólogo
La verdadera naturaleza de la "computadora" no es que computa , sino que se
comunica -
O más bien, son las personas las que se comunican, utilizando las computadoras.
Esta verdad era aparentemente
Acechándonos durante muchos años, y Clarisse Sieckenius de Souza fue una
pionera.
Entre los informáticos en reconocer las implicaciones. Las computadoras son
máquinas
para el lenguaje Semiótica (y especialmente la Ingeniería Semiótica del Prof. de
Souza
( 2005 ) proporciona una guía invaluable para comprender lo que eso significa en la
práctica.
Este capítulo ofrece una perspectiva diacrónica poco convencional sobre uno de los
más
Aspectos comunicativos transparentes de la informática: la programación
“lenguaje”.
guage ". De Souza y sus colegas han hecho valiosas contribuciones al usuario final.
programación - la rama del diseño del lenguaje de programación relacionado con la
demo-
Acceso crítico y amplio empoderamiento (de Souza et al. 2016 ). Aquí,
consideramos
qué tan bien se han acomodado esas preocupaciones en otros idiomas.
Hace 6000 años
Según el obispo irlandés James Ussher, Dios creó el mundo con un acto de
Idioma alrededor de las 6 pm del 22 de octubre de 4004 aC Este es seguramente el
más poderoso.
Lenguaje de programación declarativo nunca. Pero ¿cuál era la operativa?
AF Blackwell ( ✉ )
Laboratorio de Computación, Universidad de Cambridge, Cambridge CB3 0FD,
Reino Unido
correo electrónico: afb21@cam.ac.uk

Página 2
32
vocabulario - o palabras clave - de este idioma? Dios no habló las palabras dejadas
allí.
ser ligero (Dios todavía no hablaba el inglés de la reina), o incluso los más bíblicos
Latín fiat lux , o hebreo del Antiguo Testamento ‫יְ ה ִ י אֹור‬. No lo sabemos, porque
según
a la historia bíblica de la Torre de Babel, el idioma original del Jardín de
El Edén se ha perdido, y estamos afligidos por la variedad en el lenguaje humano
como castigo.
mentor, causando discordia entre personas que hablan diferentes idiomas. Umberto
Eco, en su popular libro La búsqueda del lenguaje perfecto ( 1995 ), describe la
formas en que los eruditos medievales intentaron redescubrir esa lengua perfecta
original.
guage: el lenguaje en el que Dios creó el cosmos, y también conversó con
Adán.
Historias y Mecanismos
Este capítulo ofrece una breve reflexión sobre el diseño del lenguaje de
programación, desde el
Perspectiva de la historia religiosa y científica. La relación entre 'académicos'
(de varios tipos - filósofos, científicos y sacerdotes) y la gente de todos los días ha
Se han establecido en gran parte por los idiomas que utilizan. Aquí discuto mucho
El diseño del lenguaje de programación reproduce la dinámica de las generaciones
pasadas.
Ciertamente hay diseñadores de lenguajes de programación que han asumido un
¿Qué aspecto profético en sus pronunciamientos, más famoso es el compromiso de
Dijkstra?
Mandamiento de que el GOTO es malo. Pero realmente pasamos mucho más tiempo
tratando de
descubra los fundamentos: para los investigadores en informática que vienen a pro-
El diseño del lenguaje gramming como un ejercicio matemático, parece que debe
haber
un lenguaje original de algoritmos, descubierto no inventado, y que las enormes
variaciones
Ety de diferentes idiomas que vemos en la práctica representan una fuente de Babel-
like
Confusión que parte del ideal.
Debido a que los lenguajes matemáticos se basan en universalmente "verdadero"
(coherente y
relaciones replicables), las matemáticas han sido útiles desde tiempos prehistóricos
para
Fying the World, ya sea una gran pirámide egipcia o un humilde campo de
agricultores. Pero
Quizás más fundamental que representar correspondencias de cantidades físicas.
Mediante medición y cálculo numérico, son idiomas para las especificaciones
específicas.
Cación de pensamiento y acción: secuencia algorítmica, iteración y selección.
El más antiguo de estos lenguajes de especificación discreta seguramente debe ser el
lenguaje.
de tejidos y otros textiles, en los que un artefacto se narra a la existencia, por un
tejedor que "cuenta una historia" de hilos que entran y salen, una y otra vez, hacia
adelante
y de vuelta. Las narraciones por las cuales los textiles se vuelven matemáticos son
especialmente
explícito en el quipu andino, que proporciona un medio tangible para el cálculo.
y almacenamiento de datos.
De la misma manera que una cadena quipu ofrece una narrativa especificada
mecánicamente, entonces
El mecánico Joseph Marie Jacquard adaptó las historias mecánicas de
Autómatas de relojería del siglo X para unir instrucciones para tejer. Terminado
En los próximos 100 años, se adaptó el lenguaje mecánico de la pila de tarjetas
perforadas.
al motor analítico de Charles Babbage y al censo estadounidense de Herman
Hollerith
AF Blackwell

Página 3
33
Tarjetas, demostrando el poder de la secuencia tangible para expresar y generar
Narraciones organizadas de la acción en el mundo.
Tejer historias es antiguo y universal, pero también consume mucho tiempo, no para
los hombres.
Es ruidoso y voluminoso cuando se traduce a cartón y reloj. Si no fuera por
necesidad práctica de materiales y maquinaria tangibles, estos idiomas podrían
Han sido mucho más elegantes. Aparece la tensión entre elegancia y comodidad.
ser perenne En el diseño del lenguaje de programación, a menudo hemos visto casi
religiosos
debates sobre el uso de idiomas que parecen demasiado convenientes para ser
rigurosos, como
cuando Dijkstra se quejó de que BASIC estaba pudriendo las mentes de los jóvenes
mers, o el debate actual entre los lenguajes de sintaxis de bloque y más respetables
análisis de cadena.
¿Seguimos buscando el lenguaje de programación perfecto, como el medieval?
Los eruditos descritos por Umberto Eco? Presumiblemente tal lenguaje reflejaría
verdades matemáticas eternas e innegables, en lugar de historias humanas falibles,
¿Acciones, hábitos y creencias? Por supuesto, las matemáticas formales pueden
coexistir con menos
creencia racional, siempre que se limite a describir las regularidades en lo observado
Mundo en lugar de sistemas de creencias. Por ejemplo, los filósofos griegos y los
matemáticos.
Los cristianos del período clásico desarrollaron usos sistemáticos del lenguaje que
eran independientes.
Pendiente de los rituales y sistemas de creencias de su época. Como resultado, estos
estudiosos de élite
podrían realizar su trabajo analítico manteniendo al mismo tiempo (en ocasiones
irónico) desapego.
El lenguaje de la religión popular y las historias míticas.
Estandarización y Liberación.
La alfabetización administrativa estandarizada del imperio romano creó un entorno
En el que el lenguaje de los filósofos se fusionó con la religión popular,
construyendo sobre el cristianismo del Nuevo Testamento de san Pablo y los
escritores de los evangelios. Debajo
los romanos, el latín se convirtió en el lenguaje estandarizado de su imperio, al igual
que el
lenguaje de programación C, el latín “corría en todas partes”, lo que significa que las
instrucciones escritas
diez en latín podría usarse para especificar acciones en muchos contextos locales
diferentes.
Sin embargo, algo interesante sucedió cuando el latín estandarizado se hizo más
Ampliamente aplicado y también más sofisticado. Aunque la religión cristiana tenía
originalmente fue una religión de liberación (de las restricciones legales hebreas y
romanas
económicos), el cristianismo latino se convirtió en la religión del imperio. Como con
tan
muchas religiones populares, un movimiento anti-elite convertido en una nueva
elite, abrazada por
gobernantes que crearon una infraestructura de catedrales y monasterios bajo la
dirección de
de Roma.
Bajo el imperio romano, el latín se había convertido en una lengua de comercio y de
ley, y
bajo el papado romano, también se convirtió en el lenguaje profesional de los
religiosos
Emonía y debate filosófico. La gramática y el léxico se convirtieron en convención.
Gracias a becas diligentes, y jóvenes monjes eruditos que aprendieron latín
Ganaría un trabajo para toda la vida. Como implementaciones del cálculo lambda,
latín.
6.000 años de diseño del lenguaje de programación: una meditación sobre el
lenguaje perfecto de Eco

Página 4
34
se convirtió en un lenguaje artificial, bien definido y una buena base para el análisis,
la
cación y control.
El problema con todo este material académico especializado, y de hecho la Biblia.
en sí misma, al estar escrito en latín, era que la gente común que no entendía el latín
No se pudo utilizar este lenguaje estandarizado para su análisis y especificidad
diarios.
tareas de la En su lugar, la gente común utiliza idiomas que podrían entender, es
decir,
que a medida que pasaron los siglos, los europeos heredaron dos sistemas de
lenguaje paralelos: uno
que fue formalmente especificado, estandarizado y útil para el trabajo teórico, y uno
Lengua vernácula que la gente realmente utiliza.
Esta desconexión entre el lenguaje religioso formal y el usuario final vernáculo.
El lenguaje era teológicamente problemático, precisamente porque la Biblia ofrecía
una
Mensaje democrático ulista, en el que se suponía que los creyentes individuales
debían ser liberados.
Del aparato formal del ritual farisaico y del control estatal. Una nueva generación de
populistas como Wycliffe, Gutenberg y Lutero se dieron cuenta de que las cosas
importantes
Debe expresarse en el lenguaje del usuario final. La tecnología de los medios de
impresión.
La prensa exigía un lenguaje vernáculo que los lectores externos pudieran entender.
los monasterios
¿Hay algún lugar para un especialista, y se especifique formalmente, el idioma en
una edad de
medios vernáculos? Aunque todavía hay personas que leen y escriben en latín, la
única
El lugar todavía se usa para negocios y la filosofía está en el Vaticano. Aquí no es
donde
Queremos que nuestros lenguajes de programación estén dentro de 500 años.
El monasterio moderno: del latín a las matemáticas
Por supuesto, los lenguajes de programación también son herramientas científicas,
no puramente para todos los días.
Descripción de acciones y políticas. Quizás el mayor logro del inglés.
ciencia del renacimiento, filosofía de Isaac Newton, Naturalis Principia
Mathematica ,
(principios matemáticos de la filosofía natural) siguiendo las tradiciones monásticas.
La beca, se publicó no solo en latín, sino en el lenguaje de las matemáticas.
Este libro se convirtió en el arquetipo de la beca de élite en mi propia universidad en
Cambridge.
Newton continuó la tradición de los filósofos clásicos y de su
astrónomos porosos aplicando estos idiomas a la descripción de lo observado
mundo (en lugar de la experiencia o las creencias humanas) - la empresa de
“filosofia natural”
phy ". Si bien cualquiera puede observar un planeta o un arco iris, es una traducción
de estos
Observaciones en lenguaje formal que proporciona la base para la ciencia. Así que al
igual que con
La separación entre religión vernácula y teología latina, filosofía natural.
introdujo formas especializadas de describir la experiencia cotidiana que excluía la
'usuarios finales' de la sociedad sin educación.
Una consecuencia interesante de estos desarrollos, dentro de la rígida clase de
inglés.
sistema, fue que el lenguaje de las matemáticas, al igual que el latín anterior, se
convirtió en un
Significante del logro educativo entre la élite académica. Desde Newton,
Los estudiantes de Cambridge han sido sometidos a un examen competitivo de
AF Blackwell

Página 5
35
Habilidad matemática - los 'tripos matemáticos'. Los que demuestran primera clase.
Las habilidades son los 'Wranglers', con el mejor galardonado con el título de
'Senior Wrangler', y
ellos destinados a una vida de reconocimiento por su capacidad académica suprema
(Warwick
2003 ).
Desde la época de Newton hasta el presente, el 'lenguaje de programación' de las
matemáticas
El argumento y la demostración emocional ha servido como la medida de la
excelencia académica.
Lencia, más allá de su clara utilidad. Este fue todavía el caso cuando mi
Departamento propio se formó como el 'Laboratorio de Matemáticas' en 1937.
Charles
Babbage había sido uno de los sucesores de Newton como profesor de matemáticas
en Lucasia.
Ematics, y en una historia alternativa, Turing también podría haber sido. La
matemática
El laboratorio hizo matemáticas, en una época en que los lenguajes de programación
eran matemáticos.
idiomas, como FORTRAN el Traductor de fórmulas.
Aunque los eruditos en la tradición de Babbage y Turing aplican lenguajes formales.
A problemas prácticos, muchas universidades conservan una admiración por la
habilidad en símbolo.
Manipulación en lugar de aplicación práctica. Uno de mis colegas reportó una
discusión de la conferencia recapitulando el rechazo de BASIC de Dijkstra, pero
esta vez
contrastando el lenguaje Python (diseñado para accesibilidad) con el lenguaje ML
(diseñado para la elegancia matemática): John Ousterhout preguntó si sería
no es justo caracterizar el LD como un lenguaje para personas con puntos de IQ en
exceso. Alguien
en la audiencia se ofreció voluntariamente que ML es una programación estándar
de pregrado
lenguaje en Cambridge, sin decir si eso significaba "sí" o "no". (Jeff
Haemer, citado en Stajano 2000 )
En este monasterio moderno, vemos usos del lenguaje matemático que se hacen eco
de aquellos
del latín escolar. Al igual que el latín, las matemáticas formales se alejan de ser una
Manera dardizada y utilitaria de describir el mundo. A medida que estos idiomas se
convirtieron
más precisos, y definidos con mayor precisión, también se hicieron menos
accesibles, una
Juego para especialistas en lugar de una herramienta para usuarios finales.
Los vernáculos vulgares: ciencias naturales e ingeniería
El problema es que el mundo cotidiano parece desafiar nuestra capacidad de analizar
y
Especifíquelo de manera bien definida. Lenguajes artificiales con reglas acordadas y
cuantificaciones.
La información es útil para algunos propósitos, por ejemplo, cuando necesitamos
com-
Compare los puntajes de desempeño del Senior Wrangler con los de otros
matemáticos
Más abajo en el ranking de élite. Las lenguas bien definidas funcionan bien en los
monasterios
y universidades, donde todos aceptan jugar el mismo juego con las mismas reglas,
pero otros se quejan cuando los monjes y profesores insisten en que el resto del
mundo use
sus reglas, especialmente cuando esas reglas significan que los monjes y profesores
ganan el
¡juego!
Hubo una revuelta, de algún tipo, cuando los defensores de la investigación
científica argumentaron que
uno no debe simplemente rendir exámenes, sino observar el mundo, recolectar
evidencia y analizar
Sí, para comprender la naturaleza de la Creación. Este fue un espíritu que condujo a
la
geología de Adam Sedgwick (haciendo de nuestra historia un poco más de 6000
años), y
6.000 años de diseño del lenguaje de programación: una meditación sobre el
lenguaje perfecto de Eco

Página 6
36
Por supuesto a Charles Darwin. Filosofía natural, historia natural y natural.
La ciencia hizo campaña por nuevos tipos de trabajos universitarios que recolectaron
especímenes y
Experimentos realizados. Cuando se combinó con las nuevas matemáticas, la física
fue
transformado
A lo largo del siglo XIX, los lenguajes formales de descripción y análisis.
interactuado con las fuentes de riqueza económica - la revolución industrial y la
Motor de vapor: para garantizar que la física fuera la más prestigiosa de todas las
Ciencias En el apogeo de la máquina de vapor y de la ingeniería mecánica, el motor
La física se había convertido en el “lenguaje de programación” para la tecnología de
El dia. Los fundamentos de la ingeniería eléctrica se pueden encontrar en la
sistemática.
Descripciones matemáticas del aparato experimental. Experimentalistas e indus-
Los expertos en pruebas hablaron el mismo idioma, con algunos simplemente un
poco más emprendedores.
que otros - mucho como hoy!
Esto introduce un problema para el estudio académico, sin embargo, la ciencia
natural era
Democrático, porque cualquiera puede ir y observar. Si estudiamos cosas que
hacemos.
nosotros mismos, entonces existe el peligro de producir una vez más un lenguaje
académico
irrelevancia, más que valor práctico. Esto no parece haber ocurrido a la
lenguaje de especificación de la física y el mecanismo (aunque la campaña
implacable
es necesario para mantener el plan de estudios STEM en las escuelas), pero ¿existe
el peligro de que
¿Podría pasar a los lenguajes de especificación de la informática?
Herb Simon argumentó que no podemos considerar la informática como una ciencia
natural,
En el que salimos y observamos el mundo. Es en cambio una ciencia de lo artificial.
Estudiando las cosas que también estamos haciendo. Las ciencias experimentales
apuntan a controlar y
Comprender los fenómenos existentes a nuestro alrededor. Ciencias del objetivo
artificial para crear.
Nuevos fenómenos. La programación de computadoras es una de las áreas en la vida
humana donde
hacer cosas nuevas y estudiar lo que hacemos, las cosas que hacemos y estudiamos
en com-
La ciencia puter es un artefacto del lenguaje, tanto como la música, las novelas o la
escritura.
La poesía es.
Estas no son analogías que son bienvenidas al científico en computación, porque
sugiere que podríamos necesitar estudiar a las personas, en lugar de los fenómenos
naturales. De
Por supuesto, es posible estudiar a las personas, pero más bien molesto, no se
quedan quietos.
mientras lo hacemos. Cuando Newton observa la luz en un prisma, observa que
Las marcas serán las mismas cuando vuelva a mirar. El prisma no cambia de
opinión.
Para dividir los colores en un orden diferente. Sin embargo, cuando observamos y
describimos un
comportamiento de su hijo, esa persona puede (y con frecuencia lo hace) luego
decidir comportarse completamente
diferentemente.
¿Una ciencia de lenguajes de programación?
La gente es molesta e inconsistente. Hacer lenguajes de programación sería tan
¡Mucho más fácil, si solo las personas no estuvieran involucradas! Una forma de
evitar esta molestia es
Hacer lenguajes de programación que están diseñados específicamente para
inversiones filosóficas.
tigación - como el latín escolástico medieval, o los ejercicios de la matemática
AF Blackwell

Página 7
37
Tripos Sin embargo, una irritación persistente para la investigación del lenguaje de
programación.
comunidad es que el lenguaje de programación es una interfaz de usuario, entre los
Grammer (que es una persona falible) y la computadora.
La tensión entre el deseo de precisión matemática y lo molesto.
variabilidad de los usuarios finales, subyace a muchos debates que veo en la
programación de
Comunidad de guias. Personas que han sido formadas como matemáticos y físicos.
están increíblemente decepcionados, cuando se les dice que los idiomas bien
definidos y
Los experimentos predecibles a los que están acostumbrados podrían no funcionar
tan bien si la programación
El lenguaje va a ser utilizado por la gente. Hay sugerencias que necesitamos
Una “física” del lenguaje (Moody 2009 ), que simplemente nos lo dirá mediante un
análisis mecánico.
Sí, cuáles serían las mejores opciones de diseño. O hay llamadas a "basadas en la
evidencia"
diseño del lenguaje de programación (Kaijanaho 2015 ), en el cual se asignó un
control aleatorio
Los ensayos se utilizan para comparar diseños de lenguajes alternativos para la
usabilidad, de la manera
de un ensayo farmacéutico.
La lamentable verdad es que estos enfoques son solo parcialmente efectivos, cuando
Se trata de las ciencias de lo artificial. La informática se enfrenta perennemente a los
viejos.
broma que si una disciplina académica tiene la palabra "ciencia" en su nombre, esto
es un signo
Que no es una ciencia. Si aceptamos la definición de Herb Simon, entonces somos
ciencia de
Lo artificial, estudiando las cosas que construimos. También podemos usar el
clásico experimental.
técnicas, siempre y cuando estemos realizando experimentos clásicos, acelerando
una
compilador o reduciendo el número de iteraciones en un algoritmo de comprobación
de tipo.
Pero las cosas se ponen difíciles cuando las personas están involucradas, y los
lenguajes de programación
involucrar a las personas. Quizás esto ni siquiera sea una ciencia de lo artificial,
porque no lo hacemos.
Haz gente, y no podemos decirles qué hacer. En cambio, tenemos que observar y
comprenderlos, incluso cuando son molestos e inconsistentes, lo que no es frecuente
divertido. Sin embargo, hay un enfoque para estudiar personas molestas e
inconsistentes en
Una vía científica, que parece útil para estudiar programación. También es útil para
el estudio de otros fenómenos artificiales que involucran a las personas, como la
música, la poesía o
religión. Además, nos ayuda a entender algunas de las dinámicas que he sido
Describiendo, en los cuales sistemas filosóficos perfectamente sensibles, habilidades
académicas y
Las lenguas artificiales se vuelven difíciles cuando se enfrentan a lo cotidiano y
político popular.
problemas icos
El filósofo del siglo XX Husserl, consciente de todos estos problemas, sugiere
Manifestó que las ciencias naturales del siglo XIX debían ser complementadas.
Con una ciencia de la cultura . Fue necesario desarrollar rigurosos métodos de
observación.
La información y el análisis que podrían usarse para comprender cómo las personas
crean y consumen
cultura. Yo diría que la programación es una parte de la cultura moderna, mucho
más que
es parte de la ciencia, y el lenguaje de programación es tanto un lenguaje humano
Guage (o al menos una interfaz de usuario) ya que es una notación matemática.
El software se ha convertido en un medio cultural en el que las personas quieren
divertirse,
municate, diviértete y así sucesivamente. Comprensión científica de estos
fenómenos.
Requiere un enfoque fenomenológico. En mi propio caso, tomo prestado de mi
se graduó con especialización en religión comparada, y las variedades clásicas de
William James
Experiencia religiosa (1910) como un estudio sistemático de las creencias y
prácticas cotidianas.
En el momento en que estaba estudiando, muchos de los métodos de investigación
en la religión comparativa
6.000 años de diseño del lenguaje de programación: una meditación sobre el
lenguaje perfecto de Eco

Página 8
38
fueron fenomenológicos - enfatizando la necesidad de hablar con las personas sobre
sus experiencias
y desarrollar descripciones sistemáticas, en lugar de buscar la verdad objetiva sobre
La naturaleza fundamental de la religión.
Como resultado, mi propia investigación se ha centrado en comprender las
variedades de programas
Experiencia ming (Blackwell y Fincher 2010 ). Estoy menos interesado en entender-
Ingeniendo las experiencias de los diseñadores de lenguajes de programación, y más
interesados en
Comprender la experiencia cotidiana, como la religión de las personas que hablan
inglés.
En lugar de la religión de las personas que hablan latín. De hecho, hay dos razones
Por eso creo que es una mala idea escuchar demasiado las opiniones de los
programadores.
Diseñadores de guage: uno académico y otro práctico. La razón académica es que la
Las personas que diseñan lenguajes de programación pueden hablar fácilmente por
sí mismos.
y, de hecho, sus puntos de vista son bastante amplios e influyentes, por lo que parece
que puedo
Ofrece un mejor valor académico diciendo cosas diferentes del resto de la multitud.
La razón práctica es un principio básico de un buen diseño de interfaz de usuario.
Una pro-
El lenguaje gramming es claramente una interfaz de usuario, entre el programador y
el
compilador (o máquina virtual). Como con todo trabajo de diseño de interfaz de
usuario, el diseñador
Debe recordar que el usuario no es como ellos. Estudiantes de informática a menudo
cometa el error de asumir que los usuarios sabrán lo que saben y pensarán
la forma en que lo hacen. Les explicamos a nuestros estudiantes que esto no puede
ser cierto, porque la
el diseñador entiende los detalles internos del sistema que el usuario nunca debe
tener en cuenta
de. Más importante aún, el conjunto de equivalencia de estudiantes de informática es
suficientemente pequeño para que este no sea un mercado muy atractivo, por lo que
el diseño de acuerdo con
Las necesidades e intuiciones propias parecen ser una receta para ganancias muy
pequeñas, o incluso
falla de mercado.
En el caso de los lenguajes de programación, la mayoría de los inventores del
lenguaje de programación.
tener un profundo conocimiento del diseño de compiladores y verificadores de tipos,
y una considerable
Experiencia de escribir programas para implementar tales cosas. Cuando se
imaginan que
Una tarea de programación típica parece, su imaginación se basa a menudo en su
experiencia personal - piensan que las tareas típicas de programación son como esas
Participa en el diseño de compiladores y verificadores de tipos. De hecho, esta
creencia no es simplemente
implícito - se defiende explícitamente, en la costumbre de larga data de que una
buena prueba de
Un nuevo lenguaje es ver si puede compilarse. Desafortunadamente, las
implicaciones
Mi argumento es que esta es la peor prueba de un nuevo idioma, si se puede
compilar
En sí, esto puede ser una señal de que ha creado una herramienta para otros
escritores de compiladores, y
posiblemente para nadie más.
Epílogo
Entonces, si íbamos a adoptar un enfoque fenomenológico para comprender la
experiencia de usuario de la programación, y si íbamos a tomar las decisiones
estratégicas
La idea de que las últimas personas que han escuchado son los diseñadores
existentes de
Guages, ¿cómo deberíamos hacer esa tarea? Los resultados podrían ser muy
significativos, si
Consideramos la próxima generación de lenguajes de programación a la luz de la
AF Blackwell

Página 9
39
Ejemplos históricos que he discutido. Tal vez tengamos un gran avance en su
camino,
comparable al período en que el latín medieval fue abandonado por un lenguaje
cotidiano
de filosofía, o cuando la destreza matemática fue reemplazada por la naturaleza
¿ciencia ral de la observación? Las oportunidades económicas y comerciales de
La programación vernácula ciertamente parece tan profunda hoy en día como en los
siglos pasados.
Riesgos: todo lo que necesitamos es ver dónde están.
De alguna manera, el diseño del lenguaje de programación parece una rama
anticuada.
de la informática. Estudiantes excitables y comentaristas de medios están bajo la
impresión de que las futuras computadoras se “enseñarán” o resolverán qué hacer
a través del diálogo equivalente de Turing-test con amos humanos (o servidores). Mi
punto de vista es
que la Ingeniería Semiótica continuará ofreciendo una perspectiva crítica sobre las
aplicaciones
Cationes de inteligencia artificial y sistemas de aprendizaje profundo. Clarisse
Sieckenius de
Souza nos pide que consideremos no solo cómo, sino con quién estamos hablando.
Las características superficiales de los lenguajes de programación están cambiando
constantemente, ya sea
Reglas, iconos, etiquetas, o auriculares de realidad virtual. Pero siempre hay gente
que habla.
En g. La retórica de los tecnólogos y los arreglos comerciales de la tecnología.
Las corporaciones, pueden intentar ocultar este hecho. Pero reconociendo las
computadoras como
Los sistemas de guage son esenciales para una ciencia humana de la computación.
Referencias
Blackwell AF, Fincher S (2010) PUX: patrones de experiencia de usuario.
Interacciones 17 (2): 27–31
Eco U (1995) La búsqueda del lenguaje perfecto. Wiley, londres
James W (1910) Las variedades de la experiencia religiosa: un estudio sobre la
naturaleza humana. Longmans Green
and Company, Nueva York
Kaijanaho AJ (2015) Diseño de lenguaje de programación basado en evidencia: un
método filosófico y
exploracion ologica Jyväskylä estudia en informática, p. 222
Moody D (2009) La “física” de las notaciones: hacia una base científica para
construir notas visuales.
en ingeniería de software. IEEE Trans Softw Eng 35 (6): 756–779
de Souza CS (2005) La ingeniería semiótica de la interacción humano-computadora.
Prensa del MIT,
Cambridge, MA
de Souza CS, de Gusmão Cerqueira RF, Afonso LM, de Mello Brandão RR, Soares
J, Ferreira
J (2016) Desarrolladores de software como usuarios: investigaciones semióticas en
software centrado en el ser humano.
desarrollo. Springer, Nueva York
Stajano F (2000) Python en la educación: criando una generación de hablantes
nativos. En: Procedimientos de
8va conferencia internacional de python
Warwick A (2003) Maestros de teoría: Cambridge y el auge de la física matemática.
los
Prensa de la Universidad de Chicago, Chicago. ISBN 0-226-87375-7
6.000 años de diseño del lenguaje de programación: una meditación sobre el
lenguaje perfecto de Eco

También podría gustarte