He estado buscando un lenguaje de programación práctico que no tenga palabras clave reservadas, pero no he tenido suerte de encontrarlo.
Estoy trabajando en un lenguaje de programación para mi propia edificación y entretenimiento y aún no he necesitado incluir ninguna palabra clave, eso es lo que me llevó a mi búsqueda y la pregunta:
No creo que la conveniencia para el escritor del compilador sea importante para el usuario final del lenguaje. Las computadoras son lo suficientemente potentes hoy en día como para poder inferir significados del contexto. No más de lo que un escritor necesita etiquetar sustantivos, verbos y demás al escribir una novela, ¿por qué un programador debe etiquetar funciones y variables con function x() {}
o set x = 1
o var x = 1
etc; ¿Cuándo puedo inferir del contexto de las declaraciones que es una declaración de función o una invocación o que una etiqueta es una asignación a un valor o una referencia a ese valor de etiquetas?
Aquí hay un ejemplo concreto de lo que está haciendo mi analizador actual, sin necesidad de palabras clave reservadas para admitir cosas comunes que normalmente tendrían un montón de ruido como func
o function
o dec
o no.
Declaración de funciones
sum3(a,b,c) -> a + b + c.
Invocación de funciones
x = sum3(1,2,3).
Función anónima llamada x
x = (a,b,c) -> a + b + c.
y = x(1,2,3).
Me gustaría saber por qué las palabras clave son tan importantes para un lenguaje de programación exitoso.