introduction, overview, tr, ue, novel, programming, language, implementation, framework, developed, oracle, labs, collaboration, institute, system, software, johannes, kepler, university, linz, main, goals, making, implementing, easier, achieving, competitive, performance, compared, existing, tuned, runtimes, implementers, implement, interpreter, within, seeks, enable, generic, solutions, common, complex, examples, include, ability, debugger, support, ob, ject, storage, model, types, opened, possibility, cross, interoperability, provide, dynamically, updating, running, applications, developer, source, code, typically, restart, program, having, eect, popular, java, relying, external, tools, thesis, refer, toreloading, alsoknownasdynamiccodeevolutionordynamicsystem, update, seeing, immediately, dynamic, erlang, ruby, python, reloading, built, explicit, action, specic, method, achieve, desired, behavior, convenient, automatically, updated, whenever, detected, concentrate, getting, correct, iterate, faster, importance, cognitive, endeavor, strain, term, working, memory, shown, predict, however, suggests, eeting, research, signicant, decay, spans, require, keeping, details, programmers, constantly, bombarded, interruptions, productivity, survey, carried, actually, writing, spent, various, related, activities, debugging, compiling, deploying, communicating, etc, given, nature, general, overhead, associated, increasingly, coding, feedback, cycles, shorter, period, visible, decreases, increase, likelihood, being, complete, task, losing, state, aspect, known, availability, critical, bug, causing, downtime, managed, used, uptime, guaranteed, meeting, expectations, modules, evolve, forsuchapplications, aect, steady, nor, unexpected, compromise, stability, desire, reload, validated, plethora, dierent, platforms, jrebel, successful, enterprise, actively, thousands, web, custom, avoid, restarting, development, server, awebapplicationframeworkwritteninpython, theprovideddevelopment, request, written, mode, rails, changed, agroovy, basedwebapplicationframework, canbeconguredto, classes, view, les, www, djangoproject, com, rubyonrails, org, grails, degrees, binary, property, apply, normally, changing, bodies, via, hotswap, modications, possible, supported, loosely, categorized, function, level, signatures, arguments, visibility, adding, removing, organization, structure, elds, option, depends, highly, semantics, notions, listed, universally, applicable, knowledge, exhibit, grouping, callable, units, classied, natural, modify, ehavior, questions, isif, morespecically, eort, required, constructs, supporting, harder, contributions, sub, studied, decades, proposed, natively, focus, trying, produce, maximum, reuse, minimal, building, representing, shared, series, prototypes, neutral, initial, contributes, simple, approach, using, instrumentation, leverage, ols, unfortunately, fairly, limited, cannot, complicated, structuring, lose, absolute, generality, input, setups, default, virtual, graalvm, introduced, finally, improve, describe, needed, applied, agent, results, summed, supervisors, accepted, publication, compilation, optimization, oriented, workshop, giving, introductory, components, internals, techniques, explained, ecoop, relevant, chapter, reader, understand, coming, challenges, subsequent, familiar, compromising, discussions, rst, attempts, reference, called, obstacles, taken, consideration, learnings, followed, discusses, minimizing, applying, concrete, zippy, jrubytrue, graal, following, categories, interpretation, writeaninterpreterthatfollowstheinstructionsinsourcecode, corresponding, write, compiler, translates, execute, directly, hardware, generally, usually, inherent, bottlenecks, instructions, causes, unnecessary, executing, translation, compile, consists, whichever, strategy, chosen, predecessor, parsing, parse, abstract, syntax, translated, compiled, ordirectlyinterpreted, despite, route, overcome, shortcomings, wishing, create, situation, ensures, comparable, architecture, implemented, standard, overall, itreusesexistingruntimeservices, garbage, collection, optimizer, layer, represents, partial, evaluation, discussed, further, aguestlanguage, theguestlanguage, apis, entry, everyone, based, thetrufflelanguageclass, expected, extend, registrationannotation, declares, version, information, generate, metadata, pro, abstraction, polyglotengineclass, gateway, triggered, calling, thepolyglotengineevalmethod, locates, invokes, thetrufflelanguageparsemethod, transforms, executable, suitabletrufflelanguageimplementation, theregistrationannotation, atrufflelanguageis, global, context, etrufflelanguagecreatecontextmethod, variables, denitions, access, current, thecreatefindcontextnodeandfindcontextmethods, self, optimizing, itself, anexecutemethod, node, inherit, singlenodeclass, arootnodeclass, arootcalltargethas, obtained, nishing, resultingrootcalltargetis, stored, location, depending, namespace, class, rootcalltargetextends, thecalltargetinterface, denes, theobject, object, invoked, underlying, eachrootcalltargetcorresponds, meaning, execution, replacing, reacting, actual, values, addnodethat, aoperator, constraints, addition, operations, text, integers, oating, handling, single, optimal, necessary, checks, potential, boxing, theaddnodeis, executed, replaced, specialized, thenaddnodebecomes, anintegeraddnodeinstead, integeraddnodeonly, ignores, thus, cient, implicit, assumption, created, specialization, valid, invocation, ofintegeraddnodewhen, encounters, fails, amore, genericone, ossible, encountered, themore, genericnode, perform, indynamiclanguagestheperformedoperationcan, vary, greatly, operands, theaddnode, simpleoperator, concatenation, dispatch, forms, specied, double, statically, typed, overow, doing, benecial, performed, computations, polymorphic, inline, caches, pics, languageswithdynamicdispatchhave, target, costly, observed, seldom, site, thecalltargetis, divided, monomorphic, onlyonetarget, afewtargets, megamorphic, arbitrarily, caching, linking, cached, iterated, match, rewriting, easily, encompass, pcis, creating, chain, cache, added, predened, length, replaces, responsible, fully, dispatchchainsareageneralizationofpicsthatcanbeused, optimize, reective, essentially, classic, resolved, similar, modied, eliminated, inlining, rendered, useless, endless, loop, theadd, defadd, returnfirst, whiletrue, listing, particular, clone, functioncalltarget, subtree, inlined, cloned, uninitialized, specialize, according, naturally, environment, inlinedcalltargetmight, guard, thecalltargetfor, checked, invalidated, failure, thecalltarget, leaves, traversing, mentioned, claims, process, taking, computationwithmnva, cm, rn, cmintoresulting, acomputationwithnvariables, substituted, unknown, remaining, acalltargetand, resets, counter, event, replacement, stable, exceeds, threshold, assume, constant, therefore, considered, turned, direct, penalties, erformed, integrates, examined, bytecode, plugs, hotspot, newly, interfaces, ongoing, enhancement, proposal, standardize, future, interpreted, specialisations, occur, remains, patches, schedule, promised, removed, altogether, annotation, processing, pipeline, oers, domain, declarative, intent, optimisations, generating, express, nodeinfo, shortname, nodechildren, leftnode, rightnode, publicabstractclassaddnodeextendsexpressionnode, publicaddnode, super, src, rewriteon, arithmeticexception, protectedlongadd, longleft, longright, returnexactmath, addexact, protectedbiginteger, biginteger, returnleft, isstring, protectedstring, tostring, protectedbooleanisstring, returnainstanceofstringbinstanceofstring, hypothetical, processor, additional, entire, arbitrary, precision, startingfromthetop, rstaddmethod, javalongtyp, usingexactmath, addexactwhich, anarithmeticexceptionwhen, rewritten, usesbigintegerdata, achieved, thespecializationannotation, rewrite, exception, thrown, truetypesystemannotation, thetypesystemannotation, contains, ordered, precedes, guest, modeled, allows, casts, typenumberis, simulated, javalong, abiginteger, generallyusingalongis, performant, larger, usingbigintegers, guarded, variousguardsprovided, attributes, inorderforthespecializationtoholdthetypeoftheargumentsmust, parameters, theguardsattribute, set, returntruein, therewriteonattribute, trigger, re, theassumptionsattribute, expressions, becom, truffle, returnedassumptiontypes, instance, theassumptionclass, invoking, thetruffleruntimecreateassumptionfunction, described, assumptionsareessentiallyjustwrappedboolean, ags, anymore, ofinvalidatingall, generated, invalidating, deoptimization, switch, interpreting, faulty, regardless, whether, fo, executingtrufflelanguageshould, reused, whenparseis, later, stage, accessed, findcontextmethod, va, ve, existingassumptionmechanism, invalidate, previous, theoretically, byassumptions, cloning, therootcalltarget, prepared, accordingly, advantage, asts, due, newest, requirement, correctly, capabilities, evaluate, engineering, guideline, started, quest, investigating, outline, outlined, demonstrate, showcase, features, hints, arelativelysimpleprogramminglanguage, slisadynamicallystronglytypedlanguage, citizens, booleans, unicode, characters, null, returnab, sum, returnf, handful, library, asprintln, readlnand, nanotime, resemble, javascript, foo, println, definefunction, functiondynamic, redenition, interesting, indefinefunction, dynamicdoes, exist, dened, redened, subtract, detecting, inordertoreloadanythingtherststep, luckily, associates, sourcesectionwith, everyrootnode, asourcesectionis, simply, contiguous, section, everysourcesectionhas, asource, original, arootnodeis, asourcesectionattached, likely, correctsourcesectionstotheirrootnodeimplementations, investigated, abstractsourceclass, focuses, thefilesourceimplementation, thefilesourceone, obtain, underlyingjava, io, fileob, naively, checking, thelastmodifiedva, ejava, file, cial, evaluating, parsingshouldnotexecuteanyusercode, justcreatethetreeofnodes, lives, acalltargetone, calltargetsareinvokedontheirnewestversion, registry, allcalltargetsareregisteredwiththeirfunctionnames, ifthefunction, registered, existingslfunctionnode, newcalltarget, relies, oneoftherstchallengesiscomingup, currentsourcefor, inject, thetrue, apiwas, sp, ecically, designed, coverage, trackers, prolers, logical, instrumentable, gain, synthetic, wrapper, delegate, wrap, probing, makingtrufflelanguageisinstrumentable, returntrue, ifanodeis, marked, trufflelanguagecreatewrappernode, awrappernodeinterface, ofwrappernodefor, publicclassreloadingfunctioninvokeastproberimplementsastprober, override, publicvoidprobeast, rootnode, startnode, accept, newnodevisitor, publicbooleanvisit, nodeinstanceofslinvokenode, finalprobe, probe, ume, nte, tagas, standardsyntaxtag, visitallnodes, simplied, astprober, mentable, walking, acalltargetis, arootnode, anastproberto, anastproberis, createprobesforanynodesthatcouldbeofinteresttotooldevelopers, aprobeis, binding, listeners, receive, notications, tagged, asyntaxtagto, assignment, operate, interested, notied, statement, properly, exactly, requested, simpliedastproberthat, tag, customastproberwas, provided, receiving, populated, withprobes, attach, simpleinstrumentlistenerandstandardinstrumentlistener, wrapped, exceptionally, dierence, thesimpleinstrumentlisteneronly, currently, active, butstandardinstrumentlisteneradditionally, frame, callbacks, register, customastprober, thecallsyntax, ofsimpleinstrumentlisteneris, underlyingsourceas, thejava, accessible, limits, reection, reectively, filetime, stamp, otherwise, proceed, normal, clear, currenttrufflelanguageob, theparse, thuson, purpose, bypass, restrictions, carrying, similarly, cleared, thesource, parsed, reect, necessarily, correctastproberto, anastprober, alanguageimplementation, amount, anastproberthat, guarantee, placed, thecalltargetinvocation, thecalltargetcan, swapped, newer, abiggerproblemisthefactthatthankstothewayslwasbuiltwegotreloading, free, anything, contained, calltargets, pattern, regards, highlight, upcoming, insight, choice, looking, alternative, address, truereloader, injection, downside, inspired, formulated, proxy, identityand, replay, control, ow, correspondingcalltarget, therootnodeof, thatcalltarget, indirection, detect, scheduling, intermediate, metho, acalltargetthat, thecalltargetin, thetruffleruntimecreatecalltarget, expects, thecalltargetas, calltargetsareusually, phase, parser, nishes, acalltargetfor, injecting, proxycalltargetis, calltargetit, dummy, unlike, mo, difying, returnedcalltargets, proxycalltargetchecks, thesourceof, calltargethas, newcalltargetsarecreated, whicharealsowrapped, parallel, universes, containing, map, oldcalltargetto, counterpart, constructed, simplest, underlyingsourcesectionof, therootnode, thesourcesectionpoints, continuous, forrootnodes, declaration, trufereloader, newcalltargetby, redirect, knowncalltarget, everycalltarget, recreated, matching, ajava, lang, ref, weakreferenceto, wrappedcalltargetis, mapping, tion, removes, reclaimed, basic, proxycalltargetdetects, proxycalltargets, determines, redirected, potentially, stated, viable, existence, scopes, rename, functionality, addressed, identity, named, organize, chunks, helping, navigate, higher, calculating, trigonometry, modeling, human, social, impossible, calledsin, therstcalculatesthesinusfunctionandtheotherthatmakesaperson, commit, deed, distinguishing, redirecting, imp, ose, rightly, range, boils, understanding, thecontextof, uniquely, identify, acalltargetso, matched, forany, burden, acalltargetfrom, identitysimply, unique, theidentityhastobegloballyunique, mixed, yield, qualied, acorrectidentitywillensurethattruereloaderdoesnotmixmethodsthathavethe, safely, trigonometrysinimplementation, worrying, transgression, solved, involves, renaming, useful, refactor, smaller, concise, reason, dependent, renamed, successfully, nd, lookup, searching, moving, hierarchy, broader, returned, ulation, inserting, reloadedcalltargetthat, appropriate, illustration, dpartial, partially, replaying, des, image, drawn, executemethod, oxes, illustrate, couple, proxycalltargethas, colored, newcalltargetfrom, oint, thereplay, barrier, itstopstheexecutionandreturnscontrol, throwing, assuming, repopulated, stopping, publicinterfacelanguagereloader, string, mimetype, supplier, calltargetidentity, getidentityfor, rootcalltarget, replaycontroller, getreplaycontroller, defaultpredicate, acceptcodepath, bothcalltarget, identityandpartial, replayrequire, service, provider, methodgetdescriptorforhas, uniquecalltargetidentityfor, agivenrootcalltarget, calltargetidentityis, twojava, stringelds, getdescriptorfor, asupplierto, communicate, thatcalltargetidentitysareretrieved, really, nished, determining, acalltargetafter, initialize, thesuppliersofcalltargetidentitysarestoredwhennew, calltargetsarecreatedduring, butatthattimeitmightnotyetbepossible, missing, allrootcalltargetscanbe, identied, entirereplaycontrollerinterface, additionally, thebeforestartmethod, publicinterfacereplaycontroller, textendsexecutioncontext, defaultvoidbeforestart, currentargs, defaultvoidafterstop, booleanshouldstopat, executablecalltarget, preparations, theafterstopmethod, stopped, forwarding, migration, transfer, items, declared, basedsource, butoften, desirable, exclude, canonical, theacceptcodepathis, optional, nding, initiating, thelanguagereloader, utility, util, serviceloader, whichwasdesignedforjustsuchusecases, tondandload, conguration, themeta, servicesdirectory, separated, poolik, spi, languagereloader, startup, serviceloaderloadmethod, correctlanguagereloaderfor, typ, themimetypemethod, yserviceloaders, mechanism, available, trufe, calltargetmakes, efore, suitable, identityhelps, forwards, andpartial, replaytries, pushed, requiring, basis, describ, ed, minimum, topic, backed, diers, substantially, account, remained, reworked, overcoming, technical, thorough, reworking, hooks, initially, injected, caller, callee, everycalltargetcreated, createdcalltarget, eectively, thecalltargetcontract, skipping, anticipated, closer, relationship, integration, hopefully, reduce, incompatibilities, intercept, boundary, aware, createdcalltargetso, inserted, thecalltargetto, weak, indirect, proxied, previously, asinglemethodcallfromthecalltargetinterface, ideally, introduce, peak, leveraging, theassumptionsusedinnoderewriting, minimize, invo, cation, underlyingsourcehas, latest, otherwiseproceed, thesourcehas, odically, monitors, background, thread, thesourcefilenotchangedassumption, deoptimize, revert, decision, starting, risk, incremental, produced, violate, thetrufflelanguage, whichremainsthesameafterparsing, stillhas, allcalltargets, concerns, multi, imported, importing, languagereloaderscanusethebeforestartandafterstoplife, thereplaycontrollerto, imports, aspecialroleforthesourcelewhereevaluationstarts, implementationsmightimplicitly, amainmodule, calltargetstable, thelenamecouldbeusedasprextotheidentity, multiple, concurrency, primitives, prefer, obvious, consequence, complicates, local, errors, initiated, givensource, separate, ashapedenes, andobject, storagethat, per, data, heap, slots, acommonproblemlanguagereloadershavetosolveforlanguagesusingtheosmis, reecting, extension, date, modies, recall, languagereloaderscanusethelifecyclemethodsofthereplayrecorder, recursively, iterating, species, loaded, manifest, thepremainmethod, handing, aninstrumentationapi, theinstrumentationinterface, instrument, extensively, enhance, truereloaderleveragestheinstrumentationapi, insert, user, specify, javaagent, reloader, generation, byte, buddy, creation, registration, transformers, modifying, manual, publicinterfacepatcher, classname, agentbuilder, patcher, someone, author, tweak, zeroturnaround, xrebel, eclipse, aspectj, experimental, discoverable, sameserviceloadermechanism, transformerfor, devil, leeway, benchmarking, analyze, covered, testing, harness, validate, gaze, soundness, scenarios, investigation, writtenlargelybyweizhangaspart, phd, writtenlargely, chris, seaton, ecmascript, compliant, engine, languagetoshowcasethetrueframework, introducedin, ka, enabled, opted, tests, prove, tested, bitbucket, ssllab, github, jruby, technetwork, downloads, index, html, ta, te, ie, caseslzippyjrubytruegraal, functionyyyy, functionsyyyy, consecutive, reloadsyyyy, denitionn, ayyy, namen, classn, static, methodn, dependency, ayyn, somultipleletestscannotberun, folders, namedversionn, wherenstands, theputskeyword, javasystem, output, stream, defaulted, native, controlled, afiletypedetectorto, thepolyglotengineabstraction, thepythonlanguageparse, duplicate, theparsemethod, inparse, token, copies, directory, triggering, simulates, edits, saving, verify, validating, loopntimes, iteration, study, sample, ing, management, navigable, screen, sinatra_todo, improvements, forked, fixing, descriptions, caused, array, resulted, themselves, corrupts, git, lib, todo, rb, tmp, filedata, dito, hiding, priority, menu, links, anewtaskanddynamicallygeneratedlinksforallofthedenedpriorities, donetasks, thexpriority, distinguish, refactored, duplication, def, completeproirityregex, isdone, defself, uniq, sort, selectpriority, marking, template, handler, defdone, rawline, chomp, sinatratodo, defdonelink, aclasssmallhref, linenumber, markasdone, linedo, todotodo, params[, line], erb, tlink, donelink, li, ects, benchmarks, measure, measuringpeak, temporal, otherwisealsoknownassteady, stabilize, combination, computer, stressing, ofassumptionstruereloaderhasaverylowoverheadonthesteady, whereas, non, deterministic, chart, matrix, multiplication, mandelbrot, axis, numb, er, plotted, mid, thematrix, multiplyand, mandelbrotbenchmarks, reloaded, conclusions, guring, weve, adapted, renements, ended, reusable, core, plugging, negligible, alanguage, withbuiltinreloadingsupport, thatperformsonparwiththetrue, languagereloadersandlanguageimplementationsarenottightlycoupled, showed, theassumptionmechanism, zero, incurs, impact, production, culties, lie, areas, integrated, belief, portable, geared, hope, widely, mature, widespread, adoption, revise, design, expand, watcher, polling, slightly, risky, incorrectness, negative, speed, correctness, regained, experimentalpatcherapi, radical, transformation, exposes, tightly, transforming, choose, technologies, tackle, unforeseen, enthusiasm, eagerness