Eliuk Blau escribió:
Al-Khwarizmi escribió:
P.D: El AGE permite que el parsing cambie según las circunstancias desde mucho antes que saliera I7.
La verdad es que I7 trae cero novedades. Es cierto que trae muchas cosas útiles y en cierto grado sencillas de utilizar, pero ninguna es novedad. Nada que no se haya conseguido mucho antes (descartando, por supuesto, lo complejo o poco complejo que pudiera llegar a ser conseguirlo).

Bueno, vale. Pero hacer lo mismo que el Understand...when... con I6, era bastante infernal y con los PAWS era demencial.
Y Al-K, la solución de 'parseado' de AGE, simplemente no me acaba de convencer, la verdad. Y, no, yo no entiendo como 'parser' la parte de hacer el análisis sintáctico, gramatical o como quieras, sino la parte de ir desde el input del usuario hasta el código a ejecutar en tu particularización del modelo del mundo.
En PAWS/Superglus es con estos pasos:
- Separación del input en verbos, adjetivos, etc...
- Ejecución del proceso-switch 0 y ejecución de aquellas entradas que coinciden con los valores concretos de verbo, adjetivo, etc...
En CAECHO? era casi igual:
- Invocación por parte del programador de PARSE desde un buffer escogido manualmente (así podían darse muchos comandos a multiples PNJs a la vez que iban leyendo de sus bufferes separados).
- Separación del input en verbos, adjetivos, etc...
- Reordenación de los sintagmas mediante la priorización basada en preposiciones.
- Ejecución del proceso escogido por el progamador, donde habría switch, condicionales, etc...
En los Inform sería:
- Algunas traducciones previas (lo que permite cosas como suprimir letras acentuadas y demás).
- Secuencialmente se intenta ajustar el input a los patrones de la gramática.
- Se 'decide' la acción a ejecutar según el primer patrón de gramática encontrado.
- Se 'ejecuta' la acción, y enlazada al flujo de esta acción es donde está el código del programador.
Con I7, se simplifica considerablemente la ordenación de los patrones de gramática y se facilita mucho la aplicabilidad de los patrones de gramática según el contexto.
Personalmente siempre he creído que la forma de Inform es más cómoda, pero que en sería necesario disponer en español de una sintaxis no estricta basada en el análisis previo de verbo y sintagmas, como hacía CAECHO? o los PAWS que permita escribir tanto 'saca la espada del cofre' como 'saca del cofre la espada' sin que el programador tenga que preocuparse por ello, algo que permita la definición de la gramática así:
Understand "V-Sacar" "SN-Thing" "de SN-Thing" as removing it from.
De forma que Sacar esté definido como un conjunto de sinónimos arbitrarios de verbos (o bien un objeto que contiene la definición del verbo) y SN-Thing sería cualquier forma posible de sintagma nominal que pueda 'encajar' con una definición de algo de la clase 'Thing'. Con una definición así de las gramáticas podría hacerse encajar muchas cosas, con facilidad. Añadiendo a estas definiciones la parte del 'when' tendríamos un capacidad de gramática más cercana a las necesidades de los tiempos que corren y algo parecido a las capacidades que he deseado durante años.