UA-47897071-1
Showing posts with label application. Show all posts
Showing posts with label application. Show all posts

Friday 24 January 2014

Bjarne Stroustrup: Why I Created C++

Watch the video  and put the words into the gaps in the text


- What inspired you to create C++?
-In the really old days people had to write their code directly to work on the (1)___. They wrote load and store instructions to get stuff into our memory and they played about it with (2)____ and (3)____ and stuff. You could do a pretty good work with that but it was very specialized. Then, they've figured out that you could build languages fit for humans, for specific areas, like they built Fortran for engineers and scientists, they've built COBOL for businessmen. And then, in the mid-sixties, a bunch of Norwegians, mostly, Ole-Johan Dahl and Kristen Nygaard, thought: “Why can't we get language that is sort of fit for humans for all domains, not just linear algebra or business?” And they built something called “(4)___” that's where they introduced the class as the thing you have in the program to represent a concept in your (5)_____ world. So if you're a (6)_____ the (7)_____ 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 are going to represent just about anything as a class. And they went a little bit further and represented relationships between classes any (8)_____ 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 vehicle and organize things like that. This became known as object oriented programming also in some variants of the state abstraction.  And my idea was very simple: to take the ideas from Simula for general (9)_____ for the benefit of  sort of humans representing things, so humans could get it, with no  level stuff, which at that time, was the best language for that was 'C' which was done in  at  Bell Labs  by Dennis Ritchy. And take those two ideas and bring them together so that you could do (10)_____ abstraction but efficiently enough, and close enough to the hardware for really demanding computing tasks. And that is where I came in, and so С++ has classes like Simula but they run as fast as С-code, so the combination becomes very useful.
-What makes C++ such a widely used language?
-Yeah I said 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 (11)_____ hardware directly as you often have to do with (12)_____, with real-time control, things like cell phones. And so the combination gives something that is good for infrastructure in general. Another aspect that is necessary for infrastructure is stability. When you build an infrastructure it could be sort of the lowest level of IBM (13)_____ talking to the hardware for higher lever for software, which is the place we use in C++, or a fuel injector for a large marine diesel engine or a (14)_____ it has to be stable for decade or so, because you can't afford to fiddle with the stuff all the time, you can't afford to re-write it, and 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 hardwares, and to be used by programmers over a decade or two, at least. C++ is now about three decades old. And if that's not the case you have to re-write your code over the time, and that happens primarily with experimental languages and with proprietary (15)______ that changed to finish (16)_____ or to meet fads. C++'s problem is the complexity part because we have not been able to clean it up. There are still codes written in the 80s that are running. And people don't like their (17)_____ to break. It could cost them millions or more.


hardware

mathematician

application

bytes

matrix

high-level

bits

hierarchical

Simula

application

abstraction




mainframes
browser
commercial languages
running codes
access
fads
operating systems





1 Vocabulary focus. Sudy the words andword combinations, practise their translation, spelling. Check your knowledge in the test. Play vocabulary game and set your own vocabulary game record.

2 Answer the Questions
1.     What is Simula?
2.     What is object oriented programming?
3.     Who created programming language C?

4.     How did Bjarne Stroustrup create C++?

5.     What is the main problem in C++?

6.     How old is C++?

 

3 Mark the following statements as True or False

1.     In the old days people had to write their code directly to work on the hardware.

2.     FORTRAN is the language for mathematicians.

3.     In the mid-sixties Norwegians created the language COBOL.

4.     Object oriented programming is also known in some variants of the state abstraction.

5.     C was developed by Dennis Ritchy.

6.     C++ has no classes like Simula but runs as fast as C-code.

7.     C++’s strength is its ability to have efficient abstractions.

8.     Speed is necessary for infrastructure.

9.     C++ is a new language.

10. Simula codes written in 80s are still running.