~/talk

Scala.js Semantics - and how they support performance and JavaScript interop

Talkat Lambda World 2015 · on Saturday, 2015-10-24· [javascript]
slides:none on file

Scala.js defines precise runtime rules that make Scala values behave like JavaScript where needed and preserve Scala semantics elsewhere, with a three-mode safety model (full checks in dev, unchecked fast mode in prod). Integers use real 32-bit encoding (a |0 trick) so tight math is fast and boxing disappears, longs live in a userland library and stay slow, and a whole-program optimizer eliminates lambdas and allocations (foldLeft becomes a while loop), achieving near-handwritten JS speeds on Octane; Closure sometimes regresses.

AI-written summary · about

  1. 0:00Start
  2. 7:48Primitive Data Types
  3. 15:16Define Behaviors
  4. 20:19Javascript Interop
  5. 24:12Runtime Semantics
  6. 28:06Primitive Types
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.