Hacer opcional el "else" en los programas interactivos
Opened this issue · 7 comments
Actualmente, para escribir un programa interactivo es obligatorio especificar el comportamiento default, o sea aquello que se va a ejecutar si el usuario presiona una tecla no contemplada:
interactive program {
K_ENTER -> { Poner(Rojo) }
_ -> {}
}
Si bien no me parece mal que esta opción exista, hasta ahora no encontré ningún programa que la necesite y me parece molesto tener que agregar ese _ -> {}
al final. Esto rompe un poco con la filosofía Gobstones "no te muestro X herramienta hasta que no la necesites", porque me obliga a introducir en la clase un elemento que a priori para el alumno resulta inútil.
Mi propuesta es entonces dejar la funcionalidad, pero que no sea obligatoria.
Mhhhh. No sé si estoy de acuerdo... Cuál es el comportamiento que esperás
si se toca una tecla no especificada?
Eso es determinante para la decisión...
FF
El lun, jul 13, 2015 04:41 PM, Federico Aloi notifications@github.com
escribió:
Actualmente, para escribir un programa interactivo es obligatorio
especificar el comportamiento default, o sea aquello que se va a ejecutar
si el usuario presiona una tecla no contemplada:interactive program {
K_ENTER -> { Poner(Rojo) }
_ -> {}
}Si bien no me parece mal que esta opción exista, hasta ahora no encontré
ningún programa que la necesite y me parece molesto tener que agregar ese _
-> {} al final. Esto rompe un poco con la filosofía Gobstones "no te
muestro X herramienta hasta que no la necesites", porque me obliga a
introducir en la clase un elemento que a priori para el alumno resulta
inútil.Mi propuesta es entonces dejar la funcionalidad, pero que no sea
obligatoria.—
Reply to this email directly or view it on GitHub
https://github.com/gobstones/PyGobstones/issues/43.[image: Web Bug from
https://github.com/notifications/beacon/AIaqtvS1Bu4gMf3pgkEcxN7xXggnqUb4ks5odAu6gaJpZM4FXtph.gif]Este mensaje ha sido analizado por el servidor antispam1.unq.edu.ar de la
Universidad Nacional de Quilmes
en busca de virus y otros contenidos peligrosos, y se considera que está
limpio.
Yo esperaría que no pase nada, porque esa intención la reflejo al no escribir el _ ->
Mhhhh. Yo esperaría que se cuelgue. Y por eso puse el default...
Bueno, si Ary está de acuerdo, que el default sea opcional y su default sea
no hacer nada.
FF
El lun, jul 13, 2015 04:49 PM, Federico Aloi notifications@github.com
escribió:
Yo esperaría que no pase nada, porque esa intención la reflejo al no
escribir el _ ->—
Reply to this email directly or view it on GitHub
#43 (comment)
.[image: Web Bug from
https://github.com/notifications/beacon/AIaqthuBl83Fuaqnfe4eZ0wB1CFVAA5Wks5odA3EgaJpZM4FXtph.gif]Este mensaje ha sido analizado por el servidor antispam2.unq.edu.ar de la
Universidad Nacional de Quilmes
en busca de virus y otros contenidos peligrosos, y se considera que está
limpio.
No estaría de acuerdo si es sólo para ahorrar escribir el caso default.
Removiendo el caso default y reemplazandolo por un comportamiento de
BOOM o de ignorar creo que se pierde control sobre lo que hace el programa,
o mejor dicho, deja de ser explícito lo que hace (esto hace sin necesidad
de que yo lo programe o yo programe X y esto hace YZABCD y E).
Hoy en día ves el interactivo y sabés exactamente qué pasa con cada
tecla que se ingresa.
El lun., 13 de jul. de 2015 a la(s) 5:33 p. m., gobstones-admin <
notifications@github.com> escribió:
Mhhhh. Yo esperaría que se cuelgue. Y por eso puse el default...
Bueno, si Ary está de acuerdo, que el default sea opcional y su default sea
no hacer nada.
FFEl lun, jul 13, 2015 04:49 PM, Federico Aloi notifications@github.com
escribió:Yo esperaría que no pase nada, porque esa intención la reflejo al no
escribir el _ ->—
Reply to this email directly or view it on GitHub
<
https://github.com/gobstones/PyGobstones/issues/43#issuecomment-121036106>
.[image: Web Bug fromhttps://github.com/notifications/beacon/AIaqthuBl83Fuaqnfe4eZ0wB1CFVAA5Wks5odA3EgaJpZM4FXtph.gif
]Este mensaje ha sido analizado por el servidor antispam2.unq.edu.ar de
la
Universidad Nacional de Quilmes
en busca de virus y otros contenidos peligrosos, y se considera que está
limpio.—
Reply to this email directly or view it on GitHub
#43 (comment)
.
A mí lo que me hace ruido es tener que introducir un elemento de sintaxis
para expresar mi intención de no hacer nada.
Lo veo análogo al if con else vacío. En mi opinión, escribir else {}
no
refleja tan bien mi intención como el hecho de no poner nada. Y si lo
pienso desde lo didáctico también me parece mejor, porque puedo empezar a
escribir programas sin tener que mencionar el else, introduciendolo recién
cuando el problema lo requiera.
El 17:41 Lun Jul 13, 2015, Ary Pablo Batista notifications@github.com
escribió:
No estaría de acuerdo si es sólo para ahorrar escribir el caso default.
Removiendo el caso default y reemplazandolo por un comportamiento de
BOOM o de ignorar creo que se pierde control sobre lo que hace el programa,
o mejor dicho, deja de ser explícito lo que hace (esto hace sin necesidad
de que yo lo programe o yo programe X y esto hace YZABCD y E).Hoy en día ves el interactivo y sabés exactamente qué pasa con cada
tecla que se ingresa.El lun., 13 de jul. de 2015 a la(s) 5:33 p. m., gobstones-admin <
notifications@github.com> escribió:Mhhhh. Yo esperaría que se cuelgue. Y por eso puse el default...
Bueno, si Ary está de acuerdo, que el default sea opcional y su default
sea
no hacer nada.
FFEl lun, jul 13, 2015 04:49 PM, Federico Aloi notifications@github.com
escribió:Yo esperaría que no pase nada, porque esa intención la reflejo al no
escribir el _ ->—
Reply to this email directly or view it on GitHub
<https://github.com/gobstones/PyGobstones/issues/43#issuecomment-121036106>
.[image: Web Bug from
https://github.com/notifications/beacon/AIaqthuBl83Fuaqnfe4eZ0wB1CFVAA5Wks5odA3EgaJpZM4FXtph.gif
]Este mensaje ha sido analizado por el servidor antispam2.unq.edu.ar de
la
Universidad Nacional de Quilmes
en busca de virus y otros contenidos peligrosos, y se considera que
está
limpio.—
Reply to this email directly or view it on GitHub
<
https://github.com/gobstones/PyGobstones/issues/43#issuecomment-121047731>
.—
Reply to this email directly or view it on GitHub
#43 (comment)
.
Si no hace nada, es análogo al else vacío, y en ese sentido es que estoy de
acuerdo en que el default sea opcional.
FF
2015-07-13 18:26 GMT-03:00 Federico Aloi notifications@github.com:
A mí lo que me hace ruido es tener que introducir un elemento de sintaxis
para expresar mi intención de no hacer nada.Lo veo análogo al if con else vacío. En mi opinión, escribir
else {}
no
refleja tan bien mi intención como el hecho de no poner nada. Y si lo
pienso desde lo didáctico también me parece mejor, porque puedo empezar a
escribir programas sin tener que mencionar el else, introduciendolo recién
cuando el problema lo requiera.El 17:41 Lun Jul 13, 2015, Ary Pablo Batista notifications@github.com
escribió:No estaría de acuerdo si es sólo para ahorrar escribir el caso default.
Removiendo el caso default y reemplazandolo por un comportamiento de
BOOM o de ignorar creo que se pierde control sobre lo que hace el
programa,
o mejor dicho, deja de ser explícito lo que hace (esto hace sin necesidad
de que yo lo programe o yo programe X y esto hace YZABCD y E).Hoy en día ves el interactivo y sabés exactamente qué pasa con cada
tecla que se ingresa.El lun., 13 de jul. de 2015 a la(s) 5:33 p. m., gobstones-admin <
notifications@github.com> escribió:Mhhhh. Yo esperaría que se cuelgue. Y por eso puse el default...
Bueno, si Ary está de acuerdo, que el default sea opcional y su default
sea
no hacer nada.
FFEl lun, jul 13, 2015 04:49 PM, Federico Aloi <notifications@github.com
escribió:
Yo esperaría que no pase nada, porque esa intención la reflejo al no
escribir el _ ->—
Reply to this email directly or view it on GitHub
<https://github.com/gobstones/PyGobstones/issues/43#issuecomment-121036106>
.[image: Web Bug from
https://github.com/notifications/beacon/AIaqthuBl83Fuaqnfe4eZ0wB1CFVAA5Wks5odA3EgaJpZM4FXtph.gif
]
Este mensaje ha sido analizado por el servidor antispam2.unq.edu.ar
de
la
Universidad Nacional de Quilmes
en busca de virus y otros contenidos peligrosos, y se considera que
está
limpio.—
Reply to this email directly or view it on GitHub
<https://github.com/gobstones/PyGobstones/issues/43#issuecomment-121047731>
.
—
Reply to this email directly or view it on GitHub
<
https://github.com/gobstones/PyGobstones/issues/43#issuecomment-121050631>
.—
Reply to this email directly or view it on GitHub
#43 (comment)
.[image: Web Bug from
https://github.com/notifications/beacon/AIaqtlv2cMimrlDJgXcHzykh4I83j0Hnks5odCSjgaJpZM4FXtph.gif]Este mensaje ha sido analizado por el servidor antispam2.unq.edu.ar de la
Universidad Nacional de Quilmes
en busca de virus y otros contenidos peligrosos, y se considera que está
limpio.
Ok. Estoy de acuerdo
El lun., 13 de jul. de 2015 a la(s) 6:29 p. m., gobstones-admin <
notifications@github.com> escribió:
Si no hace nada, es análogo al else vacío, y en ese sentido es que estoy de
acuerdo en que el default sea opcional.
FF2015-07-13 18:26 GMT-03:00 Federico Aloi notifications@github.com:
A mí lo que me hace ruido es tener que introducir un elemento de sintaxis
para expresar mi intención de no hacer nada.Lo veo análogo al if con else vacío. En mi opinión, escribir
else {}
no
refleja tan bien mi intención como el hecho de no poner nada. Y si lo
pienso desde lo didáctico también me parece mejor, porque puedo empezar a
escribir programas sin tener que mencionar el else, introduciendolo
recién
cuando el problema lo requiera.El 17:41 Lun Jul 13, 2015, Ary Pablo Batista notifications@github.com
escribió:No estaría de acuerdo si es sólo para ahorrar escribir el caso default.
Removiendo el caso default y reemplazandolo por un comportamiento de
BOOM o de ignorar creo que se pierde control sobre lo que hace el
programa,
o mejor dicho, deja de ser explícito lo que hace (esto hace sin
necesidad
de que yo lo programe o yo programe X y esto hace YZABCD y E).Hoy en día ves el interactivo y sabés exactamente qué pasa con cada
tecla que se ingresa.El lun., 13 de jul. de 2015 a la(s) 5:33 p. m., gobstones-admin <
notifications@github.com> escribió:Mhhhh. Yo esperaría que se cuelgue. Y por eso puse el default...
Bueno, si Ary está de acuerdo, que el default sea opcional y su
default
sea
no hacer nada.
FFEl lun, jul 13, 2015 04:49 PM, Federico Aloi <
notifications@github.comescribió:
Yo esperaría que no pase nada, porque esa intención la reflejo al
no
escribir el _ ->—
Reply to this email directly or view it on GitHub
<https://github.com/gobstones/PyGobstones/issues/43#issuecomment-121036106>
.[image: Web Bug from
https://github.com/notifications/beacon/AIaqthuBl83Fuaqnfe4eZ0wB1CFVAA5Wks5odA3EgaJpZM4FXtph.gif
]
Este mensaje ha sido analizado por el servidor
antispam2.unq.edu.ar
de
la
Universidad Nacional de Quilmes
en busca de virus y otros contenidos peligrosos, y se considera que
está
limpio.—
Reply to this email directly or view it on GitHub
<https://github.com/gobstones/PyGobstones/issues/43#issuecomment-121047731>
.
—
Reply to this email directly or view it on GitHub
<https://github.com/gobstones/PyGobstones/issues/43#issuecomment-121050631>
.
—
Reply to this email directly or view it on GitHub
<
https://github.com/gobstones/PyGobstones/issues/43#issuecomment-121064601>
.[image: Web Bug fromhttps://github.com/notifications/beacon/AIaqtlv2cMimrlDJgXcHzykh4I83j0Hnks5odCSjgaJpZM4FXtph.gif
]Este mensaje ha sido analizado por el servidor antispam2.unq.edu.ar de
la
Universidad Nacional de Quilmes
en busca de virus y otros contenidos peligrosos, y se considera que está
limpio.—
Reply to this email directly or view it on GitHub
#43 (comment)
.