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

Friday 31 January 2014

What is programming?

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


So what exactly is (1)___? Well, you may have heard a phrase like this before: “A computer program is a (2)____ of (3)____”. Here is the problem. This sounds like one of those phrases that might be technically true and is kind of useless, like the human brain is 80% water. Because you hear this phrase but then you see a complex program like Photoshop or Flash or something playing (4)_____ video or a 3D game and you think, “Yeah but that can't just be a set of instructions”. But that's exactly what these are, all of them.
Every computer program is a series of instructions, a (5)____ of separate small commands, one after the other. Now there maybe five instructions contained in a program, maybe 5,000, maybe 5 million. Each (6)____ is telling the computer to do something very small, but very specific and the art of programming is to take a larger idea and break it (7)____ into these individual steps. And the wonderful thing is everyone can already do this. Let's imagine that you're sitting in your house in the suburbs waiting for a visit from a friend.
Your phone rings, it's her, and she's asking for (8)___. She tells you she's at a nearby gas station and you know it. You pass it every day; it's on your way home. So that journey point A to point B drops into your head as one piece, but you instantly know you can't (9)___ the journey the way you understand it. You have to break it down into simpler parts and you have to think about it to break it down because it's so (10)____ to you. So you start to (11)____ this apart and “You say you are going to need to turn right, then drive one mile, then you will turn left on Acacia Avenue, then you'll take the second right and then it's the fourth house on the left”. Specific, individual, simple, clear, (12)____ instructions.
Now you know that (13)____ here is vitally important. You mix these up, you will get very different results. “Turn right, drive 1 mile” takes you to quite a different place from “drive 1 mile, turn right”. But this same level of simple instructions, turn right, turn left, go straight, could take you around the (14)___ or it could take you on a five-year trip around the world visiting every Starbucks along the way. You'd still have instructions like turn right and left.


set
instructions
high-definition
programming






apart
sequence
instruction




communicate

pull
self-contained
directions
natural





corner
sequence



You'd just need a lot more of them. So with programming we are giving (15)___ to the computer. It's breaking apart a more complex idea, a more (16)___ task, into its smallest individual instructions and then using a programming language to write those instructions. Now, of course if you have never programmed, it's not clear right now what those instructions might be. You know it's probably not turn right and turn left. So what are those basic fundamental instruction you give a computer? Well, they are often very basic. They are things like (17)___ two numbers together, or display a letter on the (18)___, check to see if the user just hit the (19)____, change the color of one individual (20)____. But as with driving directions, you string together enough computer instructions that will get you very far indeed.
So when it might seem difficult to see how you get from (21)___ examples you see when beginning programming to complex games or applications, well that's what you get when you have a hundred people writing these instructions for sixty hours a week for several years, combined with the (22)___ of the computer to process them (23)___ fast, means that we could, if we wanted to, write the set of instructions that could (24)____ every single individual pixel on the screen thirty times a second.
Now think about that level of speed and think about why your instructions better be right. Because getting them wrong is like giving (25)___ directions to your friend when her car only has two speeds: 0 and 5000 miles an hour. You get those directions wrong, and the next call you get is her asking why she (26)___ your instructions to the letter, but her car is now in the middle of a forest crashed into a tree. Computers will do exactly what you tell them, so the instructions you give them better make (27)___.
In programming languages we write these instructions by writing what are called (28)____. Statements in programming languages are kind of like sentences in English. They use words, numbers, and (29)____ to express one thought, one individual piece. Most programming statements are pretty short, just a few words. Now, exactly what words, numbers, and punctuation you use depends on the (30)____ language. Some languages want each of your statements to end with a (31)___, like ending a sentence in English with a period, and others don't. You just go to the next line and start writing the next statement. Some languages are all (32)___, some languages are all lowercase, some languages just don't (33)___. Now, understanding the rules of each language is understanding the syntax of a programming language. So programming is the ability to take this idea in your head, break it apart into its individual pieces, and know how to write those pieces in the programming language you are using at the time, writing your statements in the right order, using the right syntax. But what language? Well, sometimes you get to pick a language and sometimes it's kind of picked for you.

add


screen

directions


spacebar
pixel
complex





ability
calculate
basic
mind-bogglingly



sense
wrong
followed




semicolon

care
punctuation
programming
uppercase
statements
1 Vocabulary focus. Sudy the words and  word 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
What is a computer program?
What is given in instructions? Why are they important?
What are statements and programming languages?
How can we understand the role of each language? Why is such understanding important?

3 Mark the following statements as True or False

Every computer program is a series of instructions and separate small commands.
Programming is giving instructions to the computer.
Computers closely follow instructions and do exactly what you tell them.
Statements in programming are like sentences in Russian.
Most programming statements consist of many words.
When we give directions to the computer it breaks them up like breaking more complex idea or a more complex task into the smallest individual instructions.
Computer program is a set of applications.
All languages want each of the statements to end with a comma.
Understanding a programming language is understanding its syntax.
Statements in programming languages use words, numbers, and punctuation to express one thought in one case

Thursday 30 January 2014

Introduction to C language



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

     Welcome to these series of videos that will show you how to program in C. The C language is one of the oldest (1)_____ which, with its great power, ability to manipulate (2)____ in (3)_____, and basic constructs for (4)_____ is used by programmers around the world and at different (5)____ of experience. In this video particularly, we will address a general view of the C language and its (6)_____ and purpose in the modern world of computers and engineering. The C language is currently used significantly to program (7)____ systems, cell phones, medical devices, PCs, etc. Graphic (8)____ Interfaces for utility software 3D graphics, game engines, Artificial (9)____ also known as AI for search engines, (10)____ and drivers for electronic devices, other programming and (11)____ languages, code optimization, operating (12)____ for electronic devices containing processors within: vehicles, appliances, printers, photocopy machines, etc.
      All technologies are based on previous technologies. The C language is one of those technologies that does not (13)___ since it is sufficiently abstract to be understood in an (14)___ and conceptually general way without needing the knowledge of electronics of the specific features of  their (15)___ also known as (16)___ for machine instructions of a given (17)___. It also avoids high-level concept constructs inherent in its syntax, such as: classes, (18)____, (19)___ and data structures.
         In C you can build the aforementioned concepts that are not included in the (20)___ of the language. Usage of the C language is important, so much so that even language (21)____ of higher abstraction level such as: (22)____, Lisp, Java and C++ can be programmed in C. If you use the GNU Linux operating system you know that to install several utility packages they must be compiled as C (23) ____ code files.
bits
systems
levels
user
operating
intelligence
firmware
application
scripting
programming languages
functional programming
hardware


instances
opcodes
intangible
mnemonics
expire
chip
instances
generic algorithms
compilers
source
syntax
Python

 
1 Vocabulary focus. Sudy the words and word 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 one of the oldest programming languages?
2.     Where is C language currently used?
3.     What is the great ability of C language?
4.     What programming languages are mentioned in this video? How are they connected to C?
5.     What concepts are you can build in C programming language?

3 Mark the following statements as True or False

1.     The C++ language is one of the oldest programming languages.
2.     The C language is currently used significantly to program GNU, mobile phones, printers, etc.
3.     The C language is no longer used by programmers around the world.
4.     The C language is not used for utility software and 3D graphics.
5.     All C technologies are based on previous technologies.
6.     The C language is one of those technologies that will expire soon
7.     In C you can build classes, generic algorithms, data structures, matrixes that are included in the syntax of the language
8.     The C language is very important for GNU Linux.
9.      Python, Lisp, Java and C++ can be programmed in C.
10.  Utility packages must be compiled as C source code files when you install them to Linux.




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.