InfoQ Homepage JVM Language Summit Content on InfoQ
-
Exploring Dynamism
Allison Randal discusses what dynamic means, the static/dynamic spectrum, dynamic typing, dynamic dispatch, introspection, dynamic compilation and loading, and differences between static and dynamic.
-
A Crash Course in Modern Hardware
Cliff Click discusses the Von Neumann architecture, CISC vs RISC, Instruction-Level Parallelism, pipelining, out-of-order dispatch, cache misses, memory performance, and tips to improve performance.
-
Statically Dynamic Typing
Neal Gafter explains why Microsoft has introduced dynamic typing in C# 4.0, what it is useful for, what is DLR, and why they have chosen the dynamic type instead of other possible solutions.
-
JRuby, Duby, and Surinx: Building a Better Ruby
Charles Nutter discusses JRuby, invokedynamic, JRuby performance, Duby, Duby syntax, future Duby plans, Surinx, the motivation for making Duby and Surinx, and how Duby and Surinx are helping JRuby.
-
Scala Basics - Byte-code Fancypants
David Pollak makes an introduction to Scala showing how basic language constructs like boxing, generics, structural types, tail calls, and others, are used and how they are translated into byte code.
-
Are We There Yet?
Rich Hickey advocates the reexamination of basic principles used today like state, identity, value, time, to create new constructs to deal with the massive parallelism and concurrency of the future.
-
Language Parity: Closures and the JVM
Neal Gafter discusses closures on the JVM, running other languages on the JVM, language-specific wrapper libraries, making the JVM more language-friendly, and whether lambda expressions are too hard.
-
Project Fortress: Run your whiteboard, in parallel, on the JVM
David Chase discusses Fortress, a Fortran-based HPC programming language. Topics include Fortress origins, running on the JVM, work stealing, transactions, continuations and the type system
-
JRuby: The Pain of Bringing an Off-Platform Dynamic Language to the JVM
Charles Nutter discusses bringing JRuby to the JVM, why Ruby is hard to implement, JIT compilation, precompilation, core Ruby implementation, Java library access, library challenges and future plans.
-
VM Optimizations for Language Designers
John Pampuch discusses the HotSpot compiler, the history of Java performance, HotSpot development philosophies and challenges, optimization, JVM library improvements, and tips for better performance.
-
Fast Bytecodes for Funny Languages
Cliff Click discusses how to optimize generated bytecode for running on the JVM. Click analyzes and reports on several JVM languages and shows several places where they could increase performance.
-
Clojure
Rich Hickey discusses Clojure features and syntax, example code, functional programming, concurrency semantics, transactions, software transactional memory, agents, implementation and pain points.