CAAD

Comunidad de Aventuras Conversacionales y Relatos Interactivos
Fecha actual 12 Nov 2019 13:28

Todos los horarios son UTC + 1 hora




Nuevo tema Responder al tema  [ 73 mensajes ]  Ir a página Anterior  1, 2, 3, 4, 5  Siguiente
Autor Mensaje
NotaPublicado: 16 Ene 2011 18:48 
Desconectado
Semimomio
Semimomio
Avatar de Usuario

Registrado: 24 Ago 2007 00:41
Mensajes: 2023
Ubicación: Chile
Johan Paz escribió:
- Reordenación de los sintagmas mediante la priorización basada en preposiciones.


Me parece una forma muy interesante de ordenar los sintagmas. :)

¿Cómo lo hacías para reconocerlos, previo a la ordenación? ¿Tenías una lista de núcleos o algo parecido?

_________________
Eliuk Blau
eliukblau (AT) gmail.com
http://www.caad.es/eliukblau/


Arriba
 Perfil  
 
NotaPublicado: 16 Ene 2011 18:53 
Desconectado
Semimomio
Semimomio
Avatar de Usuario

Registrado: 24 Ago 2007 00:41
Mensajes: 2023
Ubicación: Chile
Al-Khwarizmi escribió:
En AGE, si tienes un caballo, puedes definir el resultado de "montar a caballo" en el propio caballo. No hace falta una gramática global de la aventura que te diga que el verbo "montar" se aplica a un objeto (o a un PSI). Si tú tienes una aventura donde no has definido nada de nada para "montar" y copias y pegas mi caballo en ella, podrás montar a caballo. Los verbos se definen en los objetos.

Del mismo modo, puedes hacer que los verbos se comporten de forma diferente según la habitación en la que estés, según el jugador que controles, etc.

Por lo que sé, en Inform pre-7 todo esto no es posible de una forma sencilla. En Inform 7 por lo visto sí, al menos hasta cierto punto. Pero es lo que dije antes: la aproximación de AGE permite contextualizar los verbos, pero además permite parsing no estricto. Así pues, no sé si incluye grandes avances o pequeños avances (eso es muy subjetivo) pero entiendo que incluye las cosas que tú has dicho que querías, tal como he dicho.


Si en AGE yo escribo...

"MONTA"

... no te responde algo como: "¿el qué?" ?

Tengo curiosidad, porque si los verbos son contextuales al objeto, me da la leve impresión que podría llegar a producirse un síndrome de palabra exacta... dado que si intentar "montar" sin objeto, pues no lo contextualizaría en nada... y aparecería como verbo inexistente, no?

Quiero decir que el hecho de que un sistema te de una respuesta genérica: "¿Qué quieres montar?" ayuda hasta cierto punto al juego, pues te indica más o menos qué acciones están permitidas y cuales no en el modelo del mundo actual.

Corríjanme si mi pensamiento es demasiado primitivo.

_________________
Eliuk Blau
eliukblau (AT) gmail.com
http://www.caad.es/eliukblau/


Arriba
 Perfil  
 
NotaPublicado: 16 Ene 2011 18:55 
Desconectado
Semimomio
Semimomio
Avatar de Usuario

Registrado: 24 Ago 2007 00:41
Mensajes: 2023
Ubicación: Chile
Johan Paz escribió:
- Reordenación de los sintagmas mediante la priorización basada en preposiciones.


Me parece una forma muy interesante de ordenar los sintagmas. :)

¿Cómo lo hacías para reconocerlos, previo a la ordenación? ¿Tenías una lista de núcleos o algo parecido?

_________________
Eliuk Blau
eliukblau (AT) gmail.com
http://www.caad.es/eliukblau/


Arriba
 Perfil  
 
NotaPublicado: 16 Ene 2011 19:01 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Eliuk Blau escribió:
Si en AGE yo escribo...

"MONTA"

... no te responde algo como: "¿el qué?" ?


