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.
Also In The April 2014 Issue
Andrew created Bits & Bytes, a fun card game to teach kids computing skills: logic, problem solving, and critical thinking.
Tim describes how he created his game company, Glide Games, and with his young son created two video games, Elevator Adventures and Subway Adventures.
A 4,000 year old Chinese magic squares puzzle is both fun and a way to learn basic problem solving skills. Plus turtles.
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.
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, the Director of Social Good at Microsoft, talks about the history and features of the Skype in the classroom service for teachers.
You can use the concepts of game play to turn almost any task or information into a game. Assuming you can define game play.
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.
Links from the bottom of all the October 2014 articles, collected in one place for you to print, share, or bookmark.
This language lets you modify the Skyrim game to learn game coding plus have fun adding objects and functionality to the game.
Interesting stories about computer science, software programming, and technology for the month of September 2014.
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.