Una vez más, sobre la localización de MQL - página 7

 
DDFedor >> :

En general, quería decir que los burócratas no se meten para nada en la programación, los financieros no consideran hacer su propio "informe" como programación, todo esto para decir que hay que distinguir entre "usuario" y "programador" en CUALQUIER PRODUCTO... ahora estamos hablando de un entorno PARA PROGRAMADORES, y los "contables-financieros", como usuarios, no son nada representativos en este tema, así como los comerciantes que no abren el meta-editor... a los que les importa un bledo ser "rusos" o "NO rusos"...


Ahora entiendo la idea. Puedo poner un ejemplo (ya) de mis antiguos compañeros. Aprenden más rápido el 1C porque está en ruso, casi como los usuarios.
 
¿Es difícil hacer un módulo que defina todo a través de "defines"? Y habrá programación en ruso u otro idioma.
 
yuripk >> :
¿Es difícil hacer un módulo en el que definir todo a través de "defines"? Y habrá programación en ruso u otro idioma.

no es difícil, aquí está el código que compila sin errores

#define цикл for 
#define целое int 
#define Печать Print

void OnStart()
{
   целое Сумма = 0;
   цикл ( целое Номер = 0; Номер < 10; Номер++) Сумма += Номер;
   Печать (  Сумма );
}

La pregunta es qué es: ¿bugfitch incompleto o seguirá siéndolo? Porque puede ocurrir que algún día los desarrolladores se lleven las manos a la cabeza y decidan prohibir el uso de palabras reservadas en las definiciones :(

 
ForexTools >> :

no es difícil, aquí está el código que compila sin errores

La pregunta es qué es: ¿una corrección de errores inacabada o se quedará así? Porque puede ocurrir que los desarrolladores un día se pongan a revisar y decidan prohibir el uso de palabras reservadas en las definiciones :(

Técnicamente, una definición es un conjunto de ciertos tokens del lenguaje utilizados durante el análisis sintáctico.

No tiene sentido prohibir ninguna ficha ni ningún conjunto de ellas.
Lo único importante es que no debemos permitir la anulación de las sentencias del lenguaje (if, for, return, ...).
Ahora también estamos pensando en excluir las funciones del lenguaje "del sistema" de la lista de posibles nombres definitorios.

 
ForexTools >> :

no es difícil, aquí está el código que compila sin errores

La pregunta es qué es: ¿una corrección de errores inacabada o se quedará así? Porque puede ocurrir que los desarrolladores un día se pongan a revisar y decidan prohibir el uso de palabras reservadas en las definiciones :(

Si su preprocesador funciona según el principio de Sisch, no aparecerá ninguna comprobación.

Lo único que no estoy seguro es que el preprocesador Cish le dé un nombre ruso a la macro. :)

 
mql5 >> :


Lo único importante es que el operador de lenguaje no puede ser anulado (if, for, return, ...).

por supuesto que no pueden ser redefinidos, pero pueden ser "renombrados" (en mi ejemplo, for es renombrado por un bucle)

 
mql5 >> :

Técnicamente, una definición es un conjunto de tokens en el lenguaje que se insertan durante el análisis sintáctico.

No tiene sentido prohibir ninguna ficha ni ningún conjunto de ellas.
Lo único importante es que no debemos permitir la anulación de las sentencias del lenguaje (if, for, return, ...).
Ahora estamos pensando en excluir las funciones del lenguaje "del sistema" de la lista de posibles definiciones.


Prohibir - lo que nuestros ciudadanos están acostumbrados.
 
yuripk >> :


Prohibir: a lo que están acostumbrados nuestros ciudadanos.

No estoy seguro de qué se trata ....


>> para que puedas:

#define если "тут можно написать что угодно и это всё вставиться в код при встрече 'если'"


esa no es la manera de hacerlo:

#define if "нельзя ключевые слова переопределять - ошибка компиляции"


podría no ser posible hacerlo:

#define Sleep "на данный момент так написать можно, но скорее всего это мы прикроем - будет ошибкой при компиляции"

 

He aquí una selección de la ayuda. El que lo quiera es bienvenido a probarlo ;)

// Типы данных			
                                    
#define		логический      bool			
#define		символ          char			
#define		бзсимвол        uchar			
#define		короткий        short			
#define		бзкороткий      ushort		
#define		целый           int			  
#define		бзцелый         uint			
#define		длинный         long			
#define		бздлинный       ulong			
#define		двойной         double		
#define		плавающий       float			
#define		цвет            color			
#define		датавремя       datetime	
#define		строка          string		
#define		перечисление    enum			
#define		структура       struct		
#define		класс           class			
#define		безтипа         void			
		 			                          
                                    
// Спецификаторы доступа			
					                          
#define		константа       const			
#define		личный          private		
#define		защищенный      protected	
#define		публичный       public		
#define		виртуальный     virtual		
					                          
                                    
// Классы памяти			
                                    
#define		внешний         extern		
#define		статический     static		
#define		ввод            input			
		 			                          
					                          
// Операторы			
					                          
#define		поумолчанию     default		
#define		размер          sizeof		
#define		новый           new			  
#define		удалить         delete		
#define		если            if			  
#define		иначе           else			
#define		выбор           switch		
#define		вариант         case			
#define		выполнить       do			  
#define		пока            while			
#define		цикл            for			  
#define		прервать        break			
#define		продолжить      continue	
#define		возврат         return		
			                              
					                          
// Прочие			
					                          
#define		ложь            false			
#define		этот            this			
#define		истина          true			
                          
                          
 
ForexTools >> :

He aquí una selección de la ayuda. Si quieres, puedes probarlo ;)

Y también puedes ponerlo en mqh-check, y escribir la llamada del inlude directamente en la plantilla,

¿qué está buscando?