L11: Understanding Programming Flashcards

1
Q

a machine that can carry out a complex series of actions through a computer program

A

robot

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

a versatile tool capable of performing various activities

A

computers

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

a sequence of instructions that tell a computer how to do a task

A

computer program

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

a set of written symbols that instructs the computer hardware to do specific tasks

A

programming language

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

what is a programming language usually composed of?

A

vocabulary, set of rules, or syntax

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

similar to machine code & is more suitable for programs like device drivers, or very high performance programs that need access to hardware

A

low-level language

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

focuses more on concepts that are easy to understand by the human mind, like objects or mathematical functions

A

high-level language

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

translated to the target machine’s native language by a program called a compiler

A

compiled languages

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

read by a program called an interpreter & are executed by that program, have no long long compile times, slower than a compiled program

A

interpreted languages

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

languages that are quickly compiled when programs written in then need to run, offers balance between performance & portability

A

JIT-compiled/Just-in-time compiled languages

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

puts restrictions on how different types of variables can be converted to each other without converting statements

A

type strength: strong typing system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

tries to find some way to make the cast work

A

type strength: weak typing system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

deals with how the compiler/interpreter for a language infers the types of variables

A

type expression: manifest/inferred

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

refers to the rules that the different types of variables of a language have to follow

A

type system

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

when the compiler/interpreter does the type checking once before the program runs/is compiled

A

type checking: static (statically typed)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

the types are checked at run-time

A

type checking: dynamic (dynamically type checked)

17
Q

refer to the degree to which a language will prohibit operations on typed variables that might lead to undefined behavior/errors

A

type safety: safe or unsafe

18
Q

a methodology or way of programming that a programming language supports

A

programming paradigm

19
Q

focuses more on specifying what a language is supposed to accomplish, might not be used to avoid undesired effects

A

declarative

20
Q

a sub-set of declarative programming, tries to express problems in terms of mathematical equations/functions, avoids concepts of states & mutable variables

A

functional

21
Q

focuses on writing skeleton algorithms in terms of types that will be specified when the algorithm is used, allows leniency to programmers

22
Q

can be a powerful paradigm if well-implemented

23
Q

allows programmers to give the computer ordered lists of instructions without necessarily having to state the task

A

imperative

24
Q

sounds like an opposite of declarative programming

A

imperative

25
aim to provide some form of noteworthy structure to a language
structured
26
sub-set of structured programming, expresses programs in the terms of "objects" and are meant to model objects in the real world
object-oriented (OOP)
27
allows code to be reused in remarkable ways, meant to be easy to understand
object-oriented (OOP)
28
an example of this type of programming paradigm is Visual Basic of Microsoft Corporation
object-oriented (OOP)
29
introduced in the 1940's, earliest language, consisted of 1s & 0s, had to be managed by hand in binary
First generation (1GL)
30
allows the use of symbolic names, known for assembly language & designed to support logical structure & debugging
Second generation (2GL)
31
code written in assembly language is converted to machine language
Second generation (2GL)
32
used in general purpose programming, uses words & commands, known as "high level language" had syntax that was easier to undertstand
Third generation (3GL)
33
designed with making problems in a specific domain simple to implement that reduces cost
Fourth generation (4GL)
34
constraint oriented, used for neural networks
Fifth generation (5GL)
35
form of artificial intelligence that attempts to imitate how the human mind works
Fifth generation (5GL)