Compiling Java Bytecode to JavaScript - An Interesting Problem
Offered By: JSConf via YouTube
Course Description
Overview
Syllabus
Intro
JOA EBERT JVM/IS
aot vs jit
different optimizations
OPTIMISTIC ASSUMPTIONS
DEOPTIMIZATIONS
CLASSLOADER SUPPORT
workers RUN COSTLY OPTIMIZATIONS IN BACKGROUND
browser concentrates on user code
java is statically typed
we have a tracing compiler
scales across platforms
LABELED BLOCKS CONSIDERED EVIL!!11!
#SEMANTICS
impl jvm semantics for js
don't add too much overhead
class initializer
instance initialization
numerics
SIMPLIFY SIMPLIFY SIMPLIFY
10fps difference in v8
prototype voodoo
undefined === null //?
5x in firefox for richards benchmark
MORAL OF THE STORY?
should mimic
cleanup and simplify
take shortcuts
ABuse what's available
test and measure
MEASURE!
#OPTIMIZER
which one to use?
blink, servo, firefox ...
spec bugs & inconsistencies
always check for types
#DISPLAYLIST
optimize based on heuristic
cache vertices and culling information
COMANCHE
HEISENBERG
Taught by
JSConf
Related Courses
Programming LanguagesUniversity of Virginia via Udacity Building a Basic Website
University of Massachusetts Amherst via Independent iDESWEB, Introducción al desarrollo web
MirÃadax Web Engineering II: Developing Mobile HTML5 Apps
Technische Hochschule Mittelhessen via iversity Web Application Architectures
University of New Mexico via Coursera