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
Roman Liutikov
March 12, 2016
Programming
2
130
ClojureScript: what are you?
Roman Liutikov
March 12, 2016
Tweet
Share
More Decks by Roman Liutikov
See All by Roman Liutikov
ClojureScript × Type Inference
roman01la
0
43
React Kyiv – Dec 19, 2017
roman01la
1
220
React & ClojureScript in production at Attendify
roman01la
0
200
Web Apps performance & JavaScript compilers
roman01la
3
120
Introduction to React.js
roman01la
0
79
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
390
React Native: Native mobile development with JavaScript
roman01la
0
180
ClojureScript, что ты такое?
roman01la
1
210
Other Decks in Programming
See All in Programming
Rubyで鍛える仕組み化プロヂュース力
muryoimpl
0
260
Patterns of Patterns
denyspoltorak
0
400
クラウドに依存しないS3を使った開発術
simesaba80
0
200
Denoのセキュリティに関する仕組みの紹介 (toranoana.deno #23)
uki00a
0
200
ZJIT: The Ruby 4 JIT Compiler / Ruby Release 30th Anniversary Party
k0kubun
1
300
マスタデータ問題、マイクロサービスでどう解くか
kts
0
160
0→1 フロントエンド開発 Tips🚀 #レバテックMeetup
bengo4com
0
450
組み合わせ爆発にのまれない - 責務分割 x テスト
halhorn
1
170
AI時代を生き抜く 新卒エンジニアの生きる道
coconala_engineer
1
490
AtCoder Conference 2025
shindannin
0
850
Grafana:建立系統全知視角的捷徑
blueswen
0
260
Java 25, Nuevas características
czelabueno
0
120
Featured
See All Featured
Chasing Engaging Ingredients in Design
codingconduct
0
92
Designing for Performance
lara
610
70k
HDC tutorial
michielstock
1
280
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
34
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
YesSQL, Process and Tooling at Scale
rocio
174
15k
Neural Spatial Audio Processing for Sound Field Analysis and Control
skoyamalab
0
140
Claude Code のすすめ
schroneko
67
210k
Leo the Paperboy
mayatellez
0
1.3k
Noah Learner - AI + Me: how we built a GSC Bulk Export data pipeline
techseoconnect
PRO
0
76
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
31
9.8k
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
0
130
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