RedMonk runs its language rankings twice a year and the January results are now available. There have been some changes in methodolgy:
The primary change is that the GitHub portion of the language ranking is now based on pull requests rather than repos. While this means we couldn’t replicate the rankings as they were before, the results were generally correlated with our past runs and were the best method available.
The top 23 languages (including ties):
1 JavaScript 2 Java 3 Python 4 PHP 5 C# 5 C++ 7 CSS 7 Ruby 9 C 10 Objective-C 11 Scala 11 Shell 11 Swift 14 R 15 Go 15 Perl 17 TypeScript 18 PowerShell 19 Haskell 20 Clojure 20 CoffeeScript 20 Lua 20 Matlab
The list more or less agrees with our preconceptions, so no real surprises.
GNU APL 1.7 Released
There are two languages in that every programmer should try before they give up - in whatever sense you take that. The first is indisputable - it's Lisp. If you haven't Lisped then you have no idea of how minimal a programming language can be while being able to express so much. The second language you should encounter is more a matter of taste, but APL is high on any list. It is a language of operators, lots and lots of operators. You can write a program as a string of difficult looking symbols and it will do far more than its size suggests. APL is concise to a fault. It is so concise that in less than five minutes you can forget what the program you just wrote does. You really need to experience APL to understand what it is all about.
The following is a program for Life
GNU APL is a free implementation of the ISO standard 13751 aka. "Programming Language APL, Extended".
This release contains:
* bug fixes,
* SQL (replaces the SQL native function),
* DLX (an implementation of Donald Knuth's dancing links algorithm, aka. Algorithm X or DLX).
* an interface from the programming languages Erlang and Elixir into GNU APL. With this interface one can use APL's vector capabilities in programs written in Erlang or Elixir. Or from the Phoenix web framework.
Of the new languages that seem to be going somewhere, Rust seems to be the one people keep urging me to try. When I read the documentation I can't say I was impressed, but I keep on being told that trying it out on some real programs is the only way I'm going to "get" what is important.
So what is new?
The largest addition to Rust 1.16 is cargo check. This new subcommand should speed up the development workflow in many cases.
Many developers will get into a workflow like this:
Write some code.
Run cargo build to make sure it compiles.
Repeat 1-2 as needed.
Run cargo test to make sure your tests pass.
GOTO 1.
In step two, you never actually run your code. You’re looking for feedback from the compiler, not to actually run the binary. cargo check supports exactly this use-case: it runs all of the compiler’s checks, but doesn’t produce the final binary.
Most of the other improvements are minor or relate to the compiler, APIs or libraries. This reflects the fact that Rust is a fairly stable language.
Copilot breaks loose from its deep integration with VSCode, and now embraces the CLI Warriors in offering a terminal-based interface too. At last Copilot gets its own CLI version, bringi [ ... ]