• Shuffle
    Toggle On
    Toggle Off
  • Alphabetize
    Toggle On
    Toggle Off
  • Front First
    Toggle On
    Toggle Off
  • Both Sides
    Toggle On
    Toggle Off
  • Read
    Toggle On
    Toggle Off
Reading...
Front

Card Range To Study

through

image

Play button

image

Play button

image

Progress

1/62

Click to flip

Use LEFT and RIGHT arrow keys to navigate between flashcards;

Use UP and DOWN arrow keys to flip the card;

H to show hint;

A reads text to speech;

62 Cards in this Set

  • Front
  • Back

first languages:

assembly, fortran, cobol, lisp

moving wires

assembly

scientific computation

fortran

business computation

cobol

AI programming

lisp

C came from _____ and ______, and implements UNIX

assembly / fortran

(60's) Stimula ----->

Smalltalk

Java came from both ____ and _____

smalltalk and C++

(80's) Perl -----> _____ ------> Ruby

python

if a TM can do it then so can the language =

universal

easy to express ideas and algorithms =

natural

can write a complier for =

implementable

writable, readable, orthogonal, regular, uniform =

reliable

writing, compiling, and execution=

efficient

easy to adapt to new hardware, etc. also can expand the language =

maintainable/ extendable

what is involved in an imperative/ procedural paradigm?

variables, sequential augmentation, assignment

what is involved in an applicative/ functional paradigm?

no notion of store/ variables, no statements/ loops, no sequential execution

example of an imperative/ procedural paradigm

Scheme:


(define (gdc n v)


(if (= v o) u


(gcd v (module n v))

example of an applicative/ functional paradigm:

ML:


fun gcd (u,o) = u


1 gcd (u,v) = gcd (v, (umodv));

What is involved in a logic paradigm?

no control abstraction, no statements, no memory/ variables, properties of computation

Example of logic paradigm

prolog: when


gcd(u,v,u):-v=o


gcd (u,v,w) : -v>o,w is umodv,


gcd(v,w,x)


gcd(15,10,y)

What is involved in an object oriented paradigm?

objects and messages (really objects)


no statements


no expressions


no variables


In an object oriented paradigm, how do you send a message to object?

create boolean object

In an object oriented paradigm, what do you do if there is a negative?

start again

there is also a parallel/ concurrent programming paradigm

but he didn't put any notes for it...so.....

a set of strings

language

a sequence of symbols

strings

generated with regular expressions. recognizable with finite atomaton. use with lexeme. the smallest unit in a language

regular languages

generated with phase structured grammars. recognizable with turing machines

recursively enumerable languages

generated with grammar. recognizable with push down automaton. used with syntax (only verifies the syntax)

context free languages

generated with attribute grammars. recognized by linearly bounded NTMA. use semantics

context sensitive languages

G= (V, T, P, S)


V a set of variables


T a set of terminal symbols


S & V denotes the start variable


P a set of replacement productions

context free grammars

in a conditional value assignment, you should use ____ instead of '.' for immediate assignment. '.' will only assign after the whole statement passes.

$

in a conditional value assignment, every statement can begin with a ____

label

denotes entity or construct

name

predefined and may not be redefined

reserved words

predefined and may be redefined

key words

What is the meaning of a name determined by?

A set of attributes associated with the name (value, location, address, value, lifetime, scope, aliases)

all data is linked together into an exe. separate compilation units. libraries

link time

loads the program into memory. addresses get set. locations get set

load time

dynamic locations and addresses (IE pointers). values also get set. aliases get set.

execution time

the range of the program during which the binding(s) exist(s)

scope

scope of the attribute is determined by examining the text program

static or lexical scope

scope is determined by flaw of execution

dynamic scope

process of verifying type infer in a program

type checking

provides type rules

languages

these are strongly typed

ada, pascal, ML, haskell, scheme

weakly typed

C, C++, python

untyped / dynamic

perl, smalltalk, snobol 4, prolog

what is type declaration used in?

semantic checking

integer, real, character, string, pattern, set, lists

predefined types (simple)

enum color (red green blue), type color is red green blue, data color is red green blue

enumerated types

type digit is 0..9

subtypes

type constructors

cartesian product, union, power set ,subsets, function set, intersection, difference, complement

sets with no duplicates. membership, insertion, deletion, union, intersection, difference

unordered distinct values

small universe

bitwise implementation

large universe

hash implementation

**some languages has strict restrictions on what the index can be and when it must be known

index rules

index range is fixed and storage is allocated at compile time

static

index ranges are fixed and statically bound but allocation happens at declaration

fixed stack dynamic

both index range and allocation are done at ran time. once allocated they remain fixed for their lifetime

stack dynamic

truly dynamic

heap dynamic