Hace 8 años | Por tucan74 a medium.com
Publicado hace 8 años por tucan74 a medium.com

A medida que vamos adquiriendo mayor control y dependemos menos del adulto, vamos enfrentándonos a diversas disyuntivas, en forma de preferencias, prioridades o, simplemente, alternativas. Somos seres con voluntad, con más, con menos, pero condenados a ser libres, como expresó Sartre. Hasta para elegir qué pasillo seguir en el supermercado para comprar queso. ¿O quizá estamos condicionados como ratas de laboratorio?

Comentarios

mente_en_desarrollo

#3 Pues wiskazo y a depurar.

p

#2 Error in line 3
systax error
< else >
Error E355 startup failure

D

#2. ?GOTO?

...

mente_en_desarrollo

#6 Era lo que mejor encajaba con el chiste. Ya se que existe en pocos leguajes (y malos) y además es tremendamente ineficiente en recursos.

Aitor

#7 ¿Existe en pocos lenguajes? ¿Y son malos? ¿Y es tremendamente ineficiente?

Vaya, tantos años programando y primera noticia que tengo de todo eso. Así de memoria todos los lenguajes que recuerdo, al menos de paradigma imperativo, tienen goto que yo recuerde. Igual resulta que todos los lenguajes con que he trabajado son malos. Sobre ineficiente... habría que aclarar en qué sentido (recursos o tiempo) pero nunca había oído a nadie decirlo, ni lo había pensado ni se me ocurre argumento alguno para afirmar que es "tremendamente" ineficiente.

Lo que está es poco recomendado su uso (y, principalmente, su abuso) porque se recomienda la programación estructurada.

D

#8 Goto se usa en el kernel principalmente.

Aitor

#9 Goto se puede usar en cualquier código. Si te apetece y lo crees conveniente, claro. Y por tu salud (y la de los demás), si no va a haber ningún listo que mire tu código y te critique por hacerlo.

Yo personalmente los evito y no recomiendo su uso, pero alguna vez los he usado por... digámoslo claro, por pereza. Y luego si eso los he cambiado, o los he quitado si ya no ha hecho falta su función. Y si alguien viene y me dice que si no sé programar porque uso goto o bla bla bla le he mandado a tomar por el culo y ya está.

#8 El goto como tal (que te envie a un marcador) yo lo desconozco en la mayoría de los lenguajes. Lo conozco en archivos por lotes principalmente. No recuerdo ahora si también estaba en qbasic (y supongo que entonces también en basic, pero yo aprendí ya con Visual Basic y no estaba o no lo llegué a usar nunca).
Tengo entendido que es ineficiente por el tema de tener que buscar en todo el código en vez de solo en los nombres de los objetos (o procedimientos, funciones, lo que sea).
Por supuesto hay muchas formas de hacer lo mismo.

También puede que esté en todos los lenguajes y simplemente debido a la metodología no me lo hayan enseñado, pero me parecería raro no haberlo visto aunque sea de casualidad en uno de los muchos manuales que me empollé en su momento.

Aitor

#c-11" class="content-link" style="color: rgb(227, 86, 20)" data-toggle="popover" data-popover-type="comment" data-popover-url="/tooltip/comment/2472675/order/11">#11 En qBasic no lo sé, porque no lo he usado nunca. En Basic estaba seguro y en VisualBasic también. En C existe, y en C++, y en C#, y en Java, y en Ada, y en Pascal. Y por supuesto en lenguajes ensambladores.

Ese argumento sobre su ineficiencia no tiene mucha consistencia porque:
1) Salvo que sea un lenguaje interpretado, no estarás ejecutando código directamente sino el ejecutable producido por el compilador que, siendo muy simplistas, ya habrá hecho la tarea de "buscar" en el código dónde (la instrucción) a la que ir.
2) Aunque no sea así, para usar un "goto " no tienes que buscar en todo el código, sólo tienes que buscar en las etiquetas, que por sintaxis serán distinguibles.
3) Bajo ese mismo argumento se puede decir que no hay que usar funciones o procedimientos porque son poco eficientes: al llamarlas hay que buscar en todo el código su definición para "saltar" ahí y seguir la ejecución. Y al acabar hay que saltar de nuevo al origen, de hecho. Pero la respuesta sería similar a 1). De hecho volviendo a 1) si el lenguaje es interpretado entonces sea un goto o una función sí que tiene que "buscar en el código dónde ir para ejecutar".

Aitor

#11 Corrijo una cosa de #12, que lo acabo de mirar por curiosidad porque me sonaba pero no estaba seguro: En Java no existe goto, es una palabra reservada pero parece ser que no tiene utilidad.

PD: Aunque tiene break y continue, que podría decirse que son gotos camuflados. lol

#13 Si, el break y continue si que los usaba.

En java me parecía muy raro que estuviese... Pero como digo en el otro mensaje, como hace años que no lo uso, es fácil que no lo recuerde.

#12 Pues será así...

Yo lo usaba al hacer .bat en tiempos y cuando aprendí a programar me enseñaron que eso no debía usarse y no lo usé...
Quizá me topé con ellos cuando aprendí C, Visual Basic o Java pero como tenía interiorizado que no debía usarlos lo olvidé. Hace años de eso y no me dedico a la programación, así que supongo que tu te lo sabrás mejor.

D

#7 goto es eficiente que te cagas. De hecho, los compiladores traducen las otras estructuras a montones de goto's.

Claudio_7777

#2 If (dinero==false) ">

kampanita

- Naces
- La resaca te dura un día
- La resaca te dura dos días
- Mueres

ninyobolsa

Y el dinero como sistema operativo

capitan__nemo

"pues ya hemos sido inoculados con la sustancia del capricho inmediato"

El placer inmediato, la droga, las endorfinas, dopamina, serotonina, ...
https://es.m.wikipedia.org/wiki/Placer

Atrapado en mi propio algoritmo catch 22
#0

capitan__nemo

El ejemplo de que pasillo utilizar en el supermercado para comprar queso es precisamente el que mas se parece al de ratas en un laberinto.

Primero, si los dueños del laberinto quieren que no vayas directamente, no te lo señalaran claramente con un cartel que diga "lácteos" o "quesos", y despues aunque te lo indiquen, te harán pasar por un montón de productos diferentes con los que habrán calculado con el analisis detallado de todas las compras de millones de clientes-rata que es probable que te cuelen. Después cuando llegues a los quesos, el que tu seleccionarias estará a desmano a la altura del suelo o en la balda superior. En el lineal a la altura de la vista estarán los quesos a mayores precios o que te quieren colar, o los que les han pagado los fabricantes para que coloquen.
El asunto es que los dueños del laberinto tienen miles de herramientas tecnológicas avanzadas (ordenadores, algoritmos) para diseñar ese laberinto y hacer que hagan lo que quieras. Y tu vas solo armado con tu cerebro que aunque muy avanzado es superado por todas estas herramientas tecnológicas que han podido analizar y calcular durante mucho tiempo de calculo a traves millones de datos de big data de la actuación de millones de ratas previamente.

La única forma de ser equivalente es que tuvieses la ayuda de herramientas y asistentes digitales diseñados para advertirte de todas estas trampas o ahorrartelo y decirte directamente donde está el producto que quieres mas barato. Herramientas que harian que no necesitases meterte en ese laberinto, sino que tu compararias online y decidirias que productos comprar. Y online dependiendo del intermediario tambien te crearan un laberinto.
Los hoteles en Europa salen más caros si eres español. Discriminan a los clientes por la IP/c44#c-44
El "mercader turco" en internet: cambia el precio en cuanto te reconoce/c10#c-10

capitan__nemo

#21 Y en el laberinto de las redes sociales, foros y webs como meneame,twitter, ... tambien.
El control nace en la mente/c7#c-7

p

QBasic tenía goto a etiqueta. Lo recuerdo bien.

D

Vaya mierda de artículo de opinión.