Club Delphi  
    FTP   CCD     Buscar   Trucos   Trabajo   Foros

Retroceder   Foros Club Delphi > Otros temas > La Taberna
Registrarse FAQ Miembros Calendario Guía de estilo Temas de Hoy

Respuesta
 
Herramientas Buscar en Tema Desplegado
  #1  
Antiguo 17-09-2016
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Campaña para corregir el uso de 'With' en Object Pascal

Hago una propuesta "políticamente incorrecta" para Delphi / Object Pascal: Mejorar la sintaxis de los modernos compiladores Pascal (como es el caso de Delphi) respecto al uso de la palabra reservada With. En las altas esferas existe la intención de desaparecer este estatuto de control por lo perjudicial de su sintaxis en el moderno Object Pascal de estos días.

Desafortunadamente dicha idea ha permeado en muchas de las mentes de colegas con menos cuota de poder, incluso en algunos compañeros de este foro cuya inteligencia no está por debajo de la de quienes deciden el rumbo del lenguaje. Este dogma se ha instalado cómodamente, bajo el "poderoso" argumento de que el With debe desaparecer simplemente porque es malo. ¡Y vaya que lo es! Pero si fue útil durante tantos años es porque también ayuda mucho a simplificar el código que escribimos. Yo evito usarlo desde hace algún tiempo. Estoy consciente de lo terrible que es, pero también de lo bueno que podría seguir siendo si lo mejoramos. Hace un par de años intenté otra propuesta de mejora. Hubo un debate intenso y no se llegó a nada. Incluso admito que mi idea de entonces no era tan buena. Puede que dentro de otros dos años piense lo mismo de esta que les traigo ahora; o quizá esta vez daré, o propiciaré que alguien más preparado que yo dé en el clavo.

Viendo solo sus bondades, hay lógica y sentido común en el uso de With. Evitemos que se siga usando mientras su sintaxis siga siendo riesgosa. Pero invitemos a los fabricantes de compiladores a corregirlo, en lugar de enterrarlo. Todos aquellos que deseen apoyar esta idea (sin que ello les avergüence o les haga comprometer sus intereses) pueden hacer eco de este mensaje, de la imagen que anexo al final o de este tweet.

Quizá las futuras generaciones de programadores Delphi/Lazarus se sientan un poquito más afortunadas gracias al apoyo que reciban iniciativas como la presente.

Muchas gracias.

Al González.
Imágenes Adjuntas
Tipo de Archivo: png WithSolution.png (25,5 KB, 56 visitas)

Última edición por Al González fecha: 17-09-2016 a las 19:17:56.
Responder Con Cita
  #2  
Antiguo 17-09-2016
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
En python se usa asi:

Código PHP:
with open('file.txt''r') as f:
       
f.read()
       
d.write(...) 
Zero ambiguedad.
__________________
El malabarista.
Responder Con Cita
  #3  
Antiguo 17-09-2016
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por mamcx Ver Mensaje
En python se usa asi:

Código PHP:
with open('file.txt''r') as f:
       
f.read()
       
d.write(...) 
Zero ambiguedad.
Entonces en el ejemplo de la imagen que subí hay -1 ambigüedad.

¿Apoyas la propuesta?
Responder Con Cita
  #4  
Antiguo 17-09-2016
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Interesante propuesta.
No soy partidario de eliminarlo, aunque no lo uso nunca porque puede ser peligroso y no queda claro el código. Sin embargo, con una serie de reglas como las que indicas, sí me parece bien que se mantenga.
Responder Con Cita
  #5  
Antiguo 17-09-2016
Avatar de mamcx
mamcx mamcx is offline
Moderador
 
Registrado: sep 2004
Ubicación: Medellín - Colombia
Posts: 3.911
Poder: 25
mamcx Tiene un aura espectacularmamcx Tiene un aura espectacularmamcx Tiene un aura espectacular
El problema es que esta propuesta, la escuchara el dueño de Delphi? Y de hacerlo, creara los medios para migrar el codigo?

Lo dudo.

No es que sea muy dificil ver que se puede arreglar en un lenguaje, es que es mas facil agregar que quitar, y ni siquiera en los open source se ve mucho que se animen a quitar.
__________________
El malabarista.
Responder Con Cita
  #6  
Antiguo 17-09-2016
Avatar de Casimiro Notevi
Casimiro Notevi Casimiro Notevi is offline
Moderador
 
Registrado: sep 2004
Ubicación: En algún lugar.
Posts: 32.043
Poder: 10
Casimiro Notevi Tiene un aura espectacularCasimiro Notevi Tiene un aura espectacular
Me ha parecido entender que se pretende modificar para que sea más seguro y no haya equívocos o ambiguedades en el código, ¿no es eso?

Última edición por Casimiro Notevi fecha: 17-09-2016 a las 20:17:46.
Responder Con Cita
  #7  
Antiguo 17-09-2016
Avatar de Al González
[Al González] Al González is offline
In .pas since 1991
 
Registrado: may 2003
Posts: 5.604
Poder: 29
Al González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en brutoAl González Es un diamante en bruto
Cita:
Empezado por mamcx Ver Mensaje
El problema es que esta propuesta, la escuchara el dueño de Delphi?
Eso depende de ti, de cómo emplees tu tiempo y energía. El mundo mejora conforme decimos vale y actuamos; empeora cuando sólo nos detenemos a mirar las dificultades.
Responder Con Cita
Respuesta



Normas de Publicación
no Puedes crear nuevos temas
no Puedes responder a temas
no Puedes adjuntar archivos
no Puedes editar tus mensajes

El código vB está habilitado
Las caritas están habilitado
Código [IMG] está habilitado
Código HTML está deshabilitado
Saltar a Foro

Temas Similares
Tema Autor Foro Respuestas Último mensaje
Analogías entre C++ y Object Pascal noob C++ Builder 3 16-02-2009 18:19:54
como usar object pascal y gtk Lionheart OOP 6 09-12-2005 19:31:08
manual de excepciones de object pascal para free pascal??? Garion OOP 3 27-05-2005 00:42:29
¿Object Pascal para todo? ReigDidion OOP 10 12-02-2004 08:28:07


La franja horaria es GMT +2. Ahora son las 21:25:19.


Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi
Copyright 1996-2007 Club Delphi