UTNianos

Versión completa: Dudas varias final de paradigmas
Actualmente estas viendo una versión simplificada de nuestro contenido. Ver la versión completa con el formato correcto.
Gente linda, curse esta materia el año pasado y planeo jugarmela mañana.
Si me puede ayudar con algunos conceptos que pregunta en este final seria genial:

https://docs.google.com/document/d/1czeo...oilgRs/pub

En el primer punto:
Yo pense:
#Dia
>>NumeroDeEstadoDelTiempo
^self temperatura
subclase
#DiaNublado
>>NumeroDeEstadoDelTiempo
^self temperatura * self cantidadDeNubes
#DiaConNiebla
^self temperatura - self cantidadDeNiebla

Creo que eso esta bien, obvio que cambio el metodo ese con if por d NumeroDeEstadoDelTiempo

Ahora:

1) Que cambia en expresividad y declaratividad? Bah, que seria la expresividad y la declaratividad?
2) El otro punto dice que los tipos de dia pueden variar (por ejemplo pasar de normal a nublado)
Pense hacer una clase #TipoDeDia con subclases #Nublado, #Neblinoso y #Normal. Y a la clase dia le pongo el atributo tipo con un objeto de la clase tipoDeDia. Esta bien? O estoy en cualquiera?


Ahora de logico:
1) Explicar qué restricciones mínimas deberían cumplir los predicados usados en enProblemas/1 para que pueda consultarse por quiénes cumplen el predicado enProblemas/1

Que son las restricciones? Osea, si no tengo el otro codigo es obvio que primero que nada tienen que estar los predicados declarados, pero tendria que yo hacerlos todos? Supongo que no apunta a eso. Que seria lo que hay que hacer?

Lo otro mas o menos lo tengo.

Graciaaaas
expresividad

No es lo mismo,

f a b
que

esPar unNumero otroNumero

Declaratividad (espero no confundirme)

total (unNro, otroNro) {

* hace algo *
* hace otra cosa*
*hace mas*

}

que:

total (unNro, otroNro) {

hacerLaPrimerCosa()
hacerLaSegunda()
}

Ahora si ?
Emm, perdon pero no entendi. La consigna hace la pregunta segun lo que resolvi yo. Osea, Con tu solucion, que mejoraste en expresividad y declaratividad.

Te jode si te pido un ejemplo mas claro?
Graciasss

Segun lo que entendi es mas expresivo

Pepe->ContameUnChiste que

Chistes = Pepe->QueChistesSabes
Chistes->Contate

Osea, la expresividad sería en parte elegancia y comprensibilidad y sentido en las declarasiones? (desde el ojo humano)

Parezco bucay
Te di un ejemplo =)

No es expresivo
f a b

Es expresivo
esPar unNumero otroNumero

Y lo mismo con el otro. El primero no es declarativo y el segundo si.
Fijate que vos sabes que hace la funcion es par, pero f?? puede hacer millones de cosas... y eso es la expresividad
Esto traducilo al ejercicio que planteaste y a cualquier otro!
Vos me preguntas que es la expresividad, ahi tenes =)
URLs de referencia