CSE 3302: Exam 1 Vocabulary

Lakukan tugas rumah & ujian kamu dengan baik sekarang menggunakan Quizwiz!

Basic data abstraction

Hides internal representation of common data values. Values are also called "primitive' or "atomic" because the programmer cannot normally access the component parts or bits of the internal representation

Paradigm

Pattern

Compiler

Produces an equivalent program in a form suitable for execution

What is a programming language?

Programmers use programming languages to instruct computers to do things.

Lisp

Programming language that uses the functional model of computation

Syntax

The structure of programs (tokens, keywords, statements)

Imperative Language

a language with three properties -Sequential execution of instructions -Use of variables representing memory locations -Use of assignment to change the values of variables

Iterator

an object associated with a collection (such as array, list, set, or tree)

Orthogonal design

constructs can be combined in any meaningful way, with no unexpected restrictions or behaviors

Information Hiding

defining new data types (data and operations) that hide information

Portability

easy to move between cpus

Programmer efficiency

how quickly and easily can a person read and write in the programming language?

Security

is the program going to make the computer crash?

Pascal

language for teaching programming in the 1970s Descended form ALGOL

Task

mechanism in Ada for parallel execution

Tokens

the language's words includes keywords, identifiers, symbols for operations, special punctuation symbols, etc.

Writability

the quality of a language that enables a programmer to use it to express computation clearly, correctly, concisely, and quickly

Efficiency

usually thought of as efficiency of the target code

Arguments (or actual parameters)

values supplied by the caller for the parameters

Parameters

values that can change from call to call

Virtual machine

written differently for different hardware architectures

Regularity can be subdivided into three concepts

- Generality - Orthogonal design - Uniformity

What must a target program be?

- Translated by an assembler into an object program - Linked with other object programs - Loaded into appropriate memory locations

Structured Abstractions

Collect intermediate information about the structure of a program

Unit Abstractions

Collect large-scale information in a program

Basic Abstractions

Collect the most localized machine information

Interpreter

Executes a program directly

Implementation

Internal representation of data values and operations

What are the two major types of translators

Interpreter and Compiler

Unit abstraction also provides ___________________

Reusability

Object-oriented paradigm

Reusable code that operates in a way to mimic behaviors of real-world objects

Unit

a stand-alone collection of procedures providing logically related services to other parts of a program Allows a program to be understood as a whole without needing to know the details of the services provided by the unit

Generality

achieved by avoiding special cases in the availability or use of constructs and by combining closely related constructs into a single more general one

Target language may be ____ _____

byte code

Procedure Declaration

names a procedure and associates it with the actions to be performed

Logic Paradigm

Based on symbolic logic

Functional Paradigm

Based on the abstract notion of a function in lambda calculus

Are there any generally accepted formal methods for describing semantics

No.

Procedure (or subprogram or subroutine)

groups a sequence of actions into a single action that can be called or invoked from other points in the program

Expressiveness

how easy is it to express complex processes and structures?

Semantically safe

languages that prevent a programmer from compiling or executing any statements or expressions that violate the language definition

Data types

names given to kinds of data values

Unit abstraction

often associated with the concept of an abstract data type a set of data values and the operations on those values

Threads

other programs executing outside the Java system

Efficiency of execution

primary design criterion - Early FORTRAN code more or less directly mapped to machine code, minimizing the amount of translation required by the compiler

Languages that satisfy the criterion of regularity are said to adhere to the _________________

principle of least astonishment

What did John von Neumann propose?

proposed that computers should be permanently hardwired with a small et of general-purpose operations.

Regularity

refers to how well the features of a language are integrated

von Neumann Bottleneck

requirement that a program be described as a sequence of instructions

Language Syntax

similar to the grammar of a natural language

Control Abstractions

simplify properties of the transfer of control Examples: loops, conditional statements, procedure calls

Data Abstractions

simplify the behavior and attributes of data for humans Examples: loops, conditional statements, procedure calls

Macro

specifies the syntax of a piece of code that expands to other standard code when compiled

Opcode

the first 4 bits of a line of code indicates the type of operation to be performed Next 12 bits contain code for the instructions operands.

