Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is it true that Lisp is not a functional programming language? [closed]

Tags:

I read in the book: "Masterminds of programming" , the the interview with Guido Van Rossum says:

The more fundamental property Python shares with Lisp ( not a functional language either! ) is that functionas are first-class objects...

So, Lisp is not a functional programming language?

Is Guido wrong? What is it then?

like image 396
OscarRyz Avatar asked May 16 '11 18:05

OscarRyz


People also ask

Is LISP a functional programming language?

Functional programming languages are specially designed to handle symbolic computation and list processing applications. Functional programming is based on mathematical functions. Some of the popular functional programming languages include: Lisp, Python, Erlang, Haskell, Clojure, etc.

Is LISP functional or procedural?

A LISP program is a function applied to data, rather than being a sequence of procedural steps as in FORTRAN and ALGOL.

Is Common Lisp functional?

Common Lisp is a general-purpose, multi-paradigm programming language. It supports a combination of procedural, functional, and object-oriented programming paradigms.


1 Answers

Pretty much every Lisp I know of can be used to program in a functional style (all you really need are first-class functions, after all!)

However, Lisps are more like multi-language toolkits: you can do functional programming, OOP, logic programming, define your own DSL for some whacky new paradigm etc.

The Lisp that is probably closest to a functional programming style is Clojure (it has lazy evaluation, discourages OOP, uses immutable data structures throughout, restricts uncontrolled mutation (via STM), has quite a lot of pure / higher order functions in the core library etc.)

like image 92
mikera Avatar answered Sep 26 '22 01:09

mikera