Beta version of MetaTrader 4 IDE including new MQL4 compiler and editor - page 6

 
Zhunko:

Here I highlighted it so no one would say it's fully compatible:

Red highlighted the most unpleasant.


You also forgot to highlight this:

  • Due to the expansion of keywords, names like short, long, float, const, virtual, input, delete, new, do, char cannot be used now.

I think these names were quite popular with many people, especially new and char.

And this:

  • You can no longer use a full stop in variable names. Also, you may not use '@', '$', '?' in variable names.

Of course, it's not that common, but I used the '$' symbol a lot in variable names. It's not forbidden anywhere. And some people used a dot to make it look like a member of a structure/class.

So, it turns out that all of the above items should be highlighted :)

 
Zhunko:

I highlighted it so that no one would talk about full compatibility:

I've highlighted the most unpleasant part in red.

I don't think it's worth crying and whining to the whole forum that he's being robbed of all his work. Ridiculous, don't you think? I've read about it, by the way, and I don't consider it an irreparable loss of compatibility. No? That's it, all the codes go in the trash?

I apologise for the harshness - I'm fed up with the whining of some subjects.

 
Meat:


You also forgot to underline this:

I think a lot of people have been quite popular with these names, especially new and char

And then there's this:

It's not that common, but I used the '$' symbol a lot in variable names. It's not forbidden anywhere. And some people used a dot, for clarity, to make it look like a member of a structure/class.

So, all listed items must be marked :)

Are you aware of the existence of Ctrl+H ?
 
artmedia70:
Did you know that Ctrl+H exists?

Apparently, you have no or only a handful of your own designs. That's why it doesn't bother you. And many others have hundreds of written codes and don't have enough time to modify them all and then check if everything works correctly. And there's so much good stuff in the codebase too.

And you won't be able to make do with replacements alone. Junko didn't make the point about priority of logical operations for nothing. This is probably the most serious and dangerous thing. The code will compile and work but the logic can be broken.

 
Meat:

Apparently, you have no or only a handful of your own designs. That's why it doesn't bother you. And many others have hundreds of written codes and don't have enough time to modify them all and then check if everything works correctly. And there's so much good stuff in the code base too...

And you won't be able to make do with replacements alone. Junko didn't make the point about priority of logical operations for nothing. It is probably the most serious and dangerous thing. The code will compile and work, but the logic can be broken.

Don't speak in the affirmative about something you have no idea about, eh? I'm talking about my own work. That's one. Secondly - yes I'm not worried about priorities of logical operations, because in my code they are set up so that they can't be broken by innovations. And at the same time they are optimized in terms of execution speed. That's my style, sorry...

And, mind you, a minority here are panicking. Or are you the only one here who's the most overworked? Sorry for the sarcasm... ;)

 
artmedia70:

And, mind you, a minority here are panicking. Or are you the only one here who's the most overworked? Sorry for the sarcasm... ;)

Well in this thread it's only the minority that's present :) It's been almost a month - and only 6 pages of comments. Although the topic is directly related to MQL, that's what this forum is all about.

And I'd like to add one more thing to continue the previous post. For example, if it concerns start/init/deinit functions with parameters and prohibition to pass multidimensional string arrays into dll, how will your Ctrl+H help you? Of course, I understand that you probably have never used it (perhaps you felt the danger? :)), but many others have used it, since they didn't expect such a turn of events.

And besides, the changes declared in this thread - is only the first step in a planned merger with mql5, then will follow further innovations, including OOP and other, as was announced from the beginning. You will have to keep on editing your code. Get your eyes open at last.

 
Meat:

Well this thread is only a minority one :) It's been almost a month and only 6 pages of comments. Although the topic is directly related to the MQL language that this forum is devoted to.

And I'd like to add something else to continue the previous post. For example, if it concerns start/init/deinit functions with parameters and prohibition to pass multidimensional string arrays into dll, how will your Ctrl+H help you? Of course, I understand that you probably have never used it (perhaps you felt the danger? :)), but many others have used it, since they didn't expect such a turn of events.

And besides, the changes announced in this thread - is only the first step in a planned merger with mql5, then will follow further innovations, including OOP and other, as was announced from the beginning. You will have to keep on editing your code. Get your eyes open at last.


Only 6 pages of comments just confirm the choice of meta-quotes.

In essence, 5 is a beta version of what's about to be done.

(strictly speaking)

 
Meat:

Apparently, you have no or only a handful of your own designs. That's why it doesn't bother you. And many others have hundreds of written codes and don't have enough time to modify them all and then check if everything works correctly. And there's so much good stuff in the codebase too.

And you won't be able to make do with replacements alone. Junko didn't make the point about priority of logical operations for nothing. This is probably the most serious and dangerous thing. The code will compile and work but the logic can be broken.

There's no need to panic. Download the offered IDE+MQL package and check your developments.

The compiler has a very good analyzer now and it easily warns about dangerous mixes of logical expressions. Please try it yourself.

 
Meat:

Well only a minority in this thread :) It's been almost a month and only 6 pages of comments. Although the topic is directly related to the MQL language that this forum is devoted to.

And I'd like to continue my previous post. For example, if it concerns start/init/deinit functions with parameters and prohibition to pass multidimensional string arrays into dll, how will your Ctrl+H help you? Of course, I understand that you probably have never used it (perhaps you felt the danger? :)), but many others have used it, since they didn't expect such a turn of events.

And besides, the changes announced in this thread - is only the first step in a planned merger with mql5, then will follow further innovations, including OOP and other, as was announced from the beginning. You will have to keep on editing your code. Get your eyes open at last.

We mentioned the parameters in start/init/deinit because they should never have been there, but we had examples of source code where the authors added unnecessary parameters by mistake. In the old MQL4 it was skipped without a sound, while in MQL5 it is already reported as an error. There is no problem here - just a very rare error will be instantly visible.

Those who struggled with DLL and with passing of multidimensional string arrays into DLL, will on the contrary sigh freely. The developers have all the possibilities of working with structures, and there's no need to build crutches on strings.

The new version of MQL4 gives a lot of new features, while maintaining compatibility.

 
MetaQuotes:

Developers will be able to work with structures and no longer have to build crutches on strings.

Will structures be able to be used?

Reason: