Please add the following programming languages

ABAP https://en.wikipedia.org/wiki/ABAP

Erlang
Why? Fun to use functional languages for solving puzzles. It also have some interesting concepts and differences compared to Haskell.

16 Likes

GPUs (CUDA/OpenCL)!

6 Likes

A Common Lisp dialect like SBCL.

14 Likes

What about R? Itā€™s becoming quite used in big data mining.
https://www.r-project.org/

10 Likes

Swift

Would love to see this language on codingame.com. Such a fun language to program in. It is strongly typed, but with type inferencing to keep it terse. I love the use of optionals to reduce run time errors. Not to mention powerful structs, enums, and pattern matching.

Extremely useful for professional development as it is the language of choice for iOS and OSX app development. codingdojo.com calls it the 8th most in demand programming language of 2015: http://www.codingdojo.com/blog/8-most-in-demand-programming-languages-of-2015/

I know itā€™s not already on codingame because it canā€™t be compiled on linux. Apple announced plans to contribute ports to linux around the launch of Swift 2.0. Hopefully we can see support for it on codingame then.

7 Likes

Julia is becoming more and more popular in the dynamic language and scientific computing community. Itā€™s only a matter of time until it is a very widely used programming language.

7 Likes

Julia dream, dreamboat queen, queen of all my dreams
Every night I turn the light out

I agree that Prolog would be a very nice option for some problems.

There are currently multiple functional languages, many procedural ones, many object oriented ones, scripting language ā€¦

Prolog is not only just a missing option for languages, itā€™s a missing programming paradigm !

8 Likes

I agree that rust should be added. It is a bit of a up and comer but would be nice to learn.

1 Like

Lets add Kotlin as a programming language.

It is new language from JetBrains for JVM. It is even supported by default in Intellij IDEA, I think thatā€™s enough for adding it.

22 Likes

I forgot to include Befunge on my previous list of April Fools languages.

How did I manage to have that oversight happen?

D Language. I donā€™t know it myself but my colleagues said theyā€™re trying to learn it.

8 Likes

Common Lisp was already suggested by Iā€™m going to elaborate.

I was actually very disappointed when I didnā€™t find a single language with simple syntax like Tcl, Common Lisp or Scheme (or Racket) while there are quite a few even less known languages like Dart, Groovy or OCaml. Iā€™m going to make my pick and vote for Common Lisp.

Listing just the features missing in other languges you have:

  1. Nice and simple prefix syntax.
  2. Nice and simple syntax macros. Iā€™m aware a few other languages like Scala have them too but they all look like kludges due to complex infix syntax.
  3. Strong but dynamic type system. Yes, it shares it with E.g. Ruby and Python and itā€™s (IMO) the best trade-off between safety and ease of use unless you can infer all types statically like Haskell does.
  4. Both lexically-scoped and dynamically-scoped variables. No other language you support (I think) even has dynamiclly-scoped variables.
  5. Runtime interactive debuggerā€¦ not sure if you can make it work or not butā€¦
  6. The signal-restart error handling system will work regardless even if you canā€™t support interactive features.

So pick a supported implementation like CCL, SBCL or CLisp. Iā€™d be glad to help you out. :slight_smile:

Also @Jabberwockey SBCL is not a dialect of CL. CL has no dialects. SBCL is an implementation of CL.

EDIT: After solving a few puzzles three more points.

  1. CL is one of the few multiparadigm languages with Metaprogramming, FP, Structured programming and OOP all supported on a pretty good level and easy to mix. Not as good as specialised languages but still. Also its OOP system CLOS has enough unique ideas behind it.
  2. All puzzles I saw yet have a main loop and CLā€™s LOOP macro is good for this.
  3. Miss COND too.
19 Likes

After solving the first two puzzles I couldnā€™t help but suggest Tcl too. Itā€™s type system (or lack of it) would make input/output too easy and it generallyā€¦ feels like the best langauge to solve these few first puzzles in. Bash is good too but it has too many corner-cases and, again, complex syntax.

EDIT: Of course Iā€™d be glad to help with adding Tcl support too.

1 Like

You could try Clojure, thatā€™s a Lisp language. But itā€™s not just another language, it has a very specific rationale (no uncontrolled mutation) that sets it appart from Common Lisp and has a lot of consequences.

Itā€™s obviously not as mature as Common Lisp.

Clojure has dynamic variables but they are cumbersome, because most functions return lazy lists and that doesnā€™t work well together.

Sadly, Codingame doesnā€™t give you access to the Repl. :frowning:

No signal-restart error handling system, only throw-catch error handling. :frowning:

1 Like

it has a very specific rationale (no uncontrolled mutation) that sets it appart from Common Lisp and has a lot of consequences.

Yep, one paradigm less. One thing putting me away from Clojure. CL allows you to shoot yourself in the foot and I generally prefer languages that do.

1 Like

But why is that a good thing?

Facebookā€™s Hacklang

Update php5.x to php7 also would be great. It doesnā€™t have major BCs so no need to have separate ā€œlanguageā€ as python3

4 Likes