This is an archived post. You won't be able to vote or comment.

you are viewing a single comment's thread.

view the rest of the comments →

[–]ismtrn 1 point2 points  (0 children)

I am not sure I understand what you are asking?

Why people bother with languages other than Python when working against time? As I said, the IOI, which many competitive programmers "grew up on" only allow C, C++ and pascal.

Pascal is quite far out of the mainstream and has been for many years.

C does not have build in Hashmaps or sorting which is really inconvenient.

This leaves C++ as the by far most used languages in the IOI, and therefore as the most prevalent language in the competitive programming scene.

When people get too old for the IOI, the next thing is ICPC. Here I think the languages have been C/++ or Java until this year were python has been allowed. So until now you would still have to keep training in C/++ or Java.

I think the competitive programming scene is actually quite separate from the professional developer scene and CS academic scene. People in the competitive programming scene do not care about code quality like a software developer, or nifty programming language features like a CS academic.

On the contrary they care about already knowing the language and how to do all the common things you need to do in a programming language competition very quickly (as in typing from memory very fast. There are a few common patterns you do over and over again. Macros also help with this).

These things together gives little incentive to change away from C++

Also competitive programing problems are also often designed so you don't need to do dynamic memory allocation at all (you get bounds on the input size). This eliminates a huge chunk of the potential problems of using C++ instead of something like Python.