Languages update

.NET 6 just released (with C# 10). Any plans to update it?

4 Likes

Hello Thibaud, Thanks a lot for all your work!
Any chance to see a PHP update soon please? 7.3’s LTS stops December 6 anyway, and 7.4/8.0/8.1 bring many useful updates.
Thanks,

2 Likes

May I reactivate this subject: is it possible to consider adding Numba package for Python in order to improve a bit the language performance on CIG platform?

1 Like

Hey Thibaud, thanks for this awesome platform!
Would there be a chance we could see Nim (https://nim-lang.org/) added to the pool of available languages?
Cheers!

Hello @TwoSteps, is there any news on the C# update before the next context?
There are really major changes in term of languages and performances compare to the version we have available in CG which is a few major version below…

We’ll try to update the languages before the next challenge (which should happen around April-May)

6 Likes

Thanks !

If it could be done, PHP 8.1 would be very appreciated.

1 Like

This will be awesome, rust is already on to 1.59, It would be nice to get a library or two also, like ndarray or similar, this is like numpy but for rust.

1 Like

Please consider also JAVA 15 at least 17 would be great (And it’s a long term release)

Thank you

I would be happy to contribute if I can get a bit of guidance in which repository I should start from :slight_smile:

2 Likes

There is a on-going project to have a common process for the update of languages between CoderPad, CG for Work and CG.
As I wrote before, the idea is to do an update before the challenge.
We have a meeting planned next week about this. I’ll know more at that time :crossed_fingers:

2 Likes

Seconding this. Rust (and other low-level/verbose languages) would be much more attractive to me if we had access to (at minimum) a linear algebra library (I’d personally much prefer nalgebra to ndarray as it’s more mature and has stronger/math-oriented abstractions, but either is fine). For bots I’ve been copy-pasting a custom minified library, but for puzzle solutions that’s not ideal.

Currently Python has a whole suite of math libraries (NumPy, pandas, SciPy), giving it not only linear algebra but stats, interpolation, and calculus/optimization, making it by far the most attractive language in terms of terseness, but one of the least attractive in terms of performance.

Also, if you were to add Julia in the future (:crossed_fingers:), which includes a lot of that stuff as part of the standard library, Python would no longer be alone in having access to strong math abstractions. Since Julia is also far faster than Python, being JIT-compiled, many other languages would become even less attractive than they are presently.

I’d argue that since linear algebra library code is largely boilerplate and low-level, it is not something that belongs in a “solution” to a puzzle. This is also a self-described “game” programming and training site, and in the real world, linear algebra routines are simply a prerequisite in any competent game dev or scientific programming environment, and largely deferred to pre-existing libraries written by specialists (BLAS, LAPACK, CUDA, etc.) not something implemented ad-hoc or without any abstraction whatsoever.

Many public solutions are written in a hacky, confusing, non-general way just to keep their length to a minimum in the absence of math libraries.

4 Likes

The idea is still to do an update before the challenge. Not sure of the versions targeted yet. I’ll share the info when it’s done.

Rust just released 1.60 Stable. (I should also mention edition = “2021”)
I think mag.py is right about nalgebra, I just want a standard linear algebra built in, and someone said ndarray earlier.

If you happen to upgrade to php 8.1, pls also add these to the config file:

zend_extension=opcache
opcache.enable=1
opcache.enable_cli=1
opcache.jit_buffer_size=64M
opcache.jit=tracing

Since you are considering updating most of the supported languages soon, could you consider making NUMBA available for Python ? That would be great to gain a bit of efficiency.
Fingers crossed… :slight_smile:

1 Like

Could you please update Golang to version 1.18?

It would be cool to update languages a bit before contest, to fix all problems before start.

1 Like

We can still hope…

And hopefully there won’t be too many problems.

This site is great at turning code into a game, but it only does that with major, ‘practical’, programming languages (e.g., Python, C, Javascript, Ruby, …). What if codingame added support for ‘esoteric’ (not practical) programming languages such as Befunge, Brainf*ck, and golfing languages like Vyxal. I haven’t been on this site for long, and this is my first post, so if this sounds like a dumb idea, feel free to let me know. I personally think that esolangs (as esoteric programming languages are known) are a fun part of coding, that while not practical, can help programmers understand the more low-level aspects of what a programming language actually is. There are thousands of esolangs, so it wouldn’t be reasonable for the site’s administrators (I don’t really know the ‘power structure’ of this website yet, so correct me if I’m wrong) to add them all. Possibly the site could add a way for users to add interpreters. Most esolangs are small, and interpreters are readily available. This system would allow people to add their own programming languages or esolangs that haven’t been included yet to the site.