Lisp - BigBozoid

Download Report

Transcript Lisp - BigBozoid

Artificial Intelligence
Dartmouth College
AI conference at Dartmouth
College, 1956: McCarthy,
Minsky, Newell, Simon
Newell, Shaw and Simon
demonstrated Logic Theorist, a reasoning
program written in IPL (Information
Processing Language)
IPL had support for linked lists, and
caught McCarthy’s attention
Early AI Language Efforts
 He wanted a language for
AI projects, but not
IPL: too low-level and
machine-specific

An IBM group (consulting
McCarthy) developed
FLPL: Fortran List Processing
Language
John McCarthy
 McCarthy’s wish list, developed while writing
AI programs (chess and differential calculus)
• Conditional expressions
• Recursion
• Higher-order functions (like ML’s map)
• Garbage collection
 FLPL was not the answer for McCarthy’s group
at MIT in 1958…
A Lisp program is a list representing an AST:
(+ a (* b c))
The plan was to use some Fortran-like
notation
But McCarthy wrote a paper showing a simple
Lisp interpreter in Lisp: a function called eval
To avoid syntax issues, he used the list-AST
form, both for eval’s input and for eval itself
This eval, hand-translated into assembly
language, became the first implementation of
Lisp
Lisp’s Unusual Syntax
Lisp’s Unusual Syntax
The group never gave up the idea of
compiling from some Fortran-like syntax
But they never did it either
Later, people tried to compile Lisp from a
Fortran- or Algol-like syntax
None of these efforts were very popular
There are advantages to programs and
data using the same syntax
Lisp Evolution
 Quickly became, and remains, the
most popular language for AI
applications
 Before 1980: many dialects in use:
• Each AI research group had its own dialect
• In the 1970’s, a number of Lisp machines
were developed, each with its own dialect
 Today: some standardization:
• Common Lisp: a large language and API
• Scheme: a smaller and simpler dialect
Lisp Influence
2nd oldest general-purpose
programming language still in use
Some ideas, like the conditional
expression and recursion, were
adopted by Algol and later by many
other imperative languages
Lisp Influence
The function-oriented approach
influenced modern functional
languages like ML
Garbage collection is increasingly
common in many different language
families
Lots of Irritating Superfluous Parentheses
Lisp programmers know the value of
everything and the cost of nothing
Alan Perlis
Lisp is a programmable programming
language.
John Foderaro
Lisp has jokingly been called "the
most intelligent way to misuse a
computer".
Edsger Dijkstra
ARPA 1962
Advanced Research Projects Agency
Formed for research not
just military applications
“Lick” First director
He called it the:
Information Processing
Techniques Office (IPTO)
JCR Licklider
Donald Davies
British inventor of
packet switching
National Physical Laboratory
1924-2000
Lick’s Intergalactic Network
1965
 With ARPA funding, Larry Roberts and
Thomas Marill created first wide-area
network connection: MIT to Santa
Monica
 Dedicated telephone line with acoustic
couplers
 Telephone lines work for data, but are
 Inefficient
 Wasteful of bandwidth
 Expensive
 As Kleinrock predicts, packet switching
offers the most promising model for
communication between computers.
Joss 1965
Johnniac Open Shop System




The ARPA-funded at the
RAND Corporation
Computational problem solving at a number of
remote electric typewriter consoles
IBM electric typewriters modified with small
boxes with indicator lights and activating
switches
User input appeared in green, and JOSS
responded with output in black.
Paul Baran
Envisioned a communications
network that would survive a
major enemy attacked
October 29, 1969



first host-to-host connection,
from UCLA to SRI
first “Log-In” crashed the IMPs
(Interface Message Processors)
but the next “Log-In” worked!
1970
Nodes are added to the ARPANET at the
rate of one per month
1971
Metcalfe’s Law
“The value of a
network increases
exponentially with
the number of
nodes.” Robert Metcalfe
Ethernet
Invented 1973 at Xerox–PARC
by Robert Metcalfe and David Boggs
Got the idea of packets from the
ALOHAnet
 packet maximum 1000 bits long
 recipients address attached to the
head of each packet
 computers tuned to UHF frequency,
listening for packets addressed to it
Industry Standard
Metcalfe left Xerox in 1979 to promote
the use of personal computers and Local
Area Networks (LANs).
He convinced Digital Equipment, Intel,
and Xerox Corporations to work
together and promote ethernet as a
standard.
Today, ethernet is the most widely
installed LAN protocol.
Ethernet is no longer limited to LANs.
Arpanet
Successive levels of complexity
1973
1977
Snowball effect
starts



Computer magazine
September 1979

USENET - a series of shell scripts
by Steve Bellovin at UNC to
communicate with Duke
Newsgroups start with a name
that gives an idea of its content
USENET - early example of a
client server, users dial in to a
server with requests to forward
certain newsgroup postings.
The server then ‘serves’ the
request.
Arpanet
Successive levels of complexity
1980
1984
1983
ARPANET was
standardized
on the TCP/IP
protocols adopted by
the US Department of Defense.
The Defense Communications Agency
split the network into a public “ARPANET”
and a classified “MILNET”
Only 45 hosts remained on the ARPANET
1983
Numbering the Internet hosts and
keeping track of the host names fails
to keep up with the growth of the
Internet.
Development of the Domain Name
System - [email protected]
Timeline
Tim Berners-Lee
1989
Number of hosts
Jan/ 80,000
July/ 130,000
Nov/ 160,000
Australia, Germany,
Israel, Italy, Japan,
Mexico, Netherlands,
New Zealand and the
United Kingdom added
Tim Berners-Lee
Devised the URL (uniform
resource locator)
Everyday, garden
variety genius
Created Hypertext Transfer
Protocol
(HTTP)
Defined HTML
1990


Gopher – University of Minnesota
Early Browsers Lynx & Viola
1993

1995
Mosaic  Netscape  Mozilla
•Ease of Hypercard
•Full HTML capacity
of WWW