Puede hacerlo perfectamente, si capturas la acción desde el objeto mundo. :D
Si no, responderá algo así como...
¿Cómo? ¿Montar?
Claro que esa respuesta general también se puede cambiar. :)

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 16 Ene 2011 19:50 
Desconectado
Betatester
Betatester
Avatar de Usuario

Registrado: 24 Dic 2010 14:37
Mensajes: 929
Al-Khwarizmi escribió:
En AGE, si tienes un caballo, puedes definir el resultado de "montar a caballo" en el propio caballo. No hace falta una gramática global de la aventura que te diga que el verbo "montar" se aplica a un objeto (o a un PSI). Si tú tienes una aventura donde no has definido nada de nada para "montar" y copias y pegas mi caballo en ella, podrás montar a caballo. Los verbos se definen en los objetos.

Del mismo modo, puedes hacer que los verbos se comporten de forma diferente según la habitación en la que estés, según el jugador que controles, etc.

Por lo que sé, en Inform pre-7 todo esto no es posible de una forma sencilla. En Inform 7 por lo visto sí, al menos hasta cierto punto. Pero es lo que dije antes: la aproximación de AGE permite contextualizar los verbos, pero además permite parsing no estricto. Así pues, no sé si incluye grandes avances o pequeños avances (eso es muy subjetivo) pero entiendo que incluye las cosas que tú has dicho que querías, tal como he dicho.


Pero Al-K no acabo de entender la aproximación. Es decir, entiendo que establezcas algún parseado/gramática asociado a los 'actores', aquellas cosas con las que se pueda hablar, para que de esta forma no pase como en Inform que los PNJs siempre entienden lo mismo que el jugador (aprox. porque en I7 hay opciones), pero no entiendo porqué asociarlo a los objetos que entienden.

Es decir entiendo que si escribes:

>> verbo + sn

La 'gramática' del jugador sea la que lo interprete y determine que hay que hacer determinada 'acción'.

Mientras que con:

>> decir a XX "lo que sea"

Tendría que ser la gramática de XX el que lo interprete y lo la del jugador. De forma similar puedo imaginar que asociado a cada clase de objetos u objeto particular puedas tener 'filtros' a la acción en la forma:

antes de jugador haciendo acción-tal: código específico
...

antes de XX haciendo acción-tal: código específico
...

Pero la solución que propones en AGE que es:

Parseando algo 'relacionado' con objeto-Y:
parte del código para determinar la acción
parte del código que hace la acción (en lugar de 'modificarla')

Para mi tiene todas las desventajas, porque tienes que duplicar mucho código que probablemente sea común y al tiempo no coloca el código que sí imagino diferente (la gramática posiblemente diferente de los actores) 'a parte'.


Arriba
 Perfil  
 
NotaPublicado: 17 Ene 2011 00:21 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5308
Ubicación: Coruña
Johan Paz escribió:
Es decir entiendo que si escribes:

>> verbo + sn

Bueno, estamos secuestrando un poco el hilo pero creo que a dddddd no le importará porque quería debate sobre todas estas cosas. De todas formas, si le importa, que avise y nos vamos a otro lado.

Veamos. Si tú quieres definir la acción de montar a caballo, tienes varias opciones para hacerlo en AGE.

Una es la que dije yo antes, que es definirla en el caballo. Con eso puedes definir lo que hace cualquier jugador o criatura cuando monta a ese caballo. Y tiene las ventajas que dije antes: te llevas el caballo a otra aventura y se puede montar, sin implementar ninguna otra cosa.

Otra es lo que dices tú. O sea, puedes definirla en el jugador. Definir ahí qué significa que defines lo que significa que ese jugador se monte en algo (sea en cualquier cosa, o específicamente en el caballo, o en los objetos montables, o lo que veas).

Aún hay más opciones. Otra es definir en el mundo qué significa que un jugador X se monte en el objeto Y, con lo cual se aplicaría globalmente. Y todavía hay otra más, que es definirlo en una localidad (cosa que seguramente no tiene mucho sentido en el verbo "montar"; pero en otros puede tenerlo). AGE te deja elegir cualquiera de ellas, o por supuesto varias (por ejemplo que el verbo se comporte de una forma en todo el mundo *menos* en una localidad que lo defines de otra manera, o con un objeto con el que lo defines de otra manera).

Tú pareces decir que la opción de definir el código en el jugador siempre es mejor que la de definirlo en el objeto. No veo por qué. Si tú tienes una lavadora, esa lavadora siempre va a lavar ropa, independientemente de qué jugador o en qué aventura se use. Definiendo la manera en que lava la ropa en la propia lavadora, ésta es autocontenida (encapsulación). Puedes copiarla a otra aventura y que siga lavando la ropa. De esta forma, puedes construirte una librería de objetos predefinidos y que la gente se cree mundos a base de copiar y pegar. Yo lo veo mucho más flexible que definir todos los verbos en el jugador (a no ser que sean cosas que realmente cuadren mejor en el jugador de manera natural).

Respecto a lo que dices de duplicar código, la acción se puede sustituir o se puede modificar, si en el código llamas a un end() la sustituyes y si no lo haces simplemente inyectas algo (la modificas), cosa que por lo que sé no se diferencia mucho de hacer un return true o no en inform. Creo que la impresión de que hacía falta duplicar código salió de unos códigos que puso jenesis alguna vez donde reprogramaba alguna acción; pero esto en general no es necesario para nada. Sólo es necesario si quieres cambiar por completo lo que hace. Si sólo quieres hacer que salte un cierto código pero que luego la acción transcurra con normalidad, no pones un end() y ya está.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Última edición por Al-Khwarizmi el 17 Ene 2011 00:28, editado 1 vez en total

Arriba
 Perfil  
 
NotaPublicado: 17 Ene 2011 00:27 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1900
Al-Khwarizmi escribió:
Bueno, estamos secuestrando un poco el hilo pero creo que a dddddd no le importará porque quería debate sobre todas estas cosas. De todas formas, si le importa, que avise y nos vamos a otro lado.


No me molesta mucho, al ser el primer hilo interesa un poco todo, para tener una visión general.

Idealmente deberiamos tratar temas más generales tambien, pero no deja de estar todo interrelacionado de algún modo.

Cuando hablemos de parsers en concreto, rescataré este interesante debate.

Muchas gracias, de verdad.


Arriba
 Perfil  
 
NotaPublicado: 17 Ene 2011 06:00 
Desconectado
Implementador
Implementador

Registrado: 09 Jun 2010 14:50
Mensajes: 1655
Ubicación: Argentina
Estuve viendo de qué iba este hilo y debo apuntar 2 cosas:
En primer lugar, me gustaría saber (más concretamente confirmar) qué concepto de parser se está utilizando, porque es muy común llamar parser a un sistema de autoría cuando realmente el parser es la parte de un sistema de autoría que se ocupa de entender lo que escribió el jugador.
Por último, no estoy de acuerdo con el parseado contextual desde que no quedaría bien con todos los verbos y que además muy eventualmente los jugadores podrían probar a poner cosas no del todo lógicas para el objeto o situación actual.


Arriba
 Perfil  
 
NotaPublicado: 17 Ene 2011 11:30 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Acabo de publicar un artículo en el SPAC.

http://spac.caad.es/spip.php?article253

Espero que mucha gente no esté de acuerdo con lo que en él se dice, y que ello genere un gran número de respuestas que aporten diferentes opiniones, puntos de vista e ideas sobre el tratamiento que un "parser" debería tener con los conceptos "objeto" , "verbo" y "gramática".
Imagino que todas esas ideas os serán de gran utilidad. :D

Saludos!
Jenesis

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
NotaPublicado: 17 Ene 2011 11:52 
Desconectado
Semimomio
Semimomio
Avatar de Usuario

Registrado: 15 Dic 2004 21:28
Mensajes: 2302
Al-Khwarizmi escribió:
Bueno, estamos secuestrando un poco el hilo pero creo que a dddddd no le importará porque quería debate sobre todas estas cosas. De todas formas, si le importa, que avise y nos vamos a otro lado.

Yo creo que está bien que se hable aquí de esto, nos vendrán bien todas estas ideas para el nuevo sistema.

Jenesis escribió:
Pues os deseo suerte en este nuevo proyecto.
Y ya sabéis que podéis contar conmigo para lo que haga falta, sobre todo si necesitáis que alguien os vuelva locos, soy la betatester perfecta.

Se agradece, y también puedes aportar tu experiencia en AGE desde un punto de vista distinto al de Al-Khwarizmi.

Fernando Gregoire escribió:
En primer lugar, me gustaría saber (más concretamente confirmar) qué concepto de parser se está utilizando, porque es muy común llamar parser a un sistema de autoría cuando realmente el parser es la parte de un sistema de autoría que se ocupa de entender lo que escribió el jugador.

Efectivamente, cuando yo (al menos) hablo de parser me refiero únicamente al parser, al analizador. Pero efectivamente por tradición en esta comunidad se ha hablado del parser como un todo.

Citar:
Otra es lo que dices tú. O sea, puedes definirla en el jugador.

Hay algo en esto que no entiendo, ¿en qué sistema se define el comportamiento de los objetos en el jugador? Yo al menos en Inform 6 nunca lo he hecho ni he visto en código de otros, ¿quizá Inform 7?

Otra cosa es que, no el código sino la gramática de la frase en Inform 6 sí se define fuera del objeto, pero en general, no sólo para objetos concretos y tampoco en el objeto jugador sino en un esquema adhoc propio de Inform no orientado a objetos.

Eliuk Blau escribió:
Tengo curiosidad, porque si los verbos son contextuales al objeto, me da la leve impresión que podría llegar a producirse un síndrome de palabra exacta... dado que si intentar "montar" sin objeto, pues no lo contextualizaría en nada... y aparecería como verbo inexistente, no?

Si no me equivoco, eso se trata con las listas de verbos, puedes verlo como una forma mínima y muy básica de gramática.


Arriba
 Perfil  
 
NotaPublicado: 17 Ene 2011 12:07 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5308
Ubicación: Coruña
presi escribió:
Hay algo en esto que no entiendo, ¿en qué sistema se define el comportamiento de los objetos en el jugador? Yo al menos en Inform 6 nunca lo he hecho ni he visto en código de otros, ¿quizá Inform 7?

Otra cosa es que, no el código sino la gramática de la frase en Inform 6 sí se define fuera del objeto, pero en general, no sólo para objetos concretos y tampoco en el objeto jugador sino en un esquema adhoc propio de Inform no orientado a objetos.

Bueno, cuando dije eso, estaba refiriéndome a la frase de Johan cuando dijo:

Johan Paz escribió:
La 'gramática' del jugador sea la que lo interprete y determine que hay que hacer determinada 'acción'.

No me estaba refiriendo a un sistema en concreto.

No sé cómo es la cosa en I7... en I6 por lo que sé la gramática es una para toda la aventura, por lo tanto podrías considerar que está "en el mundo"; aunque dado que es un sistema monojugador, también podrías considerar que es "del jugador" porque hay una relación 1:1 entre mundo y jugador.

presi escribió:
Si no me equivoco, eso se trata con las listas de verbos, puedes verlo como una forma mínima y muy básica de gramática.

Sí, hay una lista de verbos que identifica que "montar" es un verbo en español; y le da una respuesta genérica para todos los verbos (por defecto "¿cómo? ¿montar?", aunque se podría cambiar).

Y por supuesto, si se quiere definir una respuesta más específica ("no hay ninguna montura aquí" o lo que sea), se puede hacer en el mundo.

Las prioridades de los objetos a la hora de asignar los comportamientos hacen que, si tú tienes un mundo donde has definido una respuesta por defecto para "montar" (como "no hay ninguna montura aquí") y luego le copias y pegas un caballo que tiene una respuesta específica para montarlo, el caballo tome prioridad. De este modo la posibilidad de definir verbos/acciones en los objetos no excluye que pueda haber respuestas por defecto para los casos "descontextualizados", y viceversa, el poner respuestas por defecto no excluye que un objeto pueda tener un comportamiento específico y redefinir el parsing como quiera.

_________________
Actúa siempre de tal modo que las decisiones de tu voluntad pudiesen servir como preceptos de una legislación universal (E. Kant)


Arriba
 Perfil  
 
NotaPublicado: 17 Ene 2011 15:09 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1900
Una de las ideas de este hilo es ir recopilando referencias interesantes.

En esta charla (en inglés) Andrew Plotkin resume sus impresiones sobre como distintos tipos de lenguajes y paradigmas intentan ocultar la complejidad de manejar un sistema cambiante e intimamente interelacionado. Comienza con un paseo por el tiempo y una definición sobre lo que "es" una FI.

Es un resumen de ideas propias, a raiz de las conversaciones que desembocaron en Inform 7 (I7). Son interesantes por si mismas y no tienen que ver directamente con el lenguaje natural en el que fueron implementadas las reglas. Sistema (I7) que, en su opinión, tiene ciertas aristas catalogadas como bugs o no.

No he digerido totalmente el contenido y el resumen que he hecho puede no hacerle justicia. Trata sobre la "cadena" mencionada en nuestra introducción a pyphiverses (que cada vez veo más como una red de comunicación de objetos en jerarquias/capas, a la DNS), la relación entre parser y acciones, entre libreria base y "plugins", entre objetos y libreria base, etc...

Su conclusión es que determinados comportamientos se pueden manejar bien con los ejemplos propuestos, pero que el problema es encontrar una solución que funcione a gran escala.

http://eblong.com/zarf/essays/rule-based-if/index.html
(via Johan Paz)
(comentada anteriormente en: viewtopic.php?f=16&t=3082 )


Última edición por dddddd el 20 Ene 2011 12:06, editado 1 vez en total

Arriba
 Perfil  
 
NotaPublicado: 17 Ene 2011 17:26 
Desconectado
Implementador
Implementador

Registrado: 13 Feb 2005 18:57
Mensajes: 1900
Se está generando una interesante discusión sobre el articulo de jenesis "Verbos-gramática VS objeto-acción" en SPAC.

http://spac.caad.es/spip.php?article253

Personalmente, las ideas que expone mastodon encajan mejor en lo que, de momento, opino del tema. Dejemos que fluya todo en SPAC y ya sacaremos conclusiones.

Nota: Si alguien necesita una cuenta para comentar en SPAC creo que jenesis tiene poderes de administración para crearlas... Contactad con ella (avísame por PM si me equivoco, jen).


Arriba
 Perfil  
 
NotaPublicado: 18 Ene 2011 05:31 
Desconectado
Implementador
Implementador

Registrado: 09 Jun 2010 14:50
Mensajes: 1655
Ubicación: Argentina
Como hace unos días de otra forma expuse, yo personalmente creo que lo ideal sería que el parser reconozca los verbos y que en los objetos se definan las reacciones con según qué verbos, ya que nada impide que el jugador teclee acciones no relacionadas con objetos al alcance.


Arriba
 Perfil  
 
NotaPublicado: 18 Ene 2011 09:38 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Fernando Gregoire escribió:
Como hace unos días de otra forma expuse, yo personalmente creo que lo ideal sería que el parser reconozca los verbos y que en los objetos se definan las reacciones con según qué verbos, ya que nada impide que el jugador teclee acciones no relacionadas con objetos al alcance.


Te recomiendo que leas el artículo que ayer publiqué en el SPAC, y su larga lista de comentarios. :)
http://spac.caad.es/spip.php?article253

_________________
Si la mentira tuviera color, todos seríamos daltónicos...


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 73 mensajes ]  Ir a página Anterior  1, 2, 3, 4, 5  Siguiente

Todos los horarios son UTC + 1 hora


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 2 invitados


No puede abrir nuevos temas en este Foro
No puede responder a temas en este Foro
No puede editar sus mensajes en este Foro
No puede borrar sus mensajes en este Foro

Buscar:
Saltar a:  
Desarrollado por phpBB® Forum Software © phpBB Group
Traducción al español por Huan Manwë para phpBB-Es.COM