Language Pragmatics (5th Ed.) by Scott & Aldrich
What is the difference between machine language and assembly language? - answer-Machine
language is binary 1's and 0's, assembly is a 1-1 human readable translation of machine
language.
How are high level languages an improvement on assembly? Does it ever make sense to
program in assembler? - answer-High level languages provide higher levels of abstraction, so
the user doesn't need to worry about minute details. Assembly programming can be good to
optimize code to make it as efficient as possible though
Why are there so many programming languages - answer-Evolution, Special Purposes, Personal
Preference
What makes a programming language successful? - answer-Expressive Power, Ease of Use for
Novice, Ease of Implementation, Standardization, Open Source, Excellent Compilers, Economics,
Patronage, Inertia
Name 3 languages from each category: Von Neumman, functional, obj-oriented? Name 2 logic
languages, name 2 concurrent languages - answer-Von Neumann: Ada, Fortran, C
Functional: List, ML, Haskell
obj-oriented: Java, C++, Smalltalk
Logic Languages: SQL, Prolog
concurrent: Java, C# v
What distinguishes declarative languages from imperitive - answer-Imperitive: Tell computer
how to do something
1
, Ex -> find words greater than length 9 in array of strings:
for loop, check each word, add long words to new arary
Declarative: Tell computer what to do
Ex-> find words greater than length 9 in array of strings:
(*javascript)
long_words = words.filter(word, word.length>=9, long_words += word)
declarative calls function which does work instead of strictly telling computer how to calculate
it.
What organization spearheaded the development of Ada? - answer-Department of Defense
what is generally considered the first high-level programming language? - answer-Fortran
What was the first functional language - answer-LISP
Why aren't concurrent languages listed as a separate family? - answer-They are written in
conjunction with sequential languages like C or Fortran, so they don't fit into a unique family.
Explain the distinction between interpretation and compilation? Advantages and Disadvantages
of each? - answer-Compilation - Quicker/more efficient, only happens once then cna run many
times
Interpretation - more control over running, better debugging, more portable
Is Java compiled, interpreted, or both? - answer-Java is both compiled and interpreted
2