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
ClojureScript: what are you?
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Roman Liutikov
March 12, 2016
Programming
140
2
Share
ClojureScript: what are you?
Roman Liutikov
March 12, 2016
More Decks by Roman Liutikov
See All by Roman Liutikov
ClojureScript × Type Inference
roman01la
0
45
React Kyiv – Dec 19, 2017
roman01la
1
230
React & ClojureScript in production at Attendify
roman01la
0
200
Web Apps performance & JavaScript compilers
roman01la
3
120
Introduction to React.js
roman01la
0
84
React Native: Native Mobile Development in JavaScript @ LvivJS 2016
roman01la
0
140
React Native: Are we there yet? (Pokémon edition) @ VinnytsiaJS '16
roman01la
0
400
React Native: Native mobile development with JavaScript
roman01la
0
190
ClojureScript, что ты такое?
roman01la
1
210
Other Decks in Programming
See All in Programming
「効かない!」依存性注入(DI)を活用したAPI Platformのエラーハンドリング奮闘記
mkmk884
0
280
Rethinking API Platform Filters
vinceamstoutz
0
4.3k
安いハードウェアでVulkan
fadis
1
850
どんと来い、データベース信頼性エンジニアリング / Introduction to DBRE
nnaka2992
1
350
PHP 7.4でもOpenTelemetryゼロコード計装がしたい! / PHPerKaigi 2026
arthur1
1
450
Claude Code Skill入門
mayahoney
0
450
ポーリング処理廃止によるイベント駆動アーキテクチャへの移行
seitarof
3
1.3k
AI活用のコスパを最大化する方法
ochtum
0
360
What Spring Developers Should Know About Jakarta EE
ivargrimstad
0
840
ロボットのための工場に灯りは要らない
watany
12
3.3k
20260315 AWSなんもわからん🥲
chiilog
2
180
2026-03-27 #terminalnight 変数展開とコマンド展開でターミナル作業をスマートにする方法
masasuzu
0
270
Featured
See All Featured
Bash Introduction
62gerente
615
210k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
290
Facilitating Awesome Meetings
lara
57
6.8k
Utilizing Notion as your number one productivity tool
mfonobong
4
280
First, design no harm
axbom
PRO
2
1.2k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.2k
Music & Morning Musume
bryan
47
7.1k
Organizational Design Perspectives: An Ontology of Organizational Design Elements
kimpetersen
PRO
1
660
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.7k
Color Theory Basics | Prateek | Gurzu
gurzu
0
270
Visual Storytelling: How to be a Superhuman Communicator
reverentgeek
2
490
Beyond borders and beyond the search box: How to win the global "messy middle" with AI-driven SEO
davidcarrasco
3
97
Transcript
ClojureScript what are you? Roman Liutikov
None
None
http://www.lisperati.com/casting_spels.pdf
((((()))))
John McCarthy • AI • LISP • Garbage collection
None
(ns app.core (:require [cljsjs.react-dom :refer [render]])) (def app-component ;; code
) (render app-component (js/document.getElementById "app"))
Too many parens? not really ;) (double 5) double(5) Clojure
JavaScript
Companies using ClojureScript CircleCI Atlassian Cisco eBay ModnaKasta ! …
Because Clojure rocks, and JavaScript reaches. — Rich Hickey
ClojureScript Release - Rich Hickey https://www.youtube.com/watch?v=tVooR-dF_Ag
Why ClojureScript? • Functional programming • Immutable data (mori in
JS) • Great standard library + Google Closure Libraries • Interactive development • Robust libraries • Great optimizing compiler (dead code elimination, tree-shaking and more)
But it should be slow http://swannodette.github.io/2013/06/10/porting-notchs- minecraft-demo-to-clojurescript/ http://thi.ng/
Learn once, use anywhere • Server-side: JVM, Node.js • Client-side:
ClojureScript + React.js • Desktop: ClojureScript + Electron • Mobile: ClojureScript + React Native
Tools Code • Atom, LightTable, Vim, Emacs, whatever… • Parinfer
Tools Build
Tools Build • Leiningen (dependencies + Grunt in JS) •
Boot (dependencies + Gulp in JS) • Figwheel (Webpack’s HMR in JS) • Devcards (visual interactive development)
None
Tools Debugging • Source maps • Dirac (Chrome DevTools with
extra features for CLJS development)
None
Tools Testing • cljs.test • doo (multi env test runner,
supports Karma)
SPA libraries • Reagent + re-frame • Om • Rum
Libraries • clojars.org (NPM in JS) • cljsjs.github.io (for JS
deps) • clojurewerkz.org • www.clojure-toolbox.com
How to try ClojureScript? • jsbin.com • cljsfiddle.com (Reagent) •
clojurescript.net (Web REPL) • planck-repl.org (OSX REPL) • Replete (iOS REPL)
ClojureScript for Skeptics - Derek Slager https://www.youtube.com/watch?v=gsffg5xxFQI
Where to learn more? • clojurescriptkoans.com • kanaka.github.io/clojurescript/web/synonym.html • cljs.info/cheatsheet
• clojuredocs.org • github.com/clojure/clojurescript/wiki • gitter.im/dev-ua/clojure • clojurians.net
(questions?) Thanks! @roman01la