Lisp (programming language)

From WikiMD's medical encyclopedia

Lisp_logo
LISP_machine
4.3_BSD_UWisc_VAX_Emulation_Lisp_Manual
Cons-cells

Programming language



Lisp (historically, LISP) is a family of programming languages with a long history and a distinctive, fully parenthesized prefix notation. Originally specified in 1958, Lisp is the second-oldest high-level programming language in widespread use today. Only Fortran is older, by one year. Lisp has changed since its early days, and many dialects have existed over its history. Today, the most widely known general-purpose Lisp dialects are Common Lisp and Scheme.

History

Lisp was invented by John McCarthy in 1958 while he was at the MIT. He published its design in a paper in Communications of the ACM in 1960, entitled "Recursive Functions of Symbolic Expressions and Their Computation by Machine, Part I". Lisp was originally created as a practical mathematical notation for computer programs, influenced by the lambda calculus, and soon became the favored programming language for artificial intelligence (AI) research. As one of the earliest programming languages, Lisp pioneered many ideas in computer science, including tree data structures, automatic storage management, dynamic typing, conditionals, higher-order functions, recursion, and the self-hosting compiler.

Syntax and Semantics

Lisp is known for its fully parenthesized prefix notation. All code and data are written as S-expressions, or parenthesized lists. For example, the function call that adds 1 and 2 is written as:

(+ 1 2)

This syntax allows for easy manipulation of code as data, which is a key feature of Lisp.

Dialects

Over its long history, many dialects of Lisp have been developed. Some of the most notable include:

  • Common Lisp: A general-purpose, multi-paradigm programming language that supports procedural, functional, and object-oriented programming.
  • Scheme: A minimalist dialect of Lisp that emphasizes a smaller standard core with powerful tools for language extension.
  • Clojure: A modern, functional dialect of Lisp that runs on the Java Virtual Machine (JVM) and emphasizes immutability and concurrency.
  • Emacs Lisp: A dialect used as a scripting language by the Emacs text editor.
  • Racket: A descendant of Scheme, designed to be a general-purpose, multi-paradigm programming language.

Influence

Lisp has had a significant influence on many other programming languages and on the field of computer science as a whole. Languages such as Python, Ruby, and JavaScript have borrowed concepts from Lisp. The language's emphasis on recursion and higher-order functions has also influenced the development of functional programming.

Applications

Lisp has been used in a variety of applications, particularly in the field of artificial intelligence. Its ability to easily manipulate symbolic information and its powerful macro system make it well-suited for AI research and development. Lisp is also used in academic research, rapid prototyping, and exploratory programming.

See also

References



External links


Stub icon
   This article is a Programming language-related stub. You can help WikiMD by expanding it!



Navigation: Wellness - Encyclopedia - Health topics - Disease Index‏‎ - Drugs - World Directory - Gray's Anatomy - Keto diet - Recipes

Transform your life with W8MD's budget GLP-1 injections from $125.

W8mdlogo.png
W8MD weight loss doctors team

W8MD offers a medical weight loss program to lose weight in Philadelphia. Our physician-supervised medical weight loss provides:

NYC weight loss doctor appointments

Start your NYC weight loss journey today at our NYC medical weight loss and Philadelphia medical weight loss clinics.

Linkedin_Shiny_Icon Facebook_Shiny_Icon YouTube_icon_(2011-2013) Google plus


Advertise on WikiMD

WikiMD's Wellness Encyclopedia

Let Food Be Thy Medicine
Medicine Thy Food - Hippocrates

Medical Disclaimer: WikiMD is not a substitute for professional medical advice. The information on WikiMD is provided as an information resource only, may be incorrect, outdated or misleading, and is not to be used or relied on for any diagnostic or treatment purposes. Please consult your health care provider before making any healthcare decisions or for guidance about a specific medical condition. WikiMD expressly disclaims responsibility, and shall have no liability, for any damages, loss, injury, or liability whatsoever suffered as a result of your reliance on the information contained in this site. By visiting this site you agree to the foregoing terms and conditions, which may from time to time be changed or supplemented by WikiMD. If you do not agree to the foregoing terms and conditions, you should not enter or use this site. See full disclaimer.
Credits:Most images are courtesy of Wikimedia commons, and templates, categories Wikipedia, licensed under CC BY SA or similar.

Contributors: Prab R. Tumpati, MD