Facebook's Code Checker - Computerphile

preview_player
Показать описание
Millions of lines of code - how do you keep them bug free? Facebook's Professor Peter O'Hearn talks us through "Infer" their code checker which dallies with the idea of undecidability.


This video was filmed and edited by Sean Riley.


Рекомендации по теме
Комментарии
Автор

I actually wasn't expecting a Computerphile video to come anywhere close to Separation Logic, yet here is Peter O'Hearn!!!

MadocComadrin
Автор

"Infer is a static analysis tool for Java, C++, Objective-C, and C. Infer is written in OCaml." I guess that means I cannot run it on itself to tell me there are some bugs in it. That's sad.

jaryH
Автор

xor'ing to implement a doubly linked list to save memory?
I'll be sure to mention that in the tech interview to sound smart haha!

josephwong
Автор

This is pretty much why I'm going back to Uni this semester to study Computational Mathematics as an MPhil in Philosophy, Formal Logic and Philosophy of Science and programmer of 8 years, software architect of 5 years - brush up and complete the mathematical foundation, then use Proof Theory, Model Theory, Category Theory, Homotopy Type Theory to research both philosophy of science and proof assistants & static code analyzers.... wish me luck! :) Amazing, fascinating stuff - great video!

DumblyDorr
Автор

7:04
I just found it ironic that that Guardian article says:
"...writes "code verification software" using mathematical principles to *determined* whether a piece of software will execute correctly."
In that in programming, a single character typo will definitely cause it not _execute correctly_ (not at all), and here we see a journalist writing easy, plain English text doing just that :p Not being nitpicky, just found it funny

tarcal
Автор

Null pointer dereferences, memory leaks, race conditions checker. We definitely need this for Rust. Oh, wait...

SergeMatveenko
Автор

I couldn't stop wondering about that table (?) on the camera tripod. 😁

ArturdeSousaRocha
Автор

As someone interested in mathematical logic it's nice to know it has its uses in industry and something I can possibly aspire to if I don't want to pursue academia

Kalernor
Автор

It would be very nice to see more videos on symbolic AI on this channel! Very interesting still currently almost forgotten (by the general public) discipline!

JahMusicTube
Автор

Coverity is also an interesting tool in this domain. Super expensive, but it works for C/C++ code.

newvocabulary
Автор

I Love his face when he is talking. He looks like he is in a perpetual state of shock

LewisCowles
Автор

Rather than trying to solve this problem bottom-up by detecting problems, it's often better to solve it top-down by rejecting programs that might be bad in the first place (and, as a result, end up with provably safe software). Take a look at Rust! I'd love to see one of the Rust core developers interviewed, I'm sure Steve Klabnik would jump at the opportunity.

jsbarretto
Автор

It is nice to hear about applications of separation logic. I remember when prof. Reynolds was visiting DAIMI back in 2003 and held a short course on it.

ulrichchristensendk
Автор

It didn't find that there is some sort of memory leak (gets slower and slower until an out of memory error occurs) when using the new FB UI, and Google chrome browser on desktop. Either the bug is in FB's sprawling JS code or it's in Google Chrome.

threeMetreJim
Автор

4:30 transition from mathematician to engineer

letsgocamping
Автор

Great interview and really fascinating topic!

gloverelaxis
Автор

Just amazing. This is very exciting work, thank you for sharing

adamcunningham
Автор

Oh this is what I need. More of these please.

TurloughCowman
Автор

Still can’t catch those shared pointer bugs though eh?! 🤣

mrbangkockney
Автор

That just sounds like compiler with extra steps

AeroAndZero