Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
7 languages in 30 minutes
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Kimmy Leo
November 18, 2015
Programming
28
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
7 languages in 30 minutes
https://zhuanlan.zhihu.com/p/20289355?refer=lessmore
Kimmy Leo
November 18, 2015
More Decks by Kimmy Leo
See All by Kimmy Leo
Build Typed Web
kenpusney
0
24
FP Explains
kenpusney
1
58
Other Decks in Programming
See All in Programming
全ての永続トークンを、生まれる前に消し去りたい!
sylph01
2
880
SREの越境 / SRE Collaboration
y0hgi
2
310
コードレビューのボトルネックを"する側"と"される側"の両面から解消する
yub0n
2
1.6k
AI時代のコードレビューは人に向けるな、仕組みに向けろ
texmeijin
5
3.7k
re:Inventに行く前に知っておきたい現地参加のノウハウ
nokomoro3
0
430
IBM Bob でAI駆動開発『QC-Playbook』
ichirokano2
0
110
Apple Intelligence を用いた個人情報誤送信防止、及びユーザーリクエスト体験の改善について
yukiny
0
350
ハーネス設計入門 〜 基礎知識の整理から実務へのステップアップ 〜
kinopeee
28
32k
S3 TablesのIcebergデータに、AIエージェントからアクセスしてみた / 20261016developersio2026joetsu-accessing-iceberg-in-s3tables-via-agent
kasacchiful
PRO
0
150
【加筆修正版】Laravel のアプリケーションをどこにデプロイするか #phpcon_ehime
akase244
0
150
Workers Cache を知る
syumai
0
360
外から家のPCの電源入れたい!をPHPで解決する
kawashimo0
1
130
Featured
See All Featured
Skip the Path - Find Your Career Trail
mkilby
1
260
AI Search: Where Are We & What Can We Do About It?
aleyda
0
8.1k
From π to Pie charts
rasagy
1
400
Fantastic passwords and where to find them - at NoRuKo
philnash
53
4k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
850
The browser strikes back
jonoalderson
0
1.8k
[Rails World 2026] Durable orchestration on Rails: from continuation to workflow
palkan
1
750
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
410
The Curse of the Amulet
leimatthew05
3
16k
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
940
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.9k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
230
23k
Transcript
7 languages in 30 minutes RETHINK COMPUTATION AND LANGUAGE
contents 1. a linear memory based language 2. a pattern
matchingbased language 3. a meta language 4. a stack based language 5. a (markup)language 6. a macro language 7. a modelinglanguage
Linear memory Memory cells Addressing Pointer Increment/Decrement Program Counter PC-Stack
Brainfuck MINIMAL MODEL FOR COMPUTATION
Pattern maching a = a; X = a; //=> X
results a a(b, c) = X; //=> X results a(b, c) a(X, c) = a(b, Y); //=> X results b, Y results c [H|T] = [1,2,3,4,5]; //=> H results 1, T results [2,3,4,5]
length of a list len([], 0). len([H|T], X) :- len(T,
Y), X is Y+1.
Prolog PROGRAMMING LOGIC
program as data 1 + 2 − 3 ×4
program as data * + 1 - 2 3 4
program as data (* (+ 1 (- 2 3)) 4)
Scheme LOST IN STUPID PARENS
stack-based operations * + 1 - 2 3 4
postfix expression 1 2 3 - + 4 *
stack-based operations see <04/fix.cpp>
JVM bytecode 0: iconst_2 1: istore_1 2: iload_1 3: sipush
1000 6: if_icmpge 44 9: iconst_2 10: istore_2 11: iload_2 12: iload_1 13: if_icmpge 31 16: iload_1 17: iload_2 18: irem 19: ifne 25 22: goto 38 25: iinc 2, 1 28: goto 11 31: getstatic #84; // Field java/lang/System.out:Ljava/io/PrintStream; 34: iload_1 35: invokevirtual #85; // Method java/io/PrintStream.println:(I)V 38: iinc 1, 1 41: goto 2 44: return
PostScript/Forth PROGRAMMING LANGUAGE FOR PUBLISHING AND PRINTING
represent a math expression × => a x b ?
+ , => a / b ? lim 0→2 sin => lim x -> 0 sin x ? ∑ 7 => SIGMA x 2 ?
represent a math expression × => a \times b +
, => \frac{a}{b} lim 0→2 sin => \lim_{x -> 0}{sin x} ∑ 7 => \sum{x^2}
represent an article \article \section \subsection \paragraph \theorem …
XML <article> <section> <subsection> <p></p> <subsection> </section> </article>
XSLT
LaTeX ALL YOU NEED IS A SUITABLE DISTRIBUTION
magic of string substitution vDefine vQuote vEval vMeta-programming vTokens vRecursion
m4 LAZYMAN’S LAZY TOOL
? WHAT YOU CAN MAKE
None