HackerTube.dev

JVMLS 2015 - Compilers are Databases

Java · 16.3K views · 2015-08-11 · 1:08:52

Open on YouTube ↗

If playback is restricted in your region, try opening the original video. Use Mark watched to add it to your marked videos.

Overview

Martin Odersky's JVM Language Summit 2015 talk argues that compilers can be thought of as databases. It describes design ideas for the Scala compiler and for developer tools.

On Hacker News

Cited as the origin of the compilers-as-databases idea in discussions of IDEs and incremental tooling.

Discussed on HN; no positive recommendation is recorded in this export · HN mentions 2016–2022

Topics

Search by tags

What people said

it4rb · 2022-10 · Reference

Martin Odersky (lead designer of Scala) also pursued this approach some years ago, not sure if any of this actually went into Scala3. He mentioned this in many talks before, such as [VIDEO] (JVMLS 2015 - Compilers are Databases)

Read the original HN comment ↗
brzozowski · 2021-03 · Reference

The author frames this as a contest between two architectures: either spend a lot of effort building custom developer tools, or repurpose the compiler as a server for multiple clients. Both approaches have their tradeoffs: the first, as the author mentions, violates DRY [1]. The second violates the Unix philosophy [2]. However, there is a third way . Both developer tools and compilers can be seen as special cases of a much simpler and more general pattern known as a graph database [3, 4, 5]. [1]: [LINK] [2]: [LINK] [3]: [VIDEO] [4]: [LINK] [5]: [LINK]

Read the original HN comment ↗
jasim · 2017-07 · Reference

Depth. Every programmer I admire has worked on their chosen field for years. You can keep flitting between languages and frameworks, but mastery ultimately comes from hankering down on one thing and advancing our collective knowledge a bit further. You can achieve mastery in any field - it can be a business domain - as mundane as a Time Tracking or a Todo list app, or it can be a technical domain - like compilers or databases or browsers. You however can't achieve mastery by consuming what others produce. Becoming an expert in CSS and its quirks is a good vocational investment, but you're no closer to a fundamental understanding of the field by just consuming an API. You should spend years working on a problem domain that interests you. Look at prettydiff ( [LINK] ). It is a diff tool, a parser, a pretty printer, a minifier, all rolled into one. It is the most comprehensive publicly available tool in terms of language and dialect support in the world right now. Its code is not the most modular and new contributors might have trouble getting in, but its author has been at this problem for years, and if you called a conference for pretty-printing, he would be one among the few thousand people in the world to meaningfully participate. Consider blueimp's jQuery File Upload plugin ( [LINK] ). While this isn't as foundational a work as prettydiff, the project spans seven years and a thousand commits. It solves a mundane problem, but the sheer effort that has went into it makes it a

Read the original HN comment ↗

Sources

Video by Java, played through YouTube.

Data and selection notes

HN summaries and labels may contain AI errors. HN dates refer to discussions, not video publication.

HN Library: HackerTube export (2026-10-31) and open-index/hacker-news. Upstream summaries and classifications may contain AI errors.

Views, duration and playback status refresh separately from the published catalog. When an update fails, existing data remains visible.

Selection checks
  • SaaS & AI candidates: Topic keywords do not match
  • Editor-approved picks: Editorial review is required

Rule matches identify candidates. They do not guarantee video quality or financial results.

About the library and its sources