javascript: your new overlord

Post on 19-May-2015

482 Views

Category:

Technology

2 Downloads

Preview:

Click to see full reader

DESCRIPTION

First misunderstanding, then huge semipopularity, and now, respect. Despite its many obvious deficiencies, Java's stupid little brother has gotten something profoundly right. What does the future hold for this duckling?

TRANSCRIPT

JavaScript: Your New Overlord

JSON: The World’s Best Loved Data Interchange Format

JavaScript:The World’s Most Misunderstood

Programming Language

Java’s stupid little brother

The World’s Most Popular Programming Language

The World’s Most Popular Programming Language

The World’s Most Unpopular Programming Language

It is the language that people use without bothering to learn it first.

Programming is complicated business. It should never be

undertaken in ignorance.

Java Applets

The biggest failure in the history of software1995

Java Applets

The biggest failure in the history of software

Ten Days in May

Mocha

Scheme SelfJava

LiveScript

Scheme SelfJava

LiveScriptJavaScript

Scheme SelfJava

LiveScriptJavaScript

JScript

Scheme SelfJava

LiveScriptJavaScript

JScript ECMAScript

“Another software technology will come along and kill off the web,

just as it killed news, gopher, et al. And that judgment day will arrive

very soon – in the next two to three years, not 25 years from now.”

George F. ColonyChairman of the Board and CEOForrester Research, Inc. [2000]

http://web.archive.org/web/20001019084041/http://www.forrester.com/ER/Mark eting/1,1503,214,FF.html

JavaScript was a failed language.

It should have died when Netscape died.

JavaScript has Good Parts.

Statically scoped first class functions with lexical closure

var Y = function (le) { return (function (f) { return f(f); }(function (f) { return le(function (x) { return f(f)(x); }); })); };

Prototypal Inheritance

An object containing

public methods

An object containing

instance data

Beginners, scientists,and everybody in between

How IE8 Spends Its Time

• Average time allocation of the Alexa 100:

Layout 43.16% Rendering 27.25%

HTM

L 2.

81%

Mar

shal

ling

7.34

%

DO

M 5.

05%

Form

at 8.

66%

JScr

ipt 3

.23%

Oth

er 2

.5%

High Performance JavaScript Engines

Everywhere

• Browser• Operating Systems• Databases• Servers• Mobile• Televisions

High Performance Data Structures

Securing JavaScriptCaja http://code.google.com/p/google-caja/ADsafe http://www.ADsafe.org/DR Ses es-lab.googlecode.com/files/dr-ses.pdf

JavaScript: The Universal Virtual Machine

GWT

Java JavaScriptso it can run everywhere

 

spidermonkey.cpp |=> clang |=> emscripten |=> closure |=> js.js

New Languages

• CoffeeScript• Kaffeine• Move• Objective-J• Sibilant• ZedScript• and over a hundred more

Old Languages• C++• C#• Forth• Haskell• Java• Lua• Ocaml• Pascal

• Perl• Python• Rebol• Ruby• Scala• Scheme• Smalltalk• Tcl

A better compilation target.

goto

JavaScript:

The World’s Most Important Programming Language

Thank you and good night.

top related