Debido a que su pregunta expresa el problema en términos absolutos, debo responder “No”. No es posible escribir un documento que no deje absolutamente espacio para la interpretación de futuros lectores. El lenguaje mismo evoluciona con el tiempo; por ejemplo, la palabra “conversación” significaba algo diferente en 1600 de lo que significa hoy.
Creo que los documentos más cercanos a su objetivo son los programas de computadora. Estos se escriben usando una sintaxis estructurada con significado dictado por estándares, pero aun así, los estándares, intencionalmente y no intencionalmente, dejan espacio para la interpretación y es posible que un programa se ejecute de manera ligeramente diferente bajo estrés en diferentes entornos de ejecución debido a diferencias en el tiempo, recursos disponibles e implementación de dependencias.
For j = 1 to 10: print j
Parece sencillo, ¿verdad? Pero, ¿debería imprimirse el número 1 como “1” o como “1.0”?
- ¿Qué tengo en cuenta al escribir una novela de ciencia ficción?
- Cómo crear un libro de ficción realista sobre el origen natural y la evolución de la vida en un mundo extraño
- ¿Puedes criticar el poema de la imagen a continuación por estilo y contenido?
- Novelas: estoy escribiendo una novela y necesito algunas segundas opiniones.
- ¿Dónde puedo encontrar un escritor de artículos bueno pero asequible?
Los segundos documentos más cercanos, en mi opinión, son documentos estándar de la industria. Los autores tienen mucho cuidado en dejar en claro qué es normativo y qué es informativo, usando palabras como “deberá” y “puede” y “debe” y “obligatorio” y “opcional” junto con un lenguaje preciso. Estos documentos (incluso aquellos que especifican lenguajes de computadora) a menudo codifican compromisos entre competidores con implementaciones conflictivas; Algunas cláusulas son deliberadamente vagas para que las implementaciones existentes sean compatibles. Aquí hay un ejemplo del estándar de la industria de telecomunicaciones TIA-678-A, que ayudé a redactar:
Descripción
Este parámetro selecciona o indica la pila del lado DTE que utilizará el DCE la próxima vez que ingrese el estado de datos en línea. El DCE no necesita permitir cambiar el valor de + WS45 del estado del comando en línea. Consulte las Figuras 2, 3 y 6 en la Sección 3 de esta norma para ver las definiciones y los modelos de referencia que describen la pila del lado DTE.
El DCE no debe cambiar el conjunto de comandos AT válidos (es decir, comandos definidos en la interfaz I4 o la interfaz I5 de la Figura 5) en respuesta a la configuración de + WS45 .
Si el DCE implementa el parámetro + FCLASS , el DCE puede ignorar la configuración de + WS45 para las configuraciones de + FCLASS que no sean + FCLASS = 0 .
Tenga en cuenta que el uso de “no necesita”, “no debe”, “puede” y apunta a definiciones (normativas) y modelos de referencia en otras partes del documento. También puede ver asignaciones deliberadas para la interpretación a fin de acomodar diversas implementaciones. Para que un estándar tenga éxito no necesita especificar todo; se centra en bloquear solo aquellos comportamientos relacionados con la interoperabilidad.
[Descargo de responsabilidad: no es un abogado, esto no es un consejo legal, es solo una anécdota de décadas] Se podría pensar que los documentos legales, como las solicitudes de patentes, deben escribirse para eliminar toda ambigüedad. Los abogados de patentes con los que trabajé y para las compañías Fortune 100 me aconsejaron lo contrario: a veces, al revisar una solicitud, etiquetaba un reclamo como “vago” y explicaba cómo hacerlo preciso; responderían que la redacción imprecisa es a veces más útil que la redacción precisa cuando se trata de negociar licencias o litigar y resolver infracciones.