Ruby
Python
Javascript
Clojure
x = 1 + 2
x = 1 + 2
var x = 1 + 2
(def x (+ 1 2))
Slide 32
Slide 32 text
Ruby
Python
Javascript
Clojure
[1,2,3].select(&:even?)
[x for x in (1,2,3)
if (x%2 == 0)]
([1,2,3]).filter(function(x)
{return x%2 === 0;});
(filter even? [1 2 3]);
Slide 33
Slide 33 text
Programming Language
Characteristics
• Object Oriented vs.
Functional vs.
Procedural vs.
Imperative
• Typed vs. Untyped
• Strong vs. Weak Typing
• Static vs. Dynamic Typing
• Classical vs. Prototypical
• Compiled vs. Interpreted
• Single vs. Multiple Inheritence
• Mutability vs. Immutability
• // vs. /* */ vs. # vs. -- Comments
• Terse vs. Verbose
• Textual vs. Graphical
Slide 34
Slide 34 text
Turing Completeness
Slide 35
Slide 35 text
Denotation
Slide 36
Slide 36 text
C H A I R
/tʃɛr/
Slide 37
Slide 37 text
No content
Slide 38
Slide 38 text
bed
Slide 39
Slide 39 text
Basic Color Terms:
Their Universality and
Evolution
Brent Berlin and Paul Kay (1969)
Slide 40
Slide 40 text
No content
Slide 41
Slide 41 text
No content
Slide 42
Slide 42 text
No content
Slide 43
Slide 43 text
No content
Slide 44
Slide 44 text
No content
Slide 45
Slide 45 text
Pirahã Language
Daniel Leonard Everett
Slide 46
Slide 46 text
Pirahã Language
• Tiny Phonetic Inventory (8 consonants & 3 vowels)
• Whistled to Communicate in Jungle
• No Relative Clauses or Grammatical Recursion
• No Cardinal or Ordinal Numbers
• No Unique Words for Color
• Epistemology as Grammatical Construct
Slide 47
Slide 47 text
6,000 Natural Languages
Hundreds Dying Every Year
Slide 48
Slide 48 text
English as Universal
Programming Language
Slide 49
Slide 49 text
No content
Slide 50
Slide 50 text
ৈࢿ
Slide 51
Slide 51 text
Ŧ ũ Ŭ Ů Ŷ ŷ ź ż Ž ſ ƀ Ɓ Ƃ ƃ
g n d r m b s -/ng j ch k t p h
ŧ ɹ ŭ ɹ ɹ Ÿ Ż ɹ ž ɹ ɹ ɹ ɹ ɹ
kk tt pp ss jj
*,F kataba he wrote
GH),F katabnā we wrote
*,IJ yaktubu he writes
*,IK naktubu we write
*,Fأ aktaba he dictated
*,IJ yuktibu he dictates
*+GF kātib writer
*,IM maktab office
Slide 59
Slide 59 text
!"#
("!ﻢﻟﺎﻋ ﺎﻳ ﺎﺒﺣﺮﻣ" لﻮﻗ)
Slide 60
Slide 60 text
• cd
• ls
• mv
• cp
• rm
• mkdir
• chmod
• pwd
• whoami
• finger
• kill
• which
• ps
• cat
• grep
• sed
• awk
• find
• cal
• date
• time
• more
• less
• man
UNIX Commands
Slide 61
Slide 61 text
P = NP
Slide 62
Slide 62 text
No content
Slide 63
Slide 63 text
1,267,650,600,000,000,000,000,000,000,000
Slide 64
Slide 64 text
Quantum Computers
Slide 65
Slide 65 text
No content
Slide 66
Slide 66 text
No content
Slide 67
Slide 67 text
XOR
INPUT
A B
INPUT
A B
OUTPUT
A XOR B
0 0 0
0 1 1
1 0 1
1 1 0
1 1 0
Slide 68
Slide 68 text
What?
Slide 69
Slide 69 text
There is no right way to do things.
There are no sides.
Slide 70
Slide 70 text
We are a product of our culture.
...but we are not beholden to it.