Lambda Calculus

Computational model developed by mathematician Alonzo Church Based on the theory of recursive functions.

What are the two types of programming abstractions?

Data abstraction Control Abstraction

FORTRAN

FORmula TRANslation language - developed by John Backus in the early 1950s - Reflected the architecture of a particular type of machine - lacked the structured control statements and data structures of later high-level language

Ada

For embedded applications of U.S Dept of Defense

Branch Instructions

Instructions that support selection and iteration to memory locations other than the next one

Compilation requires at least two steps...

Source program - input to the compiler Target program - output from the compiler

Semantics

The expected behavior of a given syntactical construct. Meaning of a language - Describes the effects of executing the code - Difficult to provide a comprehensive description of meaning in al contexts

Declaration

The process of giving a variable a name and a data type

Runtime environment

The system implementation of the program - Stores information about the condition of the program and the way procedures operate

Compiler

Translates programming language statements into machine code ALGOL was the first language to receive a formal specification or definition

Reference semantics

Two references to the same object

Variables

Use of symbolic names to hide computer memory locations containing data values

Value Semantics

Values are copied during assignment

Uniformity

a design in which similar things look similar and have similar meanings while different things look different Can classify a feature or construct as irregular if it lacks one of these three qualities

Byte code

a form of low-level code

Extensible language

a language that allows the user to add features to it

Availability

a lot of people coding it

Recursion

a mechanism that further exploits the abstraction mechanism.

Programming language

a notation for communicating to a computer what we want it to do

Translator

a program that accepts other programs and either directly executes them or transforms them into a form suitable for execution

Loader

a program that loads the machine code into computer memory

Assembler

a program that translates the symbolic assembly language code to binary machine code

Array

a sequence of individually indexed items with the same data type

Assembly language

a set of mnemonic symbols for instruction codes and memory locations

Interface

a set of operations available to the user

Function

closely related to a procedure - returns a value or result to its caller - can be written to a correspond more closely to mathematical abstractions

Data Structure

collects related data values into a single unit Hides component parts but can be constructed from parts, and parts can be accessed and modified

Typically __________ are entered into a __________ and become the basis for library mechanisms

components, library

map functions

expects another function and a collection as arguments applies the argument functions to each element in the argument collection and returns a list of results

Grammar

formal definition of the language's syntax

Higher-order Functions

functions that can accept other functions as arguments and return functions as values

Application programming interface (API)

gives information about the resource's components

Basic control abstractions

statements that combine a few machine instructions into an abstract statement that is easier to understand

Lexical structure

structure of the language's words similar to spelling in natural languages

invocation (or procedure activation)

the act of calling the procedure

Syntactic Sugar

A mechanism that allows you to replace a complex notation with a simpler shorthand notation Ex: x += 10 instead of x = x+10

ALGOL

ALGOrighmic Language released in 1960. - Provided a standard notation for computer scientists to publish algorithms in journals. - Included structured control statements for sequencing (begin-end blocks), loops (for loop), and selection (if and if-else statements) - Supported different numeric types - Introduced the array structure - Supported procedures, including recursive procedures - Achieved machine independence with the requirement for an ALGOL compiler with each type of hardware


Set pelajaran terkait

Elements of Fiction - Narrator / Narrative Voice and Other Terms

View Set

Med Surg Chapter 28: Nursing Management: Patients With Urinary Disorders: PREPU

View Set

Chapter 49 Quiz Questions: Quiz #4

View Set

Economics Chapter 3 Homework Study Guide

View Set

Chapter 10: Security in Network Design

View Set

Brit lit quiz: Sir Gawain and the Green Knight

View Set

NN310 Homework 1 - Electronic Navigation Fundamentals

View Set

ARH2000 MODULE 11, ARH2000 MODULE12

View Set

BIOL 1010-How Cells Obtain Energy Study Guide; Chp.4

View Set

Chapter 1: The Equity Method of Accounting for Investments, Chapter 2: Consolidation of Financial Information, Ch. 3 Consolidations - Subsequent to Acquisition, LS Ch. 1, LS Ch.2

View Set

Entrepreneurship and Small Business

View Set