INFORMAZIONI SU QUESTO EPISODIO
The Lisp programming language is strange, amazing, and beautiful. Some say it is the most elegant and powerful language ever created. You can learn all the basics in a few minutes, but the language is also subtle and sophisticated and learning it can bring you face-to-face with the underlying structure of thought. For decades, Lisp was the main language for artificial intelligence research and it was also the basis for two important teaching languages– Scheme and Logo. Recently, aspects of the Lisp way of thinking have also shown up in the United States’ Next Generation Science Standards. In this episode I look at where this language came from, how it works, and how it became part of the national discussion about education.
Show notes, images, and resources:
Here are some basic examples of Lisp code. This first example just adds two numbers. Note that the statement is really just a list.
(plus 2 2)
Here is a more complicated example that shows a function definition, a conditional, and the infamous lambda function. This function raises a number q to the s power. Note that the power function appears in its own definition. This is called recursion and it is an important part of Lisp programming.
(def power (lambda (s q)
(cond ((eq s 0) 1)
(t (times q (power q (next-smaller s)))))))
For a real sense of the flavor and power of Lisp, check out the code for Lisp’s “Meta-circular” evaluator. This is a Lisp function that evaluates Lisp functions. It also turns out to be almost identical to John McCarthy’s original mathematical description of the language. You can jump right into the deep end.
There are a ton of resources for learning Lisp. You could try an interactive version of the Structure and Interpretation of Computer Programs.
For more on the technical history of Lisp, see John McCarthy, “History of Lisp,” Stanford AI Laboratory Memo, 1979. and Guy L. Steele and Richard P. Gabriel, “The Evolution of Lisp,” ACM SIGPLAN Notices 28, 3 (March 1993).
For the original description of the language, see John McCarthy, “Recursive Functions of Symbolic Expressionsand Their Computation by Machine, Part I,” Communications of the ACM 3(4):184-195. and John McCarthy, “A basis for a mathematical theory of computation”. In Computer Programming and formal systems, 1963.
For more on Scheme, see Gerald Jay Sussman and Guy Lewis Steele, Jr’s Lambda Papers. For more on the Structure and Interpretation of Computer Programs, check out the book or an archived online version of the course.
For a lot more on the development of logo, and all the people involved, see the LogoThings webpage. You’ll find interviews with Solomon, footage from early experiments, and a lot more. Also, check out Seymour Papert’s original Logo papers, and his book,
Show notes, images, and resources:
Here are some basic examples of Lisp code. This first example just adds two numbers. Note that the statement is really just a list.
(plus 2 2)
Here is a more complicated example that shows a function definition, a conditional, and the infamous lambda function. This function raises a number q to the s power. Note that the power function appears in its own definition. This is called recursion and it is an important part of Lisp programming.
(def power (lambda (s q)
(cond ((eq s 0) 1)
(t (times q (power q (next-smaller s)))))))
For a real sense of the flavor and power of Lisp, check out the code for Lisp’s “Meta-circular” evaluator. This is a Lisp function that evaluates Lisp functions. It also turns out to be almost identical to John McCarthy’s original mathematical description of the language. You can jump right into the deep end.
There are a ton of resources for learning Lisp. You could try an interactive version of the Structure and Interpretation of Computer Programs.
For more on the technical history of Lisp, see John McCarthy, “History of Lisp,” Stanford AI Laboratory Memo, 1979. and Guy L. Steele and Richard P. Gabriel, “The Evolution of Lisp,” ACM SIGPLAN Notices 28, 3 (March 1993).
For the original description of the language, see John McCarthy, “Recursive Functions of Symbolic Expressionsand Their Computation by Machine, Part I,” Communications of the ACM 3(4):184-195. and John McCarthy, “A basis for a mathematical theory of computation”. In Computer Programming and formal systems, 1963.
For more on Scheme, see Gerald Jay Sussman and Guy Lewis Steele, Jr’s Lambda Papers. For more on the Structure and Interpretation of Computer Programs, check out the book or an archived online version of the course.
For a lot more on the development of logo, and all the people involved, see the LogoThings webpage. You’ll find interviews with Solomon, footage from early experiments, and a lot more. Also, check out Seymour Papert’s original Logo papers, and his book,
Inglese
Stati Uniti
TRASCRIZIONE 🔗
Are you the producer of this podcast?
Add a podcast transcript
Need Audio-to-Text?
Transcribe with Listen411 in Just 60 Seconds
CERCA TRA GLI EPISODI PASSATI
Cerca gli episodi passati di Restless Device.
ALTRI EPISODI IN QUESTO PODCAST
Steelmaking is an archetype of the rise and fall of American industry and has received a lot of attention in the run-up to and aftermath of the 2016 US presidential election. This episode is about steelmaking in the 1960s and 70s– at the turning point from growth to decline. I look at how a n…
What if we could build a machine that ran forever without using up any fuel? Such a machine would be a perpetual motion machine, and, sadly, it is impossible. Even so, people have been trying to build them for as long as people have been building machines. Perpetual motion machines appear in many e…
Technology can be strange and wonderful. It is a creative, expressive, and speculative pursuit that can tell us about who we are and where we’re going. In this episode, I introduce the topic of the podcast series and reflect on the similarity of engineering and art. Like artists, people who m…
People think 3D printing is going to change the world. They imagine ways that it might transform our society, economy, and culture. In this episode I look at why 3D printing is so compelling– why everyone is so interested in it right now. I talk about where 3D printing came from and how it…
Dichiarazione di non responsabilità: Il podcast e la grafica incorporati in questa pagina provengono da Dave Unger, che è di proprietà del suo proprietario e non è affiliato o approvato da Listen Notes, Inc.
MODIFICA
Grazie, ci hai aiutato a mantenere aggiornato il database dei podcast.