Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR...
Transcript of Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR...
![Page 1: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/1.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx1
Standing on the Shoulders of Giants
![Page 2: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/2.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Setting ExpectationsSorta a history talk. Le Sigh.
Very Little Code.
Ideas/Survey Talk.
119 Slides, 3.4 SPM2
![Page 3: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/3.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Teetotaler for ~20 years
3
![Page 4: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/4.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Until…4
![Page 5: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/5.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Madison Ruby 2012
5
![Page 6: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/6.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Whisky & Cheese Pairing
6
![Page 7: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/7.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Thanks Big Tiger
7
![Page 8: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/8.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Thanks Big Tiger
7
Bite Me Ryan
![Page 9: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/9.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Current Diet8
![Page 10: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/10.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
My Liver?9
![Page 11: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/11.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ain’t got time to filter
10
![Page 12: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/12.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Thanks Josh
11
![Page 13: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/13.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
I’m a bit Toasty
12
![Page 14: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/14.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx13
Intro
![Page 15: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/15.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
"we [the Moderns] are like dwarves perched on the shoulders of giants [the Ancients], and thus we are able to see more and farther than the latter. And this is not at all because of the acuteness of our sight or the stature of our body, but because we are carried aloft and elevated by the magnitude of the giants.”
Bernard of Chartres, 12th century
14
![Page 16: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/16.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
"If I have seen further it is by standing on ye sholders of Giants.”
Isaac Newton, 1676
15
![Page 17: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/17.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
(meta: we ALL stole the talk
title, zzak!)16
![Page 18: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/18.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
In Other Words17
![Page 19: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/19.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Not a new concept, at all
18
![Page 20: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/20.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Newton was
iterating19
![Page 21: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/21.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Simple Idea20
![Page 22: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/22.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Idea21
![Page 23: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/23.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Begs the
question22
![Page 24: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/24.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
WTF, Language?
23
![Page 25: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/25.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ruby24
![Page 26: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/26.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
RubyCreated by Matz in 1993
Interpreted File-based “Scripting” System.
Purely Object-Oriented Class-based Runtime.
Incredibly Complex Syntax & Semantics.
Extensive Class Library, Numeric Tower, etc.
Designed for “Developer Happiness”.25
![Page 27: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/27.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Fibonacci
26
class Integer def fib self < 2 ? self : (self-1).fib + (self-2).fib end end
![Page 28: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/28.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ruby History
27
1981 - 1990
1981 1983 1985 1987 1989
1991 - 2000
1991 1993 1995 1997 1999
2001 - 2010
2001 2003 2005 2007 2009
2011 - 2020
2011 2013 2015 2017 2019
Feb 1993: Birth
Dec 1995: Ruby 0.95
Dec 1996: Ruby 1.0
Dec 1998: Ruby 1.2
Aug 1999: Ruby 1.4
Aug 2000: Ruby 1.6
Aug 2003: Ruby 1.8
Dec 2007: Ruby 1.9
Feb 2013: Ruby 2.0
Dec 2013: Ruby 2.1
Dec 2014: Ruby 2.2
Glo
bal
![Page 29: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/29.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ruby History
27
1981 - 1990
1981 1983 1985 1987 1989
1991 - 2000
1991 1993 1995 1997 1999
2001 - 2010
2001 2003 2005 2007 2009
2011 - 2020
2011 2013 2015 2017 2019
Feb 1993: Birth
Dec 1995: Ruby 0.95
Dec 1996: Ruby 1.0
Dec 1998: Ruby 1.2
Aug 1999: Ruby 1.4
Aug 2000: Ruby 1.6
Aug 2003: Ruby 1.8
Dec 2007: Ruby 1.9
Feb 2013: Ruby 2.0
Dec 2013: Ruby 2.1
Dec 2014: Ruby 2.2
Glo
bal
What Happened?
![Page 30: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/30.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ruby 1.0 Shipped with Almost Everything
28
![Page 31: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/31.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Not Much Added Since 1.0Private/Protected (~1.1)
Class Variables (1.6)
Encodings (1.9, 2.0)
frilly syntactic sugar (that doesn't really improve much of anything) (1.9+)
29
![Page 32: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/32.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ruby is a fantastic language, but it could be
better.30
![Page 33: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/33.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Smalltalk
Ruby
Lisp Perl
31
![Page 34: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/34.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
COLASelf
Smalltalk
Ruby
Lisp Perl
32
![Page 35: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/35.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx33
Smalltalk Self
Scheme/Racket FONC/COLA
+ V
PRI T
eam
+ P
LT T
eam
+ D
an In
galls
TooCoolfor
Logos?
![Page 36: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/36.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
& Many More34
![Page 37: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/37.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Smalltalk35
![Page 38: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/38.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Brief summary of SmalltalkBy Alan Kay & Dan Ingalls at Xerox PARC, created in 1972. Publicly released in 1980.
Bytecode Compiled Image-based System.
Purely Object-Oriented Class-based Runtime.
Incredibly Simple/Clean Syntax and Semantics. Only 6 keywords, 4 precedence levels.
Fully Immersive development environment.
Incubator for Ideas: this is where many ideas of OO, patterns, mvc, etc came from.
WAY ahead of its time. Still is in some ways.
36
![Page 39: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/39.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Fibonacci
37
!Integer methodsFor: 'benchmarks' stamp: 'jm 11/20/1998 07:06'! fib ^ self < 2 ifTrue: [self] ifFalse: [(self-1) fib + (self-2) fib] ! !
![Page 40: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/40.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Self38
![Page 41: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/41.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Brief summary of selfDavid Ungar & Randall Smith started at Xerox PARC and finished at Sun in 87.
Bytecode Compiled + JIT Image-based System.
Purely Object-Oriented Classless (aka prototypes) Runtime.
Incredibly Simple/Clean Syntax & Semantics. 8 bytecodes. EIGHT.
Fully Immersive development environment.
Incubator for Ideas: java hotspot was born here.
39
![Page 42: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/42.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Fibonacci
40
fibonacci = ( <= 1 ifTrue: [ self ] False: [ predecessor fibonacci + (- 2) fibonacci ])
![Page 43: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/43.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Scheme & Racket
41
![Page 44: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/44.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Brief summary of schemeBy Gerald Sussman & Guy Steele in 1975.
Scheme is a minimal variant of a lexically-scoped Lisp.
Lisp is a functional language based on lists.
Innovation Galore: Tail Call Optimizations, Numeric Tower, Hygienic Macros, 1st class continuations, etc.
42
![Page 45: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/45.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Brief summary of racketBy Matthias Felleisen & PLT Cohort.
Racket is a maximal variant of Scheme. Huge incredibly diverse library.
Bytecode Compiled + JIT File-based System.
Mostly functional multi-language Runtime.
Simple Syntax & Semantics w/ rich expressions like extensive macros & structural matching.
Ships with Editor & Runtime.
43
![Page 46: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/46.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Fibonacci
44
(define (fib x) (if (< x 2) x (+ (fib (- x 1)) (fib (- x 2)))))
![Page 47: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/47.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
COLA45
![Page 48: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/48.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
A Tiny, Beautiful
Kernel46
![Page 49: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/49.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
In the theme of this talk, we are coming back around to Alan Kay
47
![Page 50: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/50.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Brief Summary of VPRI Viewpoints Research Institute (VPRI) is Alan Kay's thinktank
5 year NSF grant to work on FONC: foundations of new computing
Project: STEPS (STEPS Toward Expressive Programming Systems)
They want a whole system that can be understood by one brain
Entire system, from language to GUI Apps, in ~20kloc.48
![Page 51: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/51.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Brief Summary of COLA Machine Compiled File-Based System.
Object Oriented Prototype-based Runtime.
Incredibly Simple/Clean Syntax & Semantics. (notice a pattern?)
COLA = Combined Object/Lambda Architecture.
“designed to be the simplest possible language which can be described in itself"
49
![Page 52: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/52.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Fibonacci
50
Integer fib { ; lispy (if (< n 2) n (+ (fib (- n 1)) (fib (- n 2)))) }
Integer fib [ ; smalltalky ^ self < 2 ifTrue: [self] ifFalse: [(self - 1) fib + (self - 2) fib] ]
![Page 53: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/53.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Time to Plunder!
51
![Page 54: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/54.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Time to Plunder!
51
Yarrrrrr
![Page 55: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/55.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ideas from Smalltalk
52
![Page 56: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/56.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Squeak Smalltalk generates and builds itself.
53
Smalltalk
New VM
Smalltalk Subsetto C translator
VM written inSmalltalk Subset
![Page 57: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/57.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Extensive Hierarchy of Classes
54…lots more…
![Page 58: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/58.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Developer Tools!55
![Page 59: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/59.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx56
![Page 60: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/60.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx57
![Page 61: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/61.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx58
Integrated Debugger
![Page 62: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/62.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Implementors & Senders Browser
59
![Page 63: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/63.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
(and a lot more)60
![Page 64: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/64.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
#inspect actually useful# smalltalk: >> Color lightRed darker => (Color r: 0.92 g: 0.736 b: 0.736) >> (Color r: 0.92 g: 0.736 b: 0.736) => (Color r: 0.92 g: 0.736 b: 0.736)
# versus ruby: >> Color.new(0.92, 0.736, 0.736) => #<Color:0x007fad5114c458 @r=0.92, @g=0.736, @b=0.736>
61
![Page 65: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/65.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ideas from Self
62
![Page 66: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/66.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
This was the birthplace of JIT.
63
![Page 67: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/67.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Self is the reason why Java & Javascript
are fast64
![Page 68: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/68.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Dynamic languages CAN be fast.
65
![Page 69: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/69.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Prototyping66
![Page 70: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/70.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Influenced Javascript & IO
67
![Page 71: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/71.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Prototyping is Handy!class Object def define_method name, &b self.singleton_class.send :define_method, name, &b self end
def clone_method obj, name define_method name, &obj.method(name) end end
class X; def to_s; self.class.name; end; end class Y; def to_s; self.class.name; end; end
puts X.new # X puts Y.new # Y puts X.new.clone_method(Y.new, :to_s) # Y??
68
![Page 72: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/72.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Developer Tools!69
![Page 73: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/73.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx70
![Page 74: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/74.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx71
![Page 75: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/75.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx72
![Page 76: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/76.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx73
![Page 77: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/77.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ideas from Scheme & Racket
74
![Page 78: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/78.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx75
![Page 79: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/79.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx76
![Page 80: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/80.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx77
![Page 81: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/81.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx78
![Page 82: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/82.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Visual Stack Traces
79
![Page 83: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/83.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx80
Structural Pattern Matching
![Page 84: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/84.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Multiple Language Support
#lang scribble/manual @title{My Library} Welcome to my documentation: @racket[(list 'testing 1 2 3)].
81
![Page 85: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/85.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
OO is good for organization, scoping,
and data hiding82
![Page 86: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/86.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
But…83
![Page 87: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/87.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
lambda is king
84
𝞴
![Page 88: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/88.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
lambda is king
84
𝞴👑
![Page 89: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/89.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Speed Comparison% racket fib.rkt '(0 1 1 2 3 5 8 13) cpu time: 13 real time: 13 gc time: 0 cpu time: 22 real time: 22 gc time: 0 cpu time: 35 real time: 35 gc time: 0 '(832040 1346269 2178309)
% ruby fib.rb [0, 1, 1, 2, 3, 5, 8, 13] user system total real 30 0.230000 0.000000 0.230000 ( 0.237727) 31 0.390000 0.000000 0.390000 ( 0.389832) 32 0.600000 0.010000 0.610000 ( 0.602819)
85
![Page 90: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/90.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
17x faster86
![Page 91: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/91.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Tail Call Optimization
87
![Page 92: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/92.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ideas from COLA
88
![Page 93: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/93.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
STEP’s vision of computing is massively
powerful89
![Page 94: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/94.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx90
![Page 95: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/95.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Debian Mac OS X
Windows Vista FreeBSD
Open Office GTK+ v2
Ruby electromagnetism
283 million lines of code 86 million lines of code 50 million lines of code 9 million lines of code 10 million lines of code 650 thousand lines of code 1.2 million lines of code 4 lines of code
91
![Page 96: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/96.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Combined Object/Lambda Architecture
92
![Page 97: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/97.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Objects for storage and organization
93
![Page 98: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/98.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Lambdas for execution
94
![Page 99: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/99.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx95
Objectsfor
Storage
Lambdasfor
Execution
![Page 100: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/100.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx96
string "lookup"_vt
symbol
string "addMethod"_vt
symbolstring "allocate"_vt
symbol
string "delegated"_vt
symbol
string "intern"_vt
symbol
--datalookupmethod
_vtclosure
--dataaddMethodmethod
_vtclosure
--datadelegatedmethod
_vtclosure
--dataallocatemethod
_vtclosure
--datainternmethod
_vtclosure
parentvalueskeys
4size_vt
vtable_vt
--parentvalueskeys
5size--_vt
SymbolList
parent--values
keys --0size
_vtclosure_vt
parent--values
keys --0size
_vtobject_vt
parentvalueskeys
1size_vt
symbol_vt
![Page 101: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/101.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Nile (graphics language) Source
Nile to Nile AST
Nile AST
Nile AST to Nothing
Nothing Code
Nothing to N-AST
N-AST code
Nothing to x86
CPU
OMeta: Translators all the way down
97
![Page 102: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/102.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Define your system using basic axioms.
98
![Page 103: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/103.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Teach the GUI Euclid’s geometry and give it a rule
engine99
![Page 104: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/104.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
650 kloc gtk GUI library <
Rules + Euclid in ~250 loc100
![Page 105: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/105.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Runtime101
![Page 106: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/106.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
MUCH smaller102
![Page 107: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/107.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Much more understandable
103
![Page 108: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/108.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Much more maintainable.
104
![Page 109: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/109.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ruby’s 1.3 mloc <
STEPS’ 20 kloc105
![Page 110: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/110.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
👋Hand Wavey?106
![Page 111: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/111.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
TONS of Rich Info Here:
http://vpri.org/html/writings.php
107
![Page 112: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/112.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx108
Conclusion
![Page 113: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/113.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Surveyed a minority of ideasself-bootstrapping implementations
extensive collection / magnitude hierarchies
instance-based inheritance
JIT compilation
Importance of lambdas & Tail Calls
object level pattern matching
the combined object/lambda architecture
109
![Page 114: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/114.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Ruby is at its best
110
![Page 115: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/115.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Borrowing great ideas
111
![Page 116: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/116.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
From other languages
112
![Page 117: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/117.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
It has fallen behind
113
![Page 118: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/118.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
Lost its way114
![Page 119: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/119.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
It's time for ruby to step up
115
![Page 120: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/120.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
do more with these ideas
116
![Page 121: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/121.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
keep pushing forward
117
![Page 122: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/122.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx
to stand upon the shoulders of giants
118
![Page 123: Standing on the Shoulders of Giants · Standing on the Shoulders of Giants Ruby on Ales, Bend, OR ... (VPRI) is Alan Kay's thinktank 5 year NSF grant to work on FONC: foundations](https://reader034.fdocuments.us/reader034/viewer/2022052612/5f0cf6067e708231d437fca2/html5/thumbnails/123.jpg)
Standing on the Shoulders of Giants
Ruby on Ales, Bend, OR
Ryan Davis, Seattle.rb
@the_zenspiderx119
Thank You