Top Banner
History of the language self • Sandeep K Gude
22

History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Dec 19, 2015

Download

Documents

Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

History of the language self

• Sandeep K Gude

Page 2: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

History

•Designed by - David Ungar, Randall Smith

•Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Page 3: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

History Continued…..

•Initial implementation was undertaken at Stanford University in 1987

•Self was used as a vehicle for language, environment, user interface and implementation research

Page 4: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

History continued….

•A public releases of Self from stanford took place in 1990.

•In 1991 the Self project moved to Sun Microsystems Labs.

Page 5: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Context

•There is a (n)ever ending thirst for a pure object oriented approach of programming.

•eg Camp Smalltalk: meetings for discussions on Object oriented programming

Page 6: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Context ….

• A programming language which can be self supporting

•A programming langugage which can over come the inadequacies of the operating system.

Page 7: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Elements of the language

• Elements of the language

• Kristin Ruble

Page 8: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

What is Different about SELF

• No Classes• No variables• Objects have slots not

instance variables• Objects created by

“cloning” a prototype

Page 9: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Self based on a small number of simple

and concrete ideas

• Prototypes• Slots • Behavior

Page 10: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Prototypes

• Prototypes combine inheritance and instantiation to provide a framework that is simpler and more flexible than most object-oriented languages

Page 11: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Slots

• Slots unite variables and procedures into a single construct

• This permits the inheritance hierarchy to take over the function of lexical scoping in conventional languages

Page 12: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Behavior

• Self does not distinguish state from behavior

• Narrows the gaps between ordinary objects, procedures, and closures

• Self's simplicity and expressiveness offer new insights into object-oriented computation.

Page 13: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

SELF Objects

Page 14: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Self Objects

Page 15: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Example:SELF True

Page 16: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Its position with respect to other languages

• Brian Barcomb

Page 17: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Similarities

• Object-Oriented

Page 18: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Similarities

• Object-Oriented

• Closely related to Smalltalk

-syntax

-no type declarations

-block usage

-exploratory style

Page 19: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Differences

• Simplicity

• Concreteness

• No Classes

• Object-Level Inheritance

• Prototypes

• Messages

Page 20: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

In a class-based language

Page 21: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

In SELF

Page 22: History of the language self Sandeep K Gude. History Designed by - David Ungar, Randall Smith Presented as "SELF: The Power of Simplicity", OOPLSA '87,

Conclusion of Language Comparison

Self’s simplicity and expressiveness offer new insights into object oriented computation