SPLASH 2023
Sun 22 - Fri 27 October 2023 Cascais, Portugal
Tue 24 Oct 2023 09:30 - 10:00 at Room XV - Looking Outward Chair(s): Stefan Marr

The directness and immediacy of dynamic languages underlie their enduring promise: as tools for modelling and interacting with the world, as means of building simple yet resilient systems, as tools for human thought, and as a medium that can unlock computers’ potential to work for human beings (rather than vice-versa).

Currently, however, dynamic languages are ‘popular’ only in the form of thin layers `trapped’ within much larger and and complex commodity software stacks, much of whose state is beyond the reach of those liberatingly direct modes of expression. A web application may use JavaScript but most of its state is not addressable as a JavaScript objects; a game may embed Lua but Lua code only reaches what is explicitly gatewayed into it; and so on.

I’ll review some open challenges in the implementation of dynamic languages which I believe must be solved if we are to fulfil the promise of dynamic languages as modes of expression widely available to human beings at large.

These include “unbundling” garbage collection (where dynamic resource management is not confined to the space managed by a single language runtime); federated approaches of object representation (where in extremis an implementation need have no ‘native’ object representation at all); enabling interaction with system objects symmetrically with in-memory objects; reclaiming the visual and direct-manipulation paradigms of interaction alongside the textual; and protocols for safely combining dynamic code with more “static” code that relies on ahead-of-time reasoning to enforce its invariants (e.g. Rust borrow checking, to pick a hard example!).

Tue 24 Oct

Displayed time zone: Lisbon change