beanz Magazine

Lisp

TechCocktail on Flickr

An ancient language from 1958 lives on and is used to solve modern problems in programming and computer science.

In the mid to late 1950s, John McCarthy at Massachusetts Institute of Technology (MIT) had a problem to solve. As part of an artificial intelligence project, he needed a programming language that could process lists of data. Sentences structured in a formal way would represent information about the world. The computer would navigate and process lists of sentences to mimic human reasoning, for example, the ability to answer a question by comparing possible sentences organized into lists.

In simplistic English, if you are a computer and your program asks you what to do if you are cold and hungry, you take a list of possible outcomes then navigate the list to find a reasonable result. If you are cold, for example, your processing would gravitate towards sentences related to warmth and avoid sentences related to cold.

The problem for McCarthy? No suitable software language to work with lists existed. McCarthy had to create his own language.

But a funny thing happened next. McCarthy created his language which he called Lisp, shorthand for List Processing. And, as Paul Graham put it, McCarthy did for programming what Euclid did for Geometry. He built a programming language from simple operators and a notation system for functions. But the parts of the language he thought most important, the m-expressions for handling math syntax, turned out to be least important to people who used Lisp. And one of the lesser parts of McCarthy’s language, s-expressions used to describe data, went on to influence a number of programming languages for fifty years and counting.

To read the full article, subscribe today to read the rest of this article PLUS the 33 links from this story, including links to search engines, articles, note taking applications, teaching materials, and other resources.

This magazine is 100% reader supported by people like you. Subscribers support independent research and writing, as well as daily operations. Subscribers also help keep this magazine free of annoying ads.

Subscribe Today!

Also In The April 2014 Issue

Andrew Mills Talks about Bits & Bytes and How to Design Games

Andrew created Bits & Bytes, a fun card game to teach kids computing skills: logic, problem solving, and critical thinking.

Tim Kropp Talks About Creating Games for Kids

Tim describes how he created his game company, Glide Games, and with his young son created two video games, Elevator Adventures and Subway Adventures.

Lo Shu Magic Squares Puzzle

A 4,000 year old Chinese magic squares puzzle is both fun and a way to learn basic problem solving skills. Plus turtles.

History of Video Games

Can you name the first video game? The first game likely was Tennis for Two in 1958 but it could be Space Wars! in 1962 or other games. It's complicated.

Playing Harvest Moon in Japanese

The story of an English-speaking person learning a little Japanese by playing the latest Harvest Moon game, Connect to a New World, in original Japanese.

Wendy Norman and Skype in the classroom

Wendy Norman, the Director of Social Good at Microsoft, talks about the history and features of the Skype in the classroom service for teachers.

Game Play

You can use the concepts of game play to turn almost any task or information into a game. Assuming you can define game play.

Maker Faire NY 2014

The Greatest Show and Tell on Earth turned out to be tons of fun for kids and parents, plus a place to wander and find new technology. Links and video.

We need storytelling. Otherwise, life just goes on and on like the number Pi.

October 2014 Learn More Links

Links from the bottom of all the October 2014 articles, collected in one place for you to print, share, or bookmark.

Papyrus

This language lets you modify the Skyrim game to learn game coding plus have fun adding objects and functionality to the game.

October 2014 News Wire

Interesting stories about computer science, software programming, and technology for the month of September 2014.

Unity, PyGame, GamePress

Three game creation software tools you can use to create games. Includes a brief description and lots of links to these and other game creation tools.