Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
LittleSmallscript
Search
Minori Yamashita
November 03, 2012
Programming
2
1.4k
LittleSmallscript
LittleSmallscript the language compiles into JavaScript.
http://ympbyc.github.com/LittleSmallscript
Minori Yamashita
November 03, 2012
Tweet
Share
More Decks by Minori Yamashita
See All by Minori Yamashita
Cloxp @ Smalltalk Meetup
ympbyc
0
300
Real World Objects
ympbyc
2
3.3k
ClojureScriptで変わるクライアントサイドWeb
ympbyc
0
960
Purely Functional Smalltalk-72
ympbyc
1
10k
Other Decks in Programming
See All in Programming
余白を設計しフロントエンド開発を 加速させる
tsukuha
7
2.1k
AI巻き込み型コードレビューのススメ
nealle
1
150
Grafana:建立系統全知視角的捷徑
blueswen
0
330
CSC307 Lecture 08
javiergs
PRO
0
670
メルカリのリーダビリティチームが取り組む、AI時代のスケーラブルな品質文化
cloverrose
2
510
CSC307 Lecture 03
javiergs
PRO
1
490
カスタマーサクセス業務を変革したヘルススコアの実現と学び
_hummer0724
0
670
Oxlintはいいぞ
yug1224
5
1.3k
Basic Architectures
denyspoltorak
0
660
CSC307 Lecture 06
javiergs
PRO
0
680
KIKI_MBSD Cybersecurity Challenges 2025
ikema
0
1.3k
AIエージェント、”どう作るか”で差は出るか? / AI Agents: Does the "How" Make a Difference?
rkaga
4
2k
Featured
See All Featured
How GitHub (no longer) Works
holman
316
140k
Discover your Explorer Soul
emna__ayadi
2
1.1k
The Spectacular Lies of Maps
axbom
PRO
1
520
Large-scale JavaScript Application Architecture
addyosmani
515
110k
Impact Scores and Hybrid Strategies: The future of link building
tamaranovitovic
0
200
What’s in a name? Adding method to the madness
productmarketing
PRO
24
3.9k
Building a Modern Day E-commerce SEO Strategy
aleyda
45
8.6k
Scaling GitHub
holman
464
140k
Making Projects Easy
brettharned
120
6.6k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Groundhog Day: Seeking Process in Gaming for Health
codingconduct
0
92
Six Lessons from altMBA
skipperchong
29
4.1k
Transcript
LittleSmallscript
Minori Yamashita <
[email protected]
>
LittleSmallscript
LittleSmallscript Little Smalltalk Smalltalk-80 to your terminal http://smalltalk.org/versions/LittleSmalltalk.html ・Minimal ・Subset
of Smalltalk-80 language ・No graphical VM ・Scopes of instance variables ・Cascade ・Class syntax (v5)
LittleSmallscript Smalltalk-80 Dynamic Class-based Object Oriented Language http://en.wikipedia.org/wiki/Smalltalk ・Graphical VM
・Many forks ・Squeak ・Pharo ・Visual Works ... ・Syntax
LittleSmallscript Javascript Dynamic Prototype-based Object Oriented Language https://developer.mozilla.org/en-US/docs/JavaScript ・Web ・Server
・Mobile ・Everywhere ・Objects ・Libraries
Code
Object subclass:#Animal variables:#(#name). !Animal setName: nm name := nm !.
!Animal move: metre console log: name + ' moved ' + metre + 'm' !. Animal subclass:#Snake variables:#(). !Snake move console log: 'Slithering...'. Snake super:#move arguments:#(5) !. Snake new; setName:'Sammy the Python'; move
Feature
Feature 1. Syntax that is similar to Smalltalk's chunk format
2. Use Javascript functions and methods ・forEach, $, Object#keys ... 3. Compiles into clean JavaScript ・Human readable ・Easy to fallback to native JS
Why LittleSmallscript?
No C
for (i = 0; i < 5; ++i) { alert(i);
} while (x < 5) { --x } try {} catch (err) {err}
for (i = 0; i < 5; ++i) { alert(i);
} while (x < 5) { --x } try {} catch (err) {err}
(0 to:4) do:[:i| alert value:i ] [x < 5] whileTrue:[
x -= 1 ] [ ] tryCatch:[:err|err]
(0 to:4) do:[:i| alert value:i ] [x < 5] whileTrue:[
x -= 1 ] [ ] tryCatch:[:err|err]
Just self No self=this
Just !X y ...! No X.prototype.y
littlesmallscript --watch Compile in no time
LittleSmallscript
http://ympbyc.github.com/LittleSmallscript