Skip to content
0:00 / 0:00

#jamesgosling#memorysafety#pointers

Java was created because of pointer bugs in C/C++ | James Gosling and Lex Fridman

Lex Clips

1.6M subscribers • 5 videos on Hallway

YouTube
  • Recommended by 1 person: 1 in engineering communities.
  • Presented by James Gosling, creator of Java

Beginner. No background in the topic needed.

295K views6 years ago1 recommendation

Programming languagesHistory and cultureJava and the JVMCC++

James Gosling explains how pointer bugs and memory safety issues in C and C++ led to the creation of Java.

See full episode (Lex Fridman Podcast): youtube.com/watch?v=IT__Nrr3PNI PODCAST INFO: Podcast website: lexfridman.com/podcast Apple Podcasts: apple.co/2lwqZIr Spotify: open.spotify.com/show/2MAi0BvDc6GTFvKFPXnkCL RSS: lexfridman.com/feed/podcast/ Full episodes playlist: youtube.com/playlist?list=PLrAXtmErZgOdP_8GztsuKi9nrraNbKKp4 Clips playlist: youtube.com/playlist?list=PLrAXtmErZgOeciFP3CBCIEElOJeitOr41 CONNECT: - Subscribe to this YouTube channel - Twitter: twitter.com/lexfridman - LinkedIn: linkedin.com/in/lexfridman - Facebook: facebook.com/LexFridmanPage - Instagram: instagram.com/lexfridman - Medium: medium.com/@lexfridman - Support on Patreon: patreon.com/lexfridman

Why it's here

1 person recommends this

What people say. Recommended as a historical perspective on the memory safety motivations behind the design of Java.

u/lightmatter501in r/programming • Recommends

On “The empire of C++ strikes back with Safe C++ blueprint: « After two years of being beaten with the memory-safety stick, the C++ community has published a proposal to help developers write less vulnerable code. »”

There is a difference between absolute safety, which Agda, Idris, and a subset of Haskell offer, where you do constructive formal verification and the compiler is formally verified to only perform valid transformations of code, and “the normal mode of this language will never let you read off the end of an allocation or deref a null pointer”. The latter is accomplished by Java as well, with James Gosling saying that Java exists because of C and C++ pointer bugs. It turns out that if you want to formally verify a language, it’s actually very reasonable to formally verify transformations in the compiler as valid down to some IR, then prove the properties of the IR. That’s how formally veri…