- Hay diferentes convenciones. Convenciones en matemática, lógica y ciencias aplicadas y convenciones en TI. Los primeros son mucho mayores.
- Los lenguajes científicos están hechos para hacer la vida de SUS usuarios más conveniente. El usuario es visto como un científico, que puede realizar algún algoritmo de vez en cuando o verificar alguna teoría, sin la necesidad de aprender algo realmente nuevo. Por lo tanto, los idiomas para los científicos DEBEN estar compuestos por estándares que no sean de TI. Porque no están destinados para el uso de personas de TI. Están a la altura de OTROS estándares y eso es bueno debido al objetivo auditivo. Debido a que la buena interfaz de usuario de SW y el idioma es la interfaz de usuario de SW, debe hacerse en función de las necesidades del usuario, no del codificador.
- Nuestros estándares de TI son estándares de la industria. TI es industria. La ciencia no es industria. Los científicos están orgullosos de ello. Y de mala gana tomarían cualquier cosa de nuestra práctica en la suya. Y no les gustan los estándares en absoluto. Y a nadie le gustan los estándares extranjeros. Por lo tanto, si alguien crea un lenguaje científico que cumpla con los estándares de TI, difícilmente se vendería bien, debido a la aversión del auditorio objetivo, incluso si fuera objetivamente más conveniente.
E incluso si juzgamos solo de acuerdo con los estándares de TI ... Lo sentimos, ¿a qué estándares te refieres? ¿Has intentado escribir un programa en APL o SNOBOL? Estos dos idiomas son, en mi humilde opinión, los MÁS poderosos en los campos apropiados (conteo y cadenas). Pero la sintaxis es algo MUY extraño (y efectivo) Leer una línea de código APL podría llevar días. Por otro lado, dicha línea es una pieza seria de SW. Regresarías a Mathlab con lágrimas de alivio.
En cuanto a "=", muchas personas tienen problemas para acostumbrarse a que no se trata de igualdad, sino de asignación. Por cierto, en Pascal es la igualdad y la asignación es ": =".
¿Y realmente crees que == para la igualdad es más natural? Por el contrario, mezclar = y == es el error MÁS común en la programación en C, ocurre muy a menudo incluso en IDEs contemporáneos, con su control automático.
Acerca de la indexación desde 1: es la única natural. Cuando eras niño, habías aprendido poemas y canciones, donde contabas: uno, dos, tres ... Y no 0,1,2 ... En matemáticas escolares estudiamos que el conteo comienza desde 1, y que 0 no pertenece a números naturales / contables. Solo con la definición de funciones vienen los índices no naturales. Después de todo, el 0 fue inventado muchos miles de años después de que nuestro antepasado levantó un dedo.
0-start fue más sencillo de realizar e inmediatamente se metió en la práctica de TI después de la aparición de C. Pero en Fortran, el primer idioma, se usa la indexación 1. Lo mismo con otros idiomas de la época preindustrial.
Y sí, había leído el artículo de Dyjkstra sobre la naturalidad del conteo basado en 0. Y totalmente en desacuerdo con su argumentación. Es natural para los músicos solo. E incluso 0 entusiastas que crean los compiladores de C y Java, ¡cuenten las líneas del código que COMENZAN DE 1!