programming language concepts

0.0(0)
studied byStudied by 0 people
full-widthCall with Kai
GameKnowt Play
learnLearn
examPractice Test
spaced repetitionSpaced Repetition
heart puzzleMatch
flashcardsFlashcards
Card Sorting

1/29

flashcard set

Earn XP

Description and Tags

midterm

Study Analytics
Name
Mastery
Learn
Test
Matching
Spaced

No study sessions yet.

30 Terms

1
New cards

syntax

the set of rules that govern the structure and formatting of a programing language dictating how symbols, words, and punctuation must be combined to form valid and executable code. 

2
New cards

semantics

the meaning and behavior of a program or programming language; use the mathematic relations notation below to express

3
New cards

imperative programming paradigm

programs tell the computer what to do

4
New cards

declarative programming paradigm

programs describe the characteristic of a solution

5
New cards

functional programming

declarative paradigm that views computation as the application of mathematical functions to data

6
New cards

language

a set of strings over an alphabet

7
New cards

interpreter 

translates each source code statement every time it is executed; process: read, eval, print, loop (REPL); used in the translation of Python 

8
New cards

compiler

results in a new “translated program” being stored; execution is a 2-step process

9
New cards

expressivity 

the breadth of ideas that can be represented and communicated in that language 

10
New cards

extensibility

allows programmers to define new languages features and extend the current features of a language

11
New cards

abstraction

mechanisms for hiding details

12
New cards

concurrency

the ability of a system to execute multiple tasks seemingly at the same time

13
New cards

security

how effectively a language through its design and features, helps developers write code that is resistant to vulnerabilities at attacks

14
New cards

modularity 

features for dividing a software system into smaller, independent, and self contained units 

15
New cards

maintainability

how language features impact the ease with which a software system, written in that language, can be modified, updated, extended, or repaired over time

16
New cards

scalability

the capacity of a system to support growth or to manage an increasing volume of work

17
New cards

error handling

the mechanisms and techniques used to anticipate, detect, and respond to abnormal or unexpected situations that can occur during program execution

18
New cards

efficiency

how effectively a language utilizes system resources

19
New cards

readability

how easy it is for a human to understand code written in a particular language

20
New cards

interoperability

the ability for two or more languages to interact as part of the same system

21
New cards

portability 

refers to the ability of code written in one environment to function correctly and efficiently in another, without significant modification 

22
New cards

rules for defining inductive sets 

specification of base elements (base case), zero or more inductive rules that define memberships of new elements in terms of existing elements, closure rule that specifies that the set does not contain any elements other than those specified by the base case and the other case

23
New cards

parse trees

show syntax structure; internal nodes for non-terminals; leaf nodes for terminals

24
New cards

derivation

the sequence of applications of grammar rules that makes the completed string of terminals from a grammar start symbol.

25
New cards

sentential form 

a string of symbols derived from the start symbol of a grammar

26
New cards

design patterns

a general, reusable solution to a commonly occurring problem in many contexts in software design

27
New cards

visitor design pattern

separates the algorithm from the object structure; because of this separation, new operations can be added to existing object structures without modifying the structures

28
New cards

scope 

the locations in a program where a definition is visible and has an effect

29
New cards

lexical scoping

the binding of a variable to a value is based on the code syntax structure

30
New cards

dynamic scoping

to reconcile a reference to a non-local variable, one must trace the run-time history of the variable