Showing posts with label programming languages. Show all posts
Showing posts with label programming languages. Show all posts

Thursday, January 30, 2025

Programming languages for artificial intelligence 2024

Introduction

There are a lot of articles about which programming languages are best for AI. I have previously posted on these in 2022 and 2023, producing top ten lists based on a number of articles on this topic from each year. In this post I will update these top ten lists.

Methodology

Only articles that were dated 2024 were considered. Despite this restriction, the data used in this analysis came from 54 different articles. Each article was from a different author, to prevent duplication. 

I analysed the lists in three ways:
  1. The frequency at which a language appeared in the lists, regardless of the position on the list;
  2. The median rank assigned to each language across all lists in which is appears, and;
  3. A weighted median rank, where the median rank of the language was weighted according to the frequency at which is appeared in lists. This corrects for outliers that were highly ranked on only a small number of lists.
Results

The length of the lists ranged from four to ten, with a median length of nine. The most common list length was ten. Below are the top ten ranked languages, for each analysis method.

In order of frequency, the top ten languages for AI are:
  1. Python
  2. Java
  3. C++
  4. Julia
  5. R
  6. JavaScript
  7. Lisp
  8. Prolog
  9. Scala
  10. Haskell
In order of median rank:
  1. Python
  2. ASP.net
  3. Java
  4. R
  5. C#
  6. C++
  7. SQL
  8. JavaScript
  9. Julia
  10. HTML
Note that this is only the median rank of languages, regardless of how often they are listed. This has the effect of pushing some languages, such as ASP.net, higher up the list than they would otherwise be. This is corrected by the weighted median rank.

The top ten languages for AI, as ordered by weighted median rank, are:
  1. Python
  2. Java
  3. R
  4. C++
  5. Julia
  6. JavaScript
  7. Lisp
  8. Prolog
  9. Haskell
  10. Scala
Comparing this to the weighted top tens from 2022 and 2023, we can see that while their specific rankings vary slightly, the contents of the list hasn't changed. That is, the top ten languages have stayed the same over the years. Python has retained it's top spot once again, and Java stays in second place. C++ and R continue to fight it out for third and fourth, while Julia has entered the top five for the first time.

References

Tuesday, December 5, 2023

Programming languages for artificial intelligence 2023

Introduction

About 18 months ago I posted this article, where I reported on the results of a meta-analysis I had done on the popularity of different programming languages in AI. That analysis included articles across several years. In this update, I have restricted the analysis to articles published in 2023.

Methodology

Despite the restriction of articles published only in 2023, the data I used in this analysis came from 33 different articles. Each article was from a different author, to prevent duplication. Where several languages were ranked the same on the list, I recorded them as separate entries with the same rank.

I analysed the lists in three ways:

  1. The frequency at which a language appeared in the lists, regardless of position on the list;
  2. The median rank assigned to each language across all lists in which it appears, and;
  3. A weighted median rank, where the median rank of the language was weighted according to the frequency at which it appeared in lists. This corrects for outliers that were highly ranked on only a small number of lists.
Results

The lists were of varying lengths, the minimum was three and the maximum was 11. The most frequent list length was five, with a mean and median of seven. Below are the top ten ranked languages, for each analysis method.

  1. Python
  2. Java
  3. C++
  4. R
  5. JavaScript
  6. Lisp
  7. Julia
  8. Prolog
  9. Scala
  10. Haskell

  1. Python
  2. Java
  3. React
  4. Wolfram
  5. C++
  6. R
  7. JavaScript
  8. Lisp
  9. Matlab
  10. Julia

Note that this is only the median rank of languages, regardless of how frequently they are listed. This has the effect of pushing some languages, such as React, higher up the list than they would otherwise be. This is corrected by the weighted median rank.

  1. Python
  2. Java
  3. C++
  4. R
  5. JavaScript
  6. Lisp
  7. Julia
  8. Prolog
  9. Scala
  10. Haskell
As this listing accounts for both rankings of language, and the frequency at which the language appears in the articles, I consider this to be the most informative.



Monday, June 20, 2022

Programming languages for AI: a meta-analysis of popularity

Introduction

There are many articles about which programming languages an AI engineer should be familiar with. While there are frequent similarities between these lists, comparing them is difficult. In this post, I'll briefly report on a quick metanalysis of these articles, with an eye to producing a ranked list of programming languages that balances popularity and rating.

Methodology

The data I used in this analysis came from 24 different articles. To ensure that the data was mostly current, I restricted the articles to those that had been either published or updated since the beginning of 2020. I also checked that each article was from a different author, to prevent duplication. Where several languages were ranked the same on the list, I recorded them as separate entries with the same rank.

Results

The lists were of varying lengths, the minimum was five and the maximum was 12. The most frequent list length was ten, with a mean of 8 and median of 9.

I analysed the lists in three ways:

  1. The frequency at which a language appeared in the lists, regardless of position on the list;
  2. The median rank assigned to each language across all lists in which it appears, and;
  3. A weighted median rank, where the median rank of the language was weighted according to the frequency at which it appeared in lists. This corrects for outliers that were highly ranked on only a small number of lists.
Below are the top ten ranked languages, for each analysis method.

In order of frequency, the top ten languages for AI are:

  1. Python
  2. Java
  3. R
  4. C++
  5. Lisp
  6. Julia
  7. Prolog
  8. Haskell
  9. JavaScript
  10. Scala

In order of median rank:

  1. Python
  2. Java
  3. C
  4. C#
  5. R
  6. C++
  7. Lisp
  8. JavaScript
  9. Prolog
  10. Julia
Note that this is only the median ranks of languages, regardless of how frequently they are listed. This has the effect of pushing some languages, such as C, higher up the list than they would otherwise be. This is corrected by the weighted median rank.

The top ten languages for AI, as ordered by weighted median rank, are:
  1. Python
  2. Java
  3. R
  4. C++
  5. Lisp
  6. Prolog
  7. Julia
  8. Haskell
  9. JavaScript
  10. Scala

As this listing accounts for both rankings of languages, and the frequency at which the language appears in the articles, I consider this to be the most informative.