Anda di halaman 1dari 16

Why you should be excited about

ClojureScript
born y esterd ay!

@fronx

faye

http://twitter.com/#!/jcoglan/status/93818247509581824

ClojureScript: Clojure code that compiles to JavaScript


+ op timiz ation !

Created by Rich Hickey, Clojure/core, and friends

https://github.com/clojure/clojurescript/blob/master/samples/hello

A LISP for the modern world.


Awesome for controlling complexity!
Clojure is arguably simpler, more powerful and more robust than JS. Rich Hickey

JavaScript is assembly language for the web.


Scott Hanselman

http://www.hanselman.com/blog/JavaScriptIsAssemblyLanguageForTheWebSematicMarkupIsDeadCleanVsMachinecodedHTML.aspx

JavaScript == target language for other languages


CoffeeScript Coco Parsec CoffeeScript JS11 Kaffeine Jack move Narcissus Traceur EcmaScript 5 Parser (es-lab) EcmaScript 5 Parser (qfox) reflect.js bdParse parse-js Closure Compiler UglifyJS Caja ADsafe FBJS Jacaranda Microsoft Web Sandbox Gatekeeper Dojo Secure SafeJS MileScript Mascara Roy Streamline.js mobl StratifiedJS NarrativeJS jwacs Jscex TameJS ContextJS Objective-J JS2 jangaroo Flapjax jLang Restrict Mode TIScript HotRuby rb2js RubyJS Red Quby Opal 8ball PYXC-PJ Pyjamas Skulpt PyCow PyvaScript GWT Java2Script j2js scalagwt jsc JSIL Script# ClojureScript clojurejs ClojureScript EdgeLisp Fargo Moby Scheme nconc Parenscript Ralph scheme2js Scriptjure Sibilant Spock Ocamljs O'Browser Js_of_ocaml UHC YHC jshaskell Clamato Silver Smalltalk JTalk Lively Kernel Emscripten mala Clue NS Basic/App Studio qb.js Haxe Fantom LZX (Laszlo XML) Fun Ur WebSharper mobl E Sugar Opa Waterbear JsMorphic ScriptBlocks Oia Quixe Gnusto Logo Interpreter p2js Reb2Static RPN phype OP4JS jison OMeta/JS PEG.js languagejs Canopy JS/CC jsparse ReParse p4js JSGLR antlr Cruiser.Parse Closure Compiler burrito javascript types altJS jswiki AST Documentation Spidermonkey Parser API JsonML AST treehugger JavaScript Shaper

OMG , its lik e the JV M!

https://github.com/jashkenas/coffee-script/wiki/List-of-languages-that-compile-to-JS

Why is this happening?

optimize
performance efcient use of resources weirdnesses readability abstraction agility

There are some things computers are just better at than humans.

human

readability abstraction agility


e.g. minication

machine

performance efcient use of resources weirdnesses

human

readability abstraction agility

optimizing compiler (<= awesome!)


machine

performance efcient use of resources weirdnesses

Googles Closure compiler is a true optimizing compiler providing powerful dead-code elimination.
@fogus + symbol replacement, expression rewriting, transformation
http://blog.fogus.me/2011/07/21/compiling-clojure-to-javascript-pt1/

BUT!?
Debugging?!? People should learn how to write good JavaScript instead!
(discuss)

JavaScript is assembly language for the web.

@fronx

more: http://cloud.github.com/downloads/clojure/clojurescript/clojurescript%20slides.pdf

Anda mungkin juga menyukai