CAAD

Comunidad de Aventuras Conversacionales y Relatos Interactivos
Fecha actual 22 Sep 2018 16:47

Todos los horarios son UTC + 1 hora




Nuevo tema Responder al tema  [ 22 mensajes ]  Ir a página Anterior  1, 2
Autor Mensaje
NotaPublicado: 31 Mar 2011 12:34 
Desconectado
xyzzy

Registrado: 09 Mar 2004 22:50
Mensajes: 9150
Lenko escribió:
Jen, el tema de inicializar a todos los miembros heredados de una clase con los mismos valores se puede solucionar en la versión con propiedades de una forma muy sencilla (...

)

Muchas gracias, tomo nota lenko. :)

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


Arriba
 Perfil  
 
NotaPublicado: 31 Mar 2011 12:49 
Desconectado
Betatester
Betatester
Avatar de Usuario

Registrado: 24 Dic 2010 14:37
Mensajes: 908
Al-Khwarizmi escribió:
Johan Paz escribió:
Ay... esa herencia múltiple de I6, cuánto la hecho de menos en el I7...

Por curiosidad, ¿cuál es la aproximación que ha seguido I7? ¿Es parecida a lo que he comentado de AGE, u otra cosa distinta?


En realidad no sé cual es la pregunta, así que no sé si te voy a dar las respuestas correctas:

1. Si la pregunta es ¿qué clase de herencia soporta I7?. La respuesta es herencia única y sin posibilidad de crear 'interfaces' mediante ningún mecanismo.

2. Si la pregunta es 'entonces, ¿si quieres añadir comportamientos múltiples qué haces?', pues la respuesta es la programación a 'aspectos'. Desde siempre (en I6 también) ha sido posible extender cualquier cosa simplemente añadiéndole atributos, métodos, etc... sobre la marcha. En I7 como además esta definición está dispersa... acabas haciendo cosas como esta:

Código:
Librería que extiende los objetos añadiéndole un valor de fragilidad:
 
      Level of fragility is a kind of value. The levels of fragility are very hard, hard, normal, fragil, very fragil.
      A thing has a level of fragility called fragility.

Librería que extiende los objetos añadiéndole un valor de estado material:

     State of nature is a kind of value. The states of nature are solid, gas, liquid.
     A thing has a state of nature called nature.


Es decir que acabas extendiendo muchas muchas veces las clases más básicas según las librerías que incluyas poniéndoles a todos los objetos de esas clases lo que corresponda. Y esto se puede hacer con un objeto concreto:

Código:
      The robus table has a level of fragility called fragility.


Si añades que el tratamiento de los comandos es por reglas que pueden ser generales o muy detalladas, verás que en conjunto la respuesta es una particular forma de 'programación' a aspectos.

Le falta la definición de lo que constituye un 'interfaz' para ser casi como Go.


Arriba
 Perfil  
 
NotaPublicado: 31 Mar 2011 13:12 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5303
Ubicación: Coruña
Sí, la pregunta era cómo se hacen en I7 las cosas que en I6 se hacían con herencia múltiple.

Creo que la solución que han adoptado es muy adecuada para un lenguaje basado en reglas. Ya es muy peligrosa la herencia múltiple de por sí, como para encima meterla en un lenguaje donde por su paradigma imagino que las llamadas a métodos no serán explícitas (podrás crear reglas que ejecuten bucles implícitos sobre objetos y cosas así).

_________________
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: 31 Mar 2011 14:25 
Desconectado
Betatester
Betatester
Avatar de Usuario

Registrado: 24 Dic 2010 14:37
Mensajes: 908
Al-Khwarizmi escribió:
Sí, la pregunta era cómo se hacen en I7 las cosas que en I6 se hacían con herencia múltiple.

Creo que la solución que han adoptado es muy adecuada para un lenguaje basado en reglas. Ya es muy peligrosa la herencia múltiple de por sí, como para encima meterla en un lenguaje donde por su paradigma imagino que las llamadas a métodos no serán explícitas (podrás crear reglas que ejecuten bucles implícitos sobre objetos y cosas así).


Ya. Los riesgos son claros, pero el mecanismo de sobrecargar todo el rato las clases básicas lleva a que casi todos los items de la aventura sean de bastante calibre, y por lo tanto a que la cosa se infle e infle... que es el problema principal de I7. En fin, ya casi estoy hecho a la idea de usar Glulx por defecto, por mucho que lamente perder la eficacia del Parchment y de otros intérpretes para plataforma minúsculas.


Arriba
 Perfil  
 
NotaPublicado: 27 Abr 2011 12:50 
Desconectado
Archivero
Archivero
Avatar de Usuario

Registrado: 21 Abr 2011 17:46
Mensajes: 278
Al-Khwarizmi escribió:
"Ejemplo de" crea un objeto exactamente igual a otro dado


Tal vez se debería cambiar ese nombre por "Ejemplar de" que es más claro en castellano.

Un saludo.


Arriba
 Perfil  
 
NotaPublicado: 27 Abr 2011 12:51 
Desconectado
Samudio
Samudio
Avatar de Usuario

Registrado: 09 Mar 2004 16:16
Mensajes: 5303
Ubicación: Coruña
mistery escribió:
Al-Khwarizmi escribió:
"Ejemplo de" crea un objeto exactamente igual a otro dado


Tal vez se debería cambiar ese nombre por "Ejemplar de" que es más claro en castellano.

Un saludo.

Pues sí, tienes razón. De hecho ese nombre internamente es "instance of", y lo de "ejemplo de" fue la primera traducción al español que se me ocurrió, que peca de literal. La traducción correcta sería efectivamente "ejemplar de". Lo cambiaré.

_________________
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: 27 Abr 2011 14:31 
Desconectado
Betatester
Betatester
Avatar de Usuario

Registrado: 23 Mar 2010 20:11
Mensajes: 1141
Ubicación: Valencia
o "copia de"

_________________
El humor existe para recordarnos que por muy alto que sea el trono en el que uno se siente, todo el mundo usa su culo para sentarse.


Arriba
 Perfil  
 
Mostrar mensajes previos:  Ordenar por  
Nuevo tema Responder al tema  [ 22 mensajes ]  Ir a página Anterior  1, 2

Todos los horarios son UTC + 1 hora


¿Quién está conectado?

Usuarios navegando por este Foro: No hay usuarios registrados visitando el Foro y 4 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:  
cron
Desarrollado por phpBB® Forum Software © phpBB Group
Traducción al español por Huan Manwë para phpBB-Es.COM