Languages update

As mentioned on discord i loose multiple ms doing almost nothing in Java. I recognized that i timeout very often on codealamode currently so i added some time measurements.

Following code

            System.err.println("aaa " + (System.nanoTime() - begin));
			long bla = System.nanoTime();
			if (pItem.contains(Part.DISH) || && usableDish == null) {
				System.err.println(System.nanoTime() - bla);
				System.err.println("aas " + (System.nanoTime() - begin));

results in output like

aaa 16510543
aas 26192677

that are 10ms lost for nothing

Interesting part is in a game, if it happens it is recreatable
But it does not happen always …


Need an example that everyone can play and see. In your case the code cannot be tested. Only to believe

I would suggest you to trace JIT and GC and see if they occur in between.
(my previous post on that topic:

With the bash update (and maybe some other languages), some solution for codegolf puzzles won’t work anymore. For example my bash solution on temperatures codegolf puzzle can’t get 100%.

It’s “unfair” in 2 two ways. First way is that i have to find another solution now. But the worsest is that i have now a “impossible” solution. It could also be the case for the best bash solution in the leaderboard.

1 Like

what changed in Bash in version 5?

I send you a PM on discord. I can’t really say it without spoiling hard the temperature code golf puzzle :smiley:

May I ask for short explanation what so significant was changed in Bash?
(Bash too far from languages which I really using - I tried to read what was changed and to be honest - didn’t find anything related to solution) :slight_smile:
Maybe just point where I should read more carefully :slight_smile:

A command used in some bash solution for the temperatures codegolf puzzle works now differently. I can’t really tell you the command without spoiling the solution.

I agree with @Magus and @tarapitha, the fact that the previous solutions cannot be reached anymore is a fairness problem. It probably affects more than bash too, since other languages can make system calls. I see at least two possible solutions:

  • restore the previous environment (essentially freezing the version of all languages)
  • recalculate scores by running solutions in the current environment (something like that was done when network access was rightly revoked last year :slight_smile: ).

C# 6.0 (Mono 5.12.0, .NET 4.6) => C# 6.0 (Mono 5.18.0, .NET 4.6)

Why do you compile with 6.0 switch, not with latest switch for LangVersion?

we didn’t manage to migrate to .Net Core


Yes i agree i can’t use a solution that works on my linux server … :frowning:

Hello, is this the place to ask for the installation of packages ?? (I was thinking of the shapely package in python3)

Hi guys,

Any news on .net Core migration?
Can we hope for .net Core 3.0?


We’re still waiting C# 8.0 to be release before doing another test for the .Net core migration


C# 8.0 was released with dotnet core 3.0 a month ago.
Any news on when we might expect an update for C# and F#?


When you gonna make Python upgrade to 3.8, could you also make Numba package available?
That would be a great addon to already available Numpy and Pandas ones.

1 Like

Can we have an upgrade of Dart? It’s on version 2.2 but the 2.6 is out now.
The difference between the 2 version is big enough to make it appealing to start any puzzle with it…

We have updated the languages, feel free to report here any weird issue that could be related.

  • Bash : GNU Bash 5.0.2 => GNU Bash 5.0.4
  • C : gcc 8.3.0 mode C17 => gcc 9.2.1 mode C17
  • C++ : g++ 8.3.0 mode C++17 => g++ 9.2.1 mode C++17 :rotating_light: it seems to be breaking some codes :rotating_light:
  • C# : C# 6.0 (Mono 5.18.0, .NET 4.6) => C# 7.0 (Mono 6.4.0, .NET 4.6)
  • Clojure : 1.10.0 - Oracle JVM 1.11 => 1.10.1 - Oracle JVM 1.11
  • D : no update available
  • Dart : 2.2.0 => 2.5.0
  • F# : 4.1 => 4.5
  • Java : 11.0.2 => 1.8.0_211, too many performance issues above Java 8. It’s a tricky issue we have already spent quite some time on without results. We’ll try again but we’re not optimistic.
  • Javascript : Node 10.15.3 => Node 12.13.0
  • Go : 1.12.1 => 1.13.1
  • Groovy : 2.5.6 - Oracle JVM 1.11 => 2.5.8 - Oracle JVM 1.8
  • Haskell : 8.4.3 - no update (too complex to update to 8.6.3, we’ll look into it later)
  • Kotlin : 1.3.0 => 1.3.31 (1.3.50 too slow )
  • Lua : 5.3.5 - no update available
  • Objective C : Clang 7.0.1 -> Clang 8.0.1
  • OCaml : 4.07.0 => 4.09.0
  • Pascal : Free Pascal Compiler 3.0.4 - no update available
  • Perl : 5.28.1 (5.30.1 not available yet as a debian package)
  • PHP : 7.3.3 => 7.3.9
  • Python 3 : 3.7.2 => 3.7.4 (3.8 not available yet as a debian package)
  • Ruby : 2.6.2 => 2.6.5
  • Rust : 1.33.0 => 1.38.0
  • Scala : 2.12.8 => 2.13.1
  • Swift : 4.2.3 => 5.1.1
  • TypeScript : no update available
  • VB.NET : Compiler Visual Basic 2005 (Mono 5.18.0, .NET 4.5) => Compiler Visual Basic 2005 (Mono 6.4.0, .NET 4.6)

About the move from Mono to .net Core, I know we have been pushing it away for quite some time now. We’ll try to have it before next contest (March 2020).


Can you please update the dependencies you are using for rust in the FAQ. I suspect you have bumped rand at least to 0.7.2 but it is still listed as 0.6.5. My code worked with rand 0.6.5 but gives the below error under 0.7+, I now get this error on CG.

error[E0432]: unresolved import `rand::rngs::SmallRng`
    --> /tmp/
1438 |     use rand::rngs::SmallRng;
     |         ^^^^^^^^^^^^^^^^^^^^ no `SmallRng` in `rngs`

yes it has been reported to us yesterday, and we will change it. Sorry, I should have added this detail to the list.