Mensaje de error
En el mensaje, %s marca un valor que el motor completa cuando lanza el error.
La historia
Un builtin respondió con una palabra que el motor no reconoce, y por eso no pudo nacer. Todo builtin debe contestar una pregunta única: ¿ejecutarme produce un valor? Esa respuesta se escribe en su campo production_test, y solo hay unas pocas palabras válidas, declaradas en trinity.feml. Aquí apareció una palabra fuera de ese vocabulario. Podrías pensar que el motor debería interpretarla con buena voluntad, como la más parecida. Pero no: una respuesta que no está en el vocabulario es la respuesta a otra pregunta, y derivar de ella un tipo sería inventar un segundo criterio. Peor aún, un tipo por defecto sería un tipo que nadie derivó, justo lo que el diseño quiere impedir. El mensaje dice qué builtin y qué palabra. Un ejemplo: si las respuestas válidas son tres y el builtin escribió una cuarta, por una errata, este es el rechazo. Hay dos arreglos, y ninguno toca código C: corrige la palabra para que sea una de las declaradas, o declara una nueva respuesta en trinity.feml. En ambos casos el motor vuelve a arrancar.
Texto del catálogo de errores del motor de Rush.
