Code Mesh LDN 2019
2019-11-07..2019-11-08
London, United Kingdom
[Code Mesh LDN 2018, Code Mesh LDN 2019, Code Mesh LDN 2020]
who it's for
functional programmers, BEAM developers, programming language designers, formal methods engineers, platform engineers, DevOps engineers, AI/ML practitioners, computing educators
topics
Gleam ML-style typed language; Lumen bringing BEAM to WebAssembly; Lucet safe WebAssembly runtime; container toolchain: Buildah Skopeo Podman CRI-O; Isabelle/HOL consensus proofs; graded modal types in Granule; Haskell pattern match overlap checks; test-case reduction and shrinking; Constraint Handling Rules for policy checks; Purescript and Typed OTP on the BEAM; Marlowe financial contracts on blockchain; Terraform operational lessons
| title | author | length |
|---|---|---|
| TBD: Be Inquisitive, Share and Inspire | Sam Aaron, Jeremy Ruston, Robert Virding | 35m |
A working prototype links a TiddlyWiki instance to Sonic Pi so wiki tiddlers contain Sonic Pi code snippets and interact live via OSC over UDP; Ruby runs Sonic… | ||
| Revolution in computing education at school: opportunity & challenge | Simon Peyton Jones | 55m |
England mandates a two‑page computing curriculum that teaches fundamental CS from age 6, backed by a £100 million National Centre delivering training, a… | ||
| AI for Social Responsibility: Embedding (...) into AI | Veronica Dahl | 01h 00m |
Argues that Constraint Handling Rules let developers encode ethical checks as executable rules and gives concrete examples: a CHR pipeline that extracts… | ||
| Decomposing container tools: Swiss Army Knives & containers | Valentin Rothberg | 45m |
Four focused tools replace one monolith: Buildah builds images (supports Dockerfiles, a “bud” shortcut and CPP includes), Skopeo copies and inspects images… | ||
| Correctness proofs of distributed systems with Isabelle | Martin Kleppmann | 45m |
Introduces a concrete Isabelle/HOL model of a simple consensus protocol (one acceptor, many proposers), implements proposer and acceptor step functions and a… | ||
| Literary Theory looks at Readable Code | Alvaro Videla | 44m |
Argues that code is human communication and borrows specific literary tools—model reader concept and paratext helps—to make intent explicit; demonstrates with… | ||
| Breaking black-box AI | Evelina Gabasova | 35m |
Live demos use scikit-learn, TensorFlow and Azure Cognitive Services to show concrete failures: a single outlier turns a random dataset into a model with R² ≈… | ||
| A landscape of unintended consequences | Sarah Allen | 39m |
History of Shockwave/Flash teaches concrete failures: Flash reaches 90% of browsers in 1.5 years, accrues 1,172 CVEs (2001–2009) mostly memory‑safety bugs, and… | ||
| Let's get more women into computer science | Mary Sheeran | 53m |
University launches Genie initiative with 300 million kronor to raise female faculty to 40% in ten years, targeting a pipeline that had just 7% female entrants… | ||
| How to specify it! A guide to writing properties of pure functions | John Hughes | 44m |
Five concrete strategies for pure functions: test invariants on generated trees, write postconditions for each operation, use metamorphic testing (change… | ||
| Gleam: Lean BEAM typing machine | Louis Pilfold | 41m |
Gleam is a new statically typed language that compiles to the Erlang VM, interoperates with Erlang/Elixir packages via a simple FFI, and is implemented in… | ||
| Concurrency before Erlang | Bjarne Däcker | 43m |
Traces Ericsson’s pre‑Erlang work: experiments with Modula, Chill, Ada, AP‑163 and AREA Pascal, rapid prototypes built in Prolog and Lisp, and a VAX + Unix… | ||
| Quantitative program reasoning in Granule via graded modal types | Dominic Orchard | 49m |
Granule implements a functional language combining linear, indexed and graded modal types with a working REPL and typechecker that uses an automated theorem… | ||
| Marlowe: financial contracts on Blockchain | Simon Thompson | 45m |
A small embedded Marlowe DSL in Haskell defines an executable small‑step semantics that runs as a single Plutus contract on a UTxO Cardano testbed; it includes… | ||
| Bourdieu's social theory applied to tech | Romeu Moura | 45m |
Applies Bourdieu to tech workplaces and claims that symbolic violence makes people submit to a constructed icon of power, that cultural capital accumulates… | ||
| Lumen - Bringing the BEAM to WebAssembly and Beyond | Paul Schoenfelder | 44m |
A new ahead-of-time compiler and runtime to run Erlang/Elixir on WebAssembly and x86_64 produces native objects via Rust + LLVM + wasm-bindgen, removes hot… | ||
| Misadventures with Terraform | Matthew Revell | 35m |
Started with Terraform v0.6 and hits include missing backend locking and import features, S3 statefiles that get big and slow, and a nasty cyclic dependency… | ||
| The art of challenging assumptions | Maxim Fedorov | 47m |
WhatsApp runs 16,000 Erlang nodes and expands a distribution cluster to 3,000+ machines to test limits, finding CPU/network barely change but service publish… | ||
| Abstract data types in region of abysmal pain & how to navigate them | Zainab Ali | 44m |
Defines a typesafe ADT for directed acyclic graphs implemented in Idris, mirroring an inductive mathematical definition (empty | add vertex with parents). Uses… | ||
| Revisiting pattern match overlap checks in Haskell | Simon Peyton Jones | 44m |
GHC pattern-match coverage and overlap checks get refactored by desugaring complex patterns into a linear sequence of simple guards and building a fact base… | ||
| Data Pipelines à la Mode | Tom Hall | 43m |
Describes building reproducible, incremental data pipelines by treating each step as a pure function that depends only on input snapshots; mutable sources are… | ||
| Purescript on the BEAM; Typed OTP for greatness | Rob Ashton | 47m |
Company codebase hits >250k lines so they adopt Purescript frontends (Halogen) and compile to BEAM with the Purerl compiler, hire its author, and ship two… | ||
| What You Needa Know About Yoneda | Jeremy Gibbons | 41m |
Explains the Yoneda lemma concretely and shows how two ubiquitous Haskell encodings are isomorphic: getter/setter pairs ↔ profunctor representations. Uses… | ||
| In defence of uncertainty | Abeba Birhane | 43m |
Argues that chasing absolute certainty in social systems produces harm by embedding historical bias into models that are then deployed: examples include COMPAS… | ||
| What is a computer program? Historical & philosophical reflections | Liesbeth De Mol | 43m |
Argues that “computer program” resists a single definition by tracing concrete historical cases: ENIAC rewired into a stored‑program machine and used wiring… | ||
| want don't You consistency no stinking | Greg Young | 40m |
Argues for event‑sourced systems that drop strict global consistency to guarantee availability, using git‑like replication and per‑stream versioning to detect… | ||
| Visualising concurrency with Kotlin | Alexey Soshin | 33m |
Shows how Kotlin coroutines actually work: the compiler breaks calls at the suspend keyword into continuations, enabling millions of lightweight tasks instead… | ||
| Can you make that smaller? An introduction to test-case reduction | David R. MacIver | 41m |
Shows how to turn a large failing input (often kilobytes) into a minimal reproducer using off‑the‑shelf reducers and small scripts: run C-Reduce or ShrinkRay… | ||
| Do fish have legs: Language design for the commercial coder | Yilin Wei | 29m |
Builds a small DSL in Scala for backend search queries, implements an AST, a runtime evaluator and a static typechecker that rejects impossible queries like… | ||
| Your Brain on Software Development | Fahran Wallace | 52m |
A claim: cognitive biases drive many bad engineering outcomes — teams pick the first database they know, chase easy high‑value work, then discover integration… | ||
| Capability Driven Requirements Engineering | Natalia Chechina | 26m |
Capability-driven requirements engineering presents a systematic, traceable method that starts from capability model and derives goal model, then builds actor… | ||
| Write your own container, for fun and no profit! | Gargi Sharma | 24m |
Shows how to build a minimal container in Rust by combining chroot with Linux namespaces and cgroups, using the clone/unshare/setns syscalls to create new PID… | ||
| Lucet: Safe WebAssembly Outside the Browser | Tyler McMullen | 37m |
Lucet is an AOT compiler and runtime for running WebAssembly outside the browser, producing an ELF artifact that embeds a memory‑layout contract and uses the… | ||
| Code Mesh LDN 2019 Highlights | Simon Peyton Jones, Veronica Doll | 04m |
Keynotes argue that schools must teach computer science at an early age and that coding can help address social problems, while a session frames AI as… | ||
| nothing matches | ||