No creo que puedas programar sin crear un nuevo idioma, así que es bueno saber que estás haciendo eso y entender los problemas.
- ¿Qué es un idioma?
Vocabulario, sintaxis y semántica.
Un lenguaje estándar como VB, Java, C #, etc. es solo un lenguaje base . Tan pronto como le agrega clases, métodos, etc., ha agregado vocabulario y semántica.
Hay muchas formas de implementar idiomas: análisis y amp; traducción, análisis y amp; interpretación, macros sobre un idioma existente, agregando clases y métodos a un idioma existente.
- ¿Qué desea que haga un idioma?
Sea bueno para expresar los problemas de manera concisa.
¿Cómo sabes si has hecho esto? La medida que uso es editar recuento . Si aparece el requisito de una frase A, procedo a implementar el requisito en el código. Cuando termine & eliminé todos los errores, verifico el código y el repositorio de códigos me da una lista de los cambios que hice, B. Cuanto más pequeña es B, mejor es el idioma. Promediado en el espacio de real & posibles requisitos, esa medida me dice cómo "específico del dominio" es el idioma.
- ¿Por qué es buena la concisión?
Porque minimiza los errores.
Si se requieren cambios en el código N para implementar el requisito 1, y a veces se cometen errores, entonces el número de errores que introduce es aproximadamente proporcional a N. En el límite donde N = 1, es casi imposible de introducir un error sin intentarlo.
Tenga en cuenta que este es un desafío directo al "código inflado" que vemos hoy en día.
AGREGADO: En respuesta a su solicitud de un ejemplo, consulte Ejecución diferencial . No diré que se puede entender rápidamente, pero reduce significativamente el código de UI.