List of programming languages for artificial intelligence

Part of a series on
Artificial intelligence
Major goals
  • Artificial general intelligence
  • Recursive self-improvement
  • Planning
  • Computer vision
  • General game playing
  • Knowledge reasoning
  • Machine learning
  • Natural language processing
  • Robotics
  • AI safety
Approaches
  • Symbolic
  • Deep learning
  • Bayesian networks
  • Evolutionary algorithms
  • Situated approach
  • Hybrid intelligent systems
  • Systems integration
Glossary
  • v
  • t
  • e

Historically, some programming languages have been specifically designed for artificial intelligence (AI) applications. Nowadays, many general-purpose programming languages also have libraries that can be used to develop AI applications.

General-purpose languages

  • Python is a high-level, general-purpose programming language that is popular in artificial intelligence.[1] It has a simple, flexible and easily readable syntax.[2] Its popularity results in a vast ecosystem of libraries, including for deep learning, such as PyTorch, TensorFlow, Keras, Google JAX. The library NumPy can be used for manipulating arrays, SciPy for scientific and mathematical analysis, Pandas for analyzing table data, Scikit-learn for various machine learning tasks, NLTK and spaCy for natural language processing, OpenCV for computer vision, and Matplotlib for data visualization.[3] Hugging Face's transformers library can manipulate large language models.[4] Jupyter Notebooks can execute cells of Python code, retaining the context between the execution of cells, which usually facilitates interactive data exploration.[5]
  • R is widely used in new-style artificial intelligence, involving statistical computations, numerical analysis, the use of Bayesian inference, neural networks and in general machine learning. In domains like finance, biology, sociology or medicine it is considered one of the main standard languages. It offers several paradigms of programming like vectorial computation, functional programming and object-oriented programming.
  • Lisp was the first language developed for artificial intelligence. It includes features intended to support programs that could perform general problem solving, such as lists, associations, schemas (frames), dynamic memory allocation, data types, recursion, associative retrieval, functions as arguments, generators (streams), and cooperative multitasking.
  • C++ is a compiled language that can interact with low-level hardware. In the context of AI, it is particularly used for embedded systems and robotics. Libraries such as TensorFlow C++, Caffe or Shogun can be used.[1]
  • JavaScript is widely used for web applications and can notably be executed with web browsers. Libraries for AI include TensorFlow.js, Synaptic and Brain.js.[6]
  • Julia is a language launched in 2012, which intends to combine ease of use and performance. It is mostly used for numerical analysis, computational science, and machine learning.[6]
  • C# can be used to develop high level machine learning models using Microsoft’s .NET suite. ML.NET was developed to aid integration with existing .NET projects, simplifying the process for existing software using the .NET platform.
  • Smalltalk has been used extensively for simulations, neural networks, machine learning, and genetic algorithms. It implements a pure and elegant form of object-oriented programming using message passing.
  • Haskell is a purely functional programming language. Lazy evaluation and the list and LogicT monads make it easy to express non-deterministic algorithms, which is often the case. Infinite data structures are useful for search trees. The language's features enable a compositional way to express algorithms. Working with graphs is however a bit harder at first because of functional purity.
  • Wolfram Language includes a wide range of integrated machine learning abilities, from highly automated functions like Predict and Classify to functions based on specific methods and diagnostics. The functions work on many types of data, including numerical, categorical, time series, textual, and image.[7]
  • Mojo can run some Python programs, and supports programmability of AI hardware.[8]

Specialized languages

See also

Notes

  1. ^ a b Wodecki, Ben (May 5, 2023). "7 AI Programming Languages You Need to Know". AI Business.
  2. ^ Lopez, Matthew (11 January 2021). "Top 10 Reasons Why Python is Good for Artificial Intelligence". Technology sumo.
  3. ^ Kanade, Vijay (May 6, 2022). "Best Python ML Libraries 2022". Spiceworks. Retrieved 2024-02-03.
  4. ^ Chauhan, Nagesh Singh (February 16, 2021). "Hugging Face Transformers Package - What Is It and How To Use It". KDnuggets. Retrieved 2024-02-03.
  5. ^ Perkel, Jeffrey M. (2018-10-30). "Why Jupyter is data scientists' computational notebook of choice". Nature. 563 (7729): 145–146. Bibcode:2018Natur.563..145P. doi:10.1038/d41586-018-07196-1. PMID 30375502.
  6. ^ a b Wodecki, Ben (May 5, 2023). "7 AI Programming Languages You Need to Know". AI Business.
  7. ^ Wolfram Language
  8. ^ Yegulalp, Serdar (7 June 2023). "A first look at the Mojo language". InfoWorld.
  9. ^ History of logic programming:
  10. ^ Prolog:
  11. ^ according to (the intro page to) the AIML Repository Archived 2015-04-14 at the Wayback Machine at nlp-addiction.com
  12. ^ See the AIML "Intro" (web) page Archived 2013-10-29 at the Wayback Machine at www.alicebot.org

References

Major AI textbooks

See also the AI textbook survey
  • Luger, George; Stubblefield, William (2004), Artificial Intelligence: Structures and Strategies for Complex Problem Solving (5th ed.), The Benjamin/Cummings Publishing Company, Inc., ISBN 0-8053-4780-1
  • Nilsson, Nils (1998), Artificial Intelligence: A New Synthesis, Morgan Kaufmann Publishers, ISBN 978-1-55860-467-4
  • Russell, Stuart J.; Norvig, Peter (2003), Artificial Intelligence: A Modern Approach (2nd ed.), Upper Saddle River, New Jersey: Prentice Hall, ISBN 0-13-790395-2
  • Poole, David; Mackworth, Alan; Goebel, Randy (1998), Computational Intelligence: A Logical Approach, New York: Oxford University Press, ISBN 0-19-510270-3
  • Winston, Patrick Henry (1984), Artificial Intelligence, Reading, Massachusetts: Addison-Wesley, ISBN 0-201-08259-4

History of AI

  • Crevier, Daniel (1993). AI: The Tumultuous Search for Artificial Intelligence. New York, NY: BasicBooks. ISBN 0-465-02997-3.
  • McCorduck, Pamela (2004), Machines Who Think (2nd ed.), Natick, MA: A. K. Peters, Ltd., ISBN 1-56881-205-1