Versión beta de MetaTrader 4 IDE que incluye el nuevo compilador y editor MQL4 - página 11

 
Renat:
Este mes.

¿Habrá un Mercado en esta versión? ¿Se implementará como en MT5 (me refiero a la posibilidad de probar la versión demo antes de comprar)?
 
Sí, aparecerá uno similar.
 
chief2000:
Estaría bien que en la nueva versión del lenguaje todas las GlobalVariables se llamaran Variables Terminales para evitar la eterna confusión de "variables globales". Los comandos "Global- "podrían seguir funcionando por compatibilidad de versiones .

Este es el peso que llevamos desde los trillizos. Donde no existía el concepto de funciones.

Desgraciadamente, cuando pasamos al cuatro, no pudimos eliminar el término "variables globales". Sin embargo, la denominación oficial de "variables globales del cliente" es bastante similar al término "variables terminales" (que tampoco es perfecto).

 
Renat:
Este mes.
¿Habrá una beta previa al lanzamiento o será directamente de dominio público?
 
Renat:
Mira la versión de MT5 que se publicó ayer. Dispone de un nuevo compilador y editor MQL4 completo. Pronto lanzaremos el terminal MT4, no es algo rápido si pensamos en la gran cantidad de funcionalidades transferibles desde MT5.

La pregunta es por qué transferir esta funcionalidad si podríamos simplemente añadir MQL5 como segundo lenguaje a MT4 y dejar MQL4 como está, sin cambios, para la compatibilidad con los programas más antiguos. Entonces las ovejas se comerían y los lobos se alimentarían. Todos los nuevos programas se escribirían en el potente y cómodo MQL5, mientras que los antiguos, escritos en MQL4, también funcionarían correctamente. Y luego, dentro de un par de años, acabar gradualmente con el apoyo de la antigua lengua, dando tiempo a la gente a rehacer sus antiguos desarrollos en paz.

Pero en su lugar se crea un híbrido de MQL4-MQ5 que no es 100% compatible con el antiguo estándar (ya discutido en este hilo). Y además, según tengo entendido, este híbrido tampoco será totalmente compatible con MQL5. Me refiero a la sintaxis del lenguaje en sí, no a la API en forma de funciones.

Significa que seguirá habiendo dos lenguas, dos normas. Y los desarrolladores tendrán que apoyar a ambos. La pregunta es por qué se hace todo este alboroto. La opción que he descrito en el primer párrafo es mucho más lógica y conveniente para todos. Si tuviéramos un único estándar MQL5 + un único estándar MQL4 (que se irá quedando obsoleto poco a poco), nos quedaremos sólo con MQL5.

Una vez más, con el estándar del lenguaje me refiero exactamente a su sintaxis. Todas las funciones del terminal y las variables de entorno no están relacionadas con el lenguaje.

 
Meat:

...........

En su lugar, crean un híbrido de MQL4-MQ5 que no es 100% compatible con el antiguo estándar (ya discutido en este hilo).

Y además, según tengo entendido, este híbrido tampoco será totalmente compatible con MQL5. Me refiero a la sintaxis del lenguaje en sí, no a la API como funciones.

Significa que seguirá habiendo dos lenguas, dos normas. Y los desarrolladores tendrán que apoyar a ambos. La pregunta es por qué se hace todo este alboroto. La opción que he descrito en el primer párrafo es mucho más lógica y conveniente para todos. Si tuviéramos un único estándar MQL5 + un único estándar MQL4 (que se irá quedando obsoleto poco a poco), nos quedaremos sólo con MQL5.

Una vez más, con el estándar del lenguaje me refiero exactamente a su sintaxis. Todas las posibles funciones del terminal y las variables de entorno no están relacionadas con el lenguaje.

¿Puede explicarlo con más detalle? // Nunca he oído hablar de ello.

 
MetaDriver:

¿Más detalles? // No he oído nada al respecto.

Entonces, ¿qué hay que escuchar? El hecho de que el antiguo MQL4 se actualice con nuevas funciones no lo convertirá en MQL5.

 
Meat:
Lacarne:

Por norma de la lengua, me refiero a su sintaxis. Y todo tipo de funciones de terminal y variables de entorno no forman parte del lenguaje.



Tienes razón. Esa es la forma en que los desarrolladores lo hicieron, en mi opinión.
 
Meat:

La pregunta es por qué transferir esta funcionalidad si se puede añadir MQL5 como segundo lenguaje a MT4 y dejar MQL4 como está, sin cambios, para que sea compatible con los programas más antiguos.

La variante más lógica es ampliar MQL4 a MQL5, que en general debería suprimirse como lenguaje de prueba y depuración que no ha calado en el mercado. El terminal dispone también de una solución sencilla para la compensación, de modo que las operaciones se realicen siempre con una sola orden en el servidor. De lo contrario, tendremos que hacernos un lío y mantener dos versiones equivalentes durante el resto de nuestras vidas, que tarde o temprano se volverán aburridas por la falta de sentido.
 
Andrei01:
La variante más lógica es ampliar MQL4 a MQL5 que, en general, debería suprimirse como método de prueba y depuración que no ha calado en el mercado. El terminal dispone también de una solución sencilla para la compensación, de modo que las operaciones se realicen siempre con una sola orden en el servidor. De lo contrario, tendremos que hacernos un lío y mantener dos versiones equivalentes durante el resto de nuestras vidas, que tarde o temprano se volverán aburridas por la falta de sentido.

Para ello, tenemos que declarar nuestra propia lógica como la más correcta, y no tener en cuenta todas las demás lógicas porque no tienen sentido.

P.D. Y no reduzcas el mundo al primitivismo de "la lógica es o no es". :)