In the final module of the lesson, we will summarize advantages and disadvantages of C++, Java, and Python. It's useful to know how your language varies against others. Especially, if you aren't sure what language you should use, so you could learn it or improve your performance with it. Let's start with C++. It's by far the most popular language in current competitions. On ICMM6 finals, for example, nearly every team uses C++ as their primary language. And why is it popular? Mostly because of its performance. Basic operations in C++ are much faster than in other languages. So, if your program is C++ you can be very sure it will pass the time limits. Of course, if the solution itself is optimal now. And also, there is quite recently, standard library in C++. But, there is also disadvantages to it. You require great care and debugging skills when using C++. Because, cases of undefined behavior could be anywhere. And if you get a crash, you'll only see that it's says information fault without any details about it. So it might be very hard to debug. Next, the Java language. It's not as popular as C++, but people also use it with great success even on the highest levels. Java is actually bit slower than C++ but not much, like on half the times. And sometimes, there even some problems are even adjusted for Java. Meaning that for every language time two seconds for example, and for Java, three seconds. And so, Java is totally equalized to C++ in terms of performance. Java has another good standard library they're having things which you won't find in C++. For example, BigInteger class. The downside of the Java standard library, is that you need to implement fast reading by itself. Next, code rules in Java are more pedantic than in C++. For example, function is avoid return type must actually return something. And also, there are additional checks. For example, for other indexes. And all of that makes Java sometimes less vulnerable for certain kinds of bugs. Also, progress in Java tend to be longer. Because it's like a little verbose language. But it's good idea and features like opta compression, it will not harm you very much. Finally, the Python language. The main issue here is performance. Problems in Python tend to be like one or two times slower than programs in C++ and Java. So, some problems couldn't be solved with Python at all. Standard library is rather good, but it still lacks some useful things, for example, sorted set or bitset. But still, Python is a good, high level, programming language where it's rather convenient to write programs. And so programs could be a lot shorter than similar in C++ and Java. In all, Python maybe not a very good choice for their primary programming language for you but for some problems, it will do very well. For example, when performance is not very important, like implementation problems of certain guides or math problems. Let's summarize what we've learned in this lesson. First, language feature a lot of useful tools. And you will help yourself greatly if you learn how to use them. Second, we've seen some common pitfalls for Java, specially in Python. And I think you just need to know so you won't get caught. And we've compared different languages. For your primary language, it's a good choice to have fast language like C++ and Java, but Python also could be useful when performance is not very critical, and it could save some time on debugging or implementing. So that's all for this lesson and good luck with languages.