parsing
43:00Tree-sitter: a new parsing system for programming tools - GitHub Universe 2017
24K views • 8 years ago
GitHub
Max Brunsfeld of GitHub presents Tree-sitter, a parsing system for programming tools that supports incremental, error-tolerant parsing. He demos its integration into GitHub.com and Atom for syntax highlighting and code navigation.
1:13:10Parsing with Derivatives
13K views • 15 years ago
Stanford
A Stanford talk by Matthew Might on parsing with derivatives, a new way to write parsers, and why better parsing tools are needed. It discusses language theory and criticizes ad-hoc hand-written parsers.
38:38"Tree-sitter - a new parsing system for programming tools" by Max Brunsfeld
63K views • 8 years ago
Strange Loop Conference
Max Brunsfeld introduces Tree-sitter, a parsing system for developer tools that offers incremental parsing and robust error recovery through a uniform C API. The talk explains the design, based on LR extended to GLR parsing.
47:52Parsing JSON Really Quickly: Lessons Learned
86K views • 6 years ago
InfoQ
Daniel Lemire's QCon talk on how simdjson parses gigabytes of JSON per second. It covers SIMD vectorization, branch prediction and the lessons learned building a fast parser.
1:10:16Saša Jurić - Parsing from first principles - WebCamp Zagreb 2019
6K views • 6 years ago
WebCamp Zagreb
Sasa Juric explains how to parse a language from first principles without regexes, live-coding a simple parser combinator library in Elixir. It was given at WebCamp Zagreb 2019.
51:18Lexical Scanning in Go - Rob Pike
162K views • 15 years ago
GoogleFOSSSydney
Rob Pike shows how the Go text/template lexer is built, using state functions, goroutines and channels. The talk was given at a Google Technology User Group in Sydney in 2011.
Topic match · Compilers, interpreters & program analysis
1:35:12Modernizing Compiler Design for Carbon Toolchain - Chandler Carruth - CppNow 2023
71K views • 3 years ago
CppNow
Chandler Carruth's CppNow 2023 talk on modernizing compiler design for the Carbon toolchain, using data-oriented design and modern hardware assumptions. It covers lexing, parsing and compact data structures aimed at compiler performance.
Topic match · Compilers, interpreters & program analysis
1:38:36Episode 1: A basic expression evaluator
284K views • 8 years ago
Immo Landwerth (terrajobst)
The first episode of a long live-coding series in which Immo Landwerth builds the Minsk compiler for a small language in C#. It starts with a basic expression evaluator and builds toward a full language.
Topic match · Compilers, interpreters & program analysis
1:14:32Building Your Own Dynamic Language
21K views • 18 years ago
Stanford
Ian Piumarta's 2007 Stanford EE380 lecture on building a dynamic programming environment from the ground up, from the Viewpoints Research Institute's work. It covers the design of a language and system with a recursive design, parsing through code generation, and the COLA architecture.
Topic match · Compilers, interpreters & program analysis
34:10Anders Hejlsberg on Modern Compiler Construction
25K views • 9 years ago
Kasper
Anders Hejlsberg whiteboards how compilers are taught versus how modern ones are actually built. He explains the shift to compilers as services with incremental, error-tolerant, IDE-oriented design, as in Roslyn and TypeScript.
Topic match · Compilers, interpreters & program analysis
54:48CppCon 2018: Hana Dusíková “Compile Time Regular Expressions”
14K views • 8 years ago
CppCon
Hana Dusikova's CppCon 2018 talk presenting a C++ library that builds regular expressions from compile-time strings, using a C++20 feature. It avoids runtime parsing cost and covers implementation details, problems she hit, and benchmarks.
Topic match · Compilers, interpreters & program analysis
39:42Ricardo Signes - 闇のEメール伝説
8K views • 15 years ago
yapcasia
Ricardo Signes' YAPC::Asia Tokyo 2011 talk on the legends and horrors of email: how messy the SMTP and email standards are in practice. The first few minutes are Perl-specific, but the rest applies to anyone handling email.
36:45Rich Harris - Rethinking reactivity
334K views • 7 years ago
You Gotta Love Frontend
Svelte creator Rich Harris explains moving reactivity into the compiler and language rather than tracking state at runtime, with a history of spreadsheets as reactive systems and comparisons to React.
Topic match · Compilers, interpreters & program analysis
1:31:06William Byrd on "The Most Beautiful Program Ever Written" [PWL NYC]
367K views • 9 years ago
PapersWeLove
William Byrd presents at Papers We Love NYC on what he calls the most beautiful program ever written, a Lisp interpreter written in Lisp. He walks through the metacircular interpreter and related ideas, and demos relational programming and program synthesis near the end.
Topic match · Compilers, interpreters & program analysis
1:19:52CppCon 2016: Jason Turner “Rich Code for Tiny Computers: A Simple Commodore 64 Game in C++17”
264K views • 10 years ago
CppCon
Jason Turner's CppCon 2016 talk builds a simple Commodore 64 game using C++17, showing how constexpr and const let a modern compiler produce tight 6502 code. He walks through assembly output to show abstractions being optimized away.
Topic match · Compilers, interpreters & program analysis
57:38Clasp: Common Lisp using LLVM and C++ for Molecular Metaprogramming
52K views • 11 years ago
Google TechTalks
Christian Schafmeister's Google Tech Talk on designing spiroligomer molecules and building Clasp, a Common Lisp on LLVM that interoperates with C++, to program molecular design. It covers the chemistry, automatic differentiation for force fields, and how the compiler is built.
Topic match · Compilers, interpreters & program analysis
25:41Compiling C to printable x86, to make an executable research paper
479K views • 9 years ago
suckerpinch
Tom7 explains how he built a SIGBOVIK 2017 paper made only of printable ASCII bytes that is also a valid DOS executable. He writes a C compiler targeting printable x86 without self-modifying code and solves the puzzles the constraint creates.
Topic match · Compilers, interpreters & program analysis
46:19Break Me00 The MoVfuscator Turning mov into a soul crushing RE nightmare Christopher Domas
81K views • 11 years ago
Adrian Crenshaw
Christopher Domas's Derbycon 2015 talk on the M/o/Vfuscator, a compiler that emits only x86 mov instructions, showing mov is Turing complete. It explains how a full machine is built from mov and why the output is a nightmare to reverse engineer.
Topic match · Compilers, interpreters & program analysis
1:01:45A Talk Near the Future of Python (a.k.a., Dave live-codes a WebAssembly Interpreter)
26K views • 7 years ago
David Beazley
David Beazley's PyCon India closing keynote, in which he live-codes a stack machine and grows it into an interpreter that runs WebAssembly, then uses it to play a Rust-written game. It requires no prior WebAssembly knowledge.
Topic match · Compilers, interpreters & program analysis
54:53Miguel de Icaza: Swift Godot: Fixing the Multi-million dollar mistake #GodotCon2023
27K views • 3 years ago
Godot Engine
Miguel de Icaza's GodotCon 2023 talk on Swift bindings for Godot. He argues that garbage-collector pauses in C# are a persistent problem and that Swift's reference counting avoids them.
Topic match · Compilers, interpreters & program analysis
1:15:46CppCon 2017: Matt Godbolt “What Has My Compiler Done for Me Lately? Unbolting the Compiler's Lid”
178K views • 9 years ago
CppCon
Matt Godbolt's CppCon 2017 talk shows what modern compilers do with your C++ code, using Compiler Explorer to inspect generated assembly. It covers surprising optimizations and how the tool works.
Topic match · Compilers, interpreters & program analysis
2:03:12Co-dfns Live Stream: Compiler Design and Architecture
21K views • 9 years ago
Aaron Hsu (arcfide)
A two-hour live stream in which Aaron Hsu explains the architecture, design history and aesthetic of Co-dfns, his parallel APL compiler. He walks through the code and the reasoning behind its dense style.
Topic match · Compilers, interpreters & program analysis
1:56:07Eric Bier Demonstrates Cedar
8K views • 7 years ago
Computer History Museum
Eric Bier, a PARC research scientist, demonstrates the Cedar integrated programming environment and language, an evolution of Mesa from Xerox PARC. The demo shows the Tioga editor, garbage collection, and a full graphical workstation environment.
Topic match · Compilers, interpreters & program analysis
34:55"Outperforming Imperative with Pure Functional Languages" by Richard Feldman
98K views • 5 years ago
Strange Loop Conference
Richard Feldman explains how pure functional languages can match or beat imperative ones on performance. Compilers can turn immutable code into in-place mutation, avoiding naive copying. The talk draws on his work on the Roc language.
Topic match · Compilers, interpreters & program analysis
1:12:02Java on a 1000 Cores - Tales of Hardware / Software CoDesign
23K views • 17 years ago
Google TechTalks
Cliff Click of Azul Systems gives a Google Tech Talk on running Java business applications on a machine with about a thousand cores. He covers hardware and software codesign, including garbage collection hardware and the JIT.
Topic match · Compilers, interpreters & program analysis
52:38A JVM Does That?
80K views • 15 years ago
Google TechTalks
Cliff Click of Azul Systems asks what a JVM is supposed to do, in a Google Tech Talk from 2011. He covers the services a JVM provides, such as garbage collection and compilation, and the messy reality beneath the abstractions.
Topic match · Compilers, interpreters & program analysis
1:15:09Cliff Click @ VMSS16: Bits of Advice For the VM Writer
4K views • 10 years ago
softdevteamuk
Cliff Click, author of HotSpot's JIT compiler, shares hard-won advice for people writing virtual machines at the VMSS16 workshop. Topics include interpreters, JITs and performance lessons.
Topic match · Compilers, interpreters & program analysis
1:19:57Simon Peyton Jones: Data Parallel Haskell
28K views • 16 years ago
nuACM
Simon Peyton Jones explains nested data parallelism and Data Parallel Haskell, an approach to exploiting multicore and distributed hardware while keeping a simple single-control-flow programming model.
Topic match · Compilers, interpreters & program analysis
1:29:06CppCon 2015: Herb Sutter "Writing Good C++14... By Default"
193K views • 11 years ago
CppCon
Herb Sutter's CppCon 2015 plenary on writing safe, modern C++ by default using the C++ Core Guidelines. It includes a demo of lifetime-checking static analysis tooling.
Topic match · Compilers, interpreters & program analysis
1:04:48"Performance (Really) Matters" with Emery Berger
7K views • 6 years ago
Association for Computing Machinery (ACM)
Emery Berger argues that performance is hard to measure and deliver on modern systems, showing how code layout and link order can swamp optimization effects. He presents tools that evaluate performance more reliably.
Topic match · Compilers, interpreters & program analysis
1:20:29Stanford Seminar - Google's Steve Yegge on GROK
30K views • 14 years ago
Stanford Online
Steve Yegge's Stanford seminar on GROK, Google's internal large-scale, cross-language source code analysis system. It covers how the system helps with code search and understanding across Google's huge codebase.
Topic match · Compilers, interpreters & program analysis
48:36Matt Might - Winning the War on Error Solving the Halting Problem and Curing Cancer
9K views • 9 years ago
Curry On!
Matt Might's Curry On talk on ending errors in code, both software and the human genome. He covers conservative approximation of the halting problem via static analysis and a computational approach to precision medicine.
Topic match · Compilers, interpreters & program analysis
25:52Halide Talk
53K views • 12 years ago
Andrew Adams
Andrew Adams, a Halide developer, presents the Halide language for image processing and tensor computation. The talk explains the separation of algorithm from schedule with illustrated examples of parallelism, locality and redundancy tradeoffs.
Topic match · Compilers, interpreters & program analysis
57:39CppCon 2016: Chandler Carruth “Garbage In, Garbage Out: Arguing about Undefined Behavior..."
94K views • 10 years ago
CppCon
Chandler Carruth's CppCon 2016 talk tries to defuse the heated debate over undefined behavior in C and C++. He explains from the compiler writer's perspective why UB exists and how it enables optimization.
Topic match · Compilers, interpreters & program analysis
1:10:11Self and Self: Whys and Wherefores
30K views • 16 years ago
Stanford
David Ungar of IBM Research reflects at Stanford on the Self language project and argues the real legacy of ideas is the people. He covers its history, philosophy, successes and failures.
Topic match · Compilers, interpreters & program analysis
13:14Did Nintendo really forget to Optimize Super Mario 64 ? | MVG
1.3M views • 6 years ago
Modern Vintage Gamer
Modern Vintage Gamer examines the claim from the Super Mario 64 decompilation project that the game shipped unoptimized, and puts it in the context of 1996 N64 development.
Topic match · Compilers, interpreters & program analysis
37:11CheerpX: a WebAssembly-based x86 virtual machine in the browser, Yuri Iozzelli
7K views • 6 years ago
WebAssembly NA
A talk by Yuri Iozzelli at a WebAssembly meetup on CheerpX, an x86 virtual machine running in the browser. It uses a JIT compiler that emits WebAssembly at runtime to run real native applications. It covers the architecture and demos such as porting a multiplayer C++ game.
Topic match · Compilers, interpreters & program analysis
1:30:03C++Now 2018: Matt Godbolt “What Else Has My Compiler Done For Me Lately?”
11K views • 8 years ago
CppNow
Matt Godbolt, creator of Compiler Explorer, tours surprising optimizations modern compilers perform, such as turning loops into closed-form sums and using popcount instructions. He explores what the compiler does behind the scenes.
Topic match · Compilers, interpreters & program analysis
52:21ASPLOS Keynote: The Golden Age of Compiler Design in an Era of HW/SW Co-design by Dr. Chris Lattner
52K views • 5 years ago
SiFive
Chris Lattner's ASPLOS 2021 keynote on the golden age of compiler design in an era of hardware and software co-design, covering compiler infrastructure for accelerators and unifying hardware IRs.
Topic match · Compilers, interpreters & program analysis
1:21:39Making R run Fast - Jan Vitek
860 views • 10 years ago
John O'Neill
Jan Vitek of Northeastern University gives a meetup talk on the challenges of making the R language run fast. He explains what in R's semantics makes it hard to optimize and to build a JIT compiler for.
Topic match · Compilers, interpreters & program analysis