Bjarne Stroustrup: Why I Created C++ - - vimore.org

Bjarne Stroustrup: Why I Created C++

Bjarne Stroustrup: Why I Created C++

YouTube

In the late 1970s, Stroustrup applied the idea of "classes" to the C programming language to create a new language that allows for high level abstraction—but is efficient and close to the hardware. Read more at BigThink.com: http://bigthink.com/videos/why-i-created-c Follow Big Think here: YouTube: https://www.youtube.com/user/bigthink Facebook: https://www.facebook.com/BigThinkdotcom Twitter: https://twitter.com/bigthink Transcript: What inspired you to create C++? In the really old days, people had to write their code directly to work on the hardware. They wrote load and store instructions to get stuff in and out of memory and they played about with bits and bytes and stuff. You could do pretty good work with that, but it was very specialized. Then they figured out that you could build languages fit for humans for specific areas. Like they built FORTRAN for engineers and scientists and they built COBALT for businessmen. And then in the mid-'60s, a bunch of Norwegians, mostly Ole-Johan Dahl and Kristen Nygaard thought why can’t you get a language that sort of is fit for humans for all domains, not just linear algebra and business. And they built something called SIMULA. And that’s where they introduced the class as the thing you have in the program to represent a concept in your application world. So if you are a mathematician, a matrix will become a class, if you are a businessman, a personnel record might become a class, in telecommunications a dial buffer might become a class—you can represent just about anything as a class. And they went a little bit further and represented relationships between classes; any hierarchical relationship could be done as a bunch of classes. So you could say that a fire engine is a kind of a truck which is a kind of a car which is a kind of a vehicle and organize things like that. This became know as object-oriented programming or also in some variance of it as data abstraction. And my idea was very simple: to take the ideas from SIMULA for general abstraction for the benefit of sort of humans representing things... so humans could get it with low level stuff, which at that time was the best language for that was C, which was done at Bell Labs by Dennis Ritchie. And take those two ideas and bring them together so that you could do high-level abstraction, but efficiently enough and close enough to the hardware for really demanding computing tasks. And that is where I came in. And so C++ has classes like SIMULA but they run as fast as C code, so the combination becomes very useful. What makes C++ such a widely used language? If I have to characterize C++’s strength, it comes from the ability to have abstractions and have them so efficient that you can afford it in infrastructure. And you can access hardware directly as you often have to do with operating systems with real time control, little things like cell phones, and so the combination is something that is good for infrastructure in general. Another aspect that’s necessary for infrastructure is stability. When you build an infrastructure it could be sort of the lowest level of IBM mainframes talking to the hardware for the higher level of software, which is a place they use C++. Or a fuel injector for a large marine diesel engine or a browser, it has to be stable for a decade or so because you can’t afford to fiddle with the stuff all the time. You can’t afford to rewrite it, I mean taking one of those ships into harbor costs a lot of money. And so you need a language that’s not just good at what it’s doing, you have to be able to rely on it being available for decades on a variety of different hardware and to be used by programmers over a decade or two at least. C++ is not about three decades old. And if that’s not the case, you have to rewrite your code all the time. And that happens primarily with experimental languages and with proprietary commercial languages that change to finish—to meet fads. C++’s problem is the complexity part because we haven’t been able to clean it up. There’s still code written in the 80’s that are running and people don’t like their running codes to break. It could cost them millions or more. Interviewed by Max Miller



Michio Kaku: What If Einstein Is Wrong?

Don't miss new Big Think videos! Subscribe by clicking here: http://goo.gl/CPTsV5 We'll have to recalibrate everything -- the age of the universe, the age of

YouTube

This Canadian Genius Created Modern AI

For nearly 40 years, Geoff Hinton has been trying to get computers to learn like people do, a quest almost everyone thought was crazy or at least hopeless - rig

YouTube

GitHub - Why Microsoft Paid $7.5B for the Future of Software! - A Case Study for Entrepreneurs

GitHub - Why Microsoft Paid $7.5B for the Future of Software! - A Case Study for Entrepreneurs. GitHub Inc. is a web-based hosting service for version control

YouTube

Quantum Computing Expert Explains One Concept in 5 Levels of Difficulty | WIRED

WIRED has challenged IBM's Dr. Talia Gershon (Senior Manager, Quantum Research) to explain quantum computing to 5 different people; a child, teen, a college stu

YouTube

Top 3 Programming Languages in 2019 (for beginners)

Ex-Google Tech Lead gives you his top 3 programming language picks for 2019 for new software engineers. Learn computer science, math, science, and algorithms a

YouTube

Bored out of your mind at work? Your brain is trying to tell you something. | Dan Cable

We've all been bored on the job at least once in our lives, but that boredom is actually very old human wiring. We constantly seek out new information to keep o

YouTube

4 Levels of Mac and Cheese: Amateur to Food Scientist | Epicurious

We challenged chefs of three different levels - an amateur, a home cook and a professional chef - to make their versions of macaroni and cheese. And then we bro

YouTube

"C" Programming Language: Brian Kernighan - Computerphile

"C" is one of the most widely used programming languages of all time. Prof Brian Kernighan wrote the book on "C", well, co-wrote it - on a visit to the Universi

YouTube

Facebook Coding Interview Question - How Many Ways to Decode This Message?

Facebook coding interview question and answer - how many ways to decode this message? For daily coding problems like this one, I’d recommend this website calle

YouTube

Michio Kaku: Mankind Has Stopped Evolving

Don't miss new Big Think videos! Subscribe by clicking here: http://goo.gl/CPTsV5 There are no more evolutionary pressures driving gross human evolution, but

YouTube

Soft Robots - Computerphile

Swarm robotics involve multiple robots cooperating. Researchers at Kirstin Petersen's Lab at Cornell are looking at soft robots as an affordable option. Grad St

YouTube

Will Quantum Computers break encryption?

How do you secure messages over the internet? How do quantum computers break it? How do you fix it? Why don't you watch the video to find out? Why does this des

YouTube

Should you Learn C++ in 2018?

Learn web development fast: https://shop.killervideostore.com/ Article: https://www.killersites.com/blog/2017/should-you-learn-c-in-2018/ Learn Python and OOP:

YouTube

Michio Kaku Explains String Theory

In this excerpt from his Floating University/Great Big Ideas lecture, Dr. Michio Kaku explains that string theory begins where Einstein's framework breaks down.

YouTube

Linus Torvalds: Why Linux Is Not Successful On Desktop

Linus Torvalds talks to Muktware editor and shares his opinion that why, despite ruling the world, Linux is still struggling on the desktop. Interview was recor

YouTube

Not Everyone Should Code

First 500 people will get 2 months of Skillshare free: https://skl.sh/polymatter4 Patreon: https://patreon.com/polymatter Twitter: https://twitter.com/polymatt

YouTube

What jobs will flourish in the future. And which you should avoid. | Michio Kaku

Read more at BigThink.com: Follow Big Think here: YouTube: http://goo.gl/CPTsV5 Facebook: https://www.facebook.com/BigThinkdotcom Twitter: https://twitter.com

YouTube

Why C is so Influential - Computerphile

Why is C such an influential language? We asked ardent C fan Professor Brailsford. Brian Kernighan Playlist: https://www.youtube.com/playlist?list=PLzH6n4zXuck

YouTube

How Software is Made

The basics of how software is created in the industry today. Topics covered: Software, Binary, Source Code, Programming Language, Compiling, Revision Control,

YouTube

Physics in the Days of Einstein and Feynman | Freeman Dyson

Freeman Dyson never spoke to Einstein, but revered him from afar. He was a "totally exceptional person"—as was another colleague, Nobelist and "clown" Richard F

YouTube