HackerTube.dev

CUFP 2013: Julien Verlaguet, Facebook: Analyzing PHP statically

CUFP 2013 · 5.3K views · 2013-10-20 · 25:37

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

Julien Verlaguet of Facebook describes applying static analysis and type inference to a very large PHP codebase, using OCaml. The work led to the Hack language.

On Hacker News

Pointed to as the origin story of Hack and a real-world example of OCaml in production.

Recommended by 3 HN people across 3 months · HN mentions 2013–2014

Topics

Search by tags

What people said

amirmc · 2014-03 · Recommendation

It's good to hear stories about how FP is being used in industry and I'd like to read more. For those who have an interest in this, I recommend the Commercial Users of Functional Programming workshop ( [LINK] ). It's where I first heard about Facebook's use of OCaml to create Hack ( [VIDEO] )

Read the original HN comment ↗
Xdes · 2014-02 · Recommendation

Check out Hack for HHVM[0][1][2]. It's a lot saner than PHP, but it's not documented or well known outside Facebook. [0]: Strangle Loop 2013: Keith Adams, Facebook: Taking PHP Seriously [LINK] [1]: CUFP 2013: Julien Verlaguet, Facebook: Analyzing PHP statically [VIDEO] [2]: HHVM and Hack – Can We Expect Them to Replace PHP? [LINK]

Read the original HN comment ↗
avsm · 2013-11 · Recommendation

Another cool one from CUFP this year is how Facebook is using OCaml to add incremental type inference to their vast PHP code base. There's (slightly hard to see video) here, but I'm sure Facebook will publicize it more widely when they're ready. [VIDEO]

Read the original HN comment ↗

Sources

Video by CUFP 2013, 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