95 Programming Language Q&A (P2)

Programming Language Concepts

You can see the first part of the PLC question and answer series here. In this post, we’ll still be focusing on the earlier days of language development. Some topics inside of this set include Lisp, ALGOL, COBOL, BASIC, PL/I, APL, SNOBOL, SIMULA, Prolog, Ada, and C. Before going through, can you answer this question? All modern languages owe some of their design to _____ or ______.

105. Who developed Lisp?

– John McCarthy

106. What type of language is Lisp?

– Functional programming language

107. True or False? Lisp is purely functional.

– True

108. What are the two data structures in Lisp?

– Atom and List

109. What is a List?

– A series of elements enclosed in parentheses (A B C D)

110. Elements in a List can be ________ or ________ _________.

– Atoms or other lists

111. How is computation done in Lisp?

– By applying functions to arguments

112. True or False? Both assignment statements and variables are necessary in Lisp.

– False. Neither

113. What does Lisp use for Iteration?

– Recursion

114. True or False? Both program code and data are written in list form in Lisp.

– True

115. Describe the program code in List (A B C D) in Lisp.

– Function A followed by three parameters B, C, D

116. Name a couple of descendants of Lisp.

– Scheme, Common Lisp, MetaLanguage, Miranda, Haskell, F#

117. Name a functional language developed by Microsoft.

– F#

118. Who developed ALGOL 58?

– Fritz Bauer

119. What did the assignment statement look like in ALGOL 58?

– variable := expression

120. True or False? ALGOL 58 was close to mathematical notation?

– True

121. True or False? ALGOL 58 formalized the concept of data-types?

– True

122. True or False? ALGOL 58 contained compound statements?

– True

123. How many array dimensions were allowed in ALGOL 58?

– Any number

124. What was the lower bound of arrays in ALGOL 58?

– It was anything the programmer specified

125. True or False? Selection statements could be nested.

– True

126. What does BNF stand for?

– Backus-Naur Form

127. What is BNF is for?

– Describing programming language syntax.

128. Name a few features introduced in ALGOL 60.

– Recursive procedures
– Stack-dynamic arrays
– Block structure
– Parameters passed to subprograms as value or name

129. Who wrote the description for ALGOL 60 and which form did he use?

– Peter Naur. He used BNF.

130. Name 3 firsts for ALGOL 60

– It was the first language designed by an international group
– It was the first language designed to be machine independent
– It was the first language whose syntax was formally described

131. Which language was used as the only acceptable means of communicating algorithms?

– ALGOL 60

132. List a few reasons why ALGOL 60 was never widely accepted.

– Too flexible
– Lack of I/O statements
– BNF seemed strange and complex
– Lack of support from IBM

133. Who made FLOW-MATIC and for which programming domain?

– Grace Hopper for Business application

134. Who developed COBOL?

– Developed by Tierney and friends <- too many names lol

135. Where was the idea of COBOL developed?

– The Pentagon

136. Name a few things COBOL was trying to achieve.

– Use English as much as possible
– Should not be restricted by implementation
– Easy to use

137. What are the two sections that COBOL code is separated into?

– Data Description and Executable operations

138. Which language has been used more than any other programming language?


139. What was the first programming language mandated by DoD?


140. Fill in the blank. _____ was the first high-level language with construct for macros


141. How many characters could COBOL have in its variable names?

– Up to 30

142. What other character was allowed in COBOL variable names?

– Dash

143. Who developed BASIC?

– John Kemeny and Thomas Kurtz

144. Why was BASIC popular?

– It was used in weaker Microcomputers.

145. Why did BASIC start to lose its popularity?

– Because Microcomputers became more powerful

146. Who was the primary target audience of BASIC?

– Beginners; non-science students

147. What was the first widely used language to allow program development via terminals connected to computers?


148. True or False? BASIC valued computer time more than user time.

– False

149. What was the first large-scale attempt to design a language that could be used for a broad spectrum of application areas?

– PL/I

150. What was PL/I attempting to achieve?

– Combine Business and Scientific domains into one.

151. What was a disadvantage of PL/I?

– Had too many features and some features were not well designed.

152. What did both APL and SNOBOL have?

– Dynamic typing and Dynamic Storage Allocation

153. What is dynamic typing?

– Variable acquires a type when value is assigned

154. What is dynamic storage allocation?

– Storage allocated to variable when value is assigned

155. Who developed APL?

– Kenneth Iverson

156. Why was APL developed?

– To describe computer architecture

157. What is APL famous for?

– Large collection of operators such as unit operations on arrays.

158. True or False? APL is easy to read.

– False

159. Who designed SNOBOL?

– Farber, Griswold and Polensky at Bell Labratories

160. What is SNOBOL famous for?

– Text-processing. Has powerful operations for string pattern matching

161. SNOBOL is used for writing _____ ______.

– Text editors

162. What was SIMULA I designed for?

– Simulation

163. Who developed SIMULA I?

– Kristen Nygaard and Ole-Jahn Dah

164. Which language was the first to support data-abstraction?


165. Why was data-abstraction created in SIMULA 67?

– To support coroutines

166. What were the primitive data types in ALGOL 68?

– Boolean, Character, Integer, Real and Complex

167. What did ALGOL 68 introduce?

– Implicit heap-dynamic arrays (flex arrays) where array length is not specified

168. All modern languages owe some of their design to _____ or ______.

– ALGOL 60 or ALGOL 68

169. Who developed Pascal?

– Niklaus Wirth

170. True or False? Pascal became the most widely used introductory language.

– True

171. True or False? Pascal is safe when compared to Fortran or C.

– True

172. Who developed C?

– Dennis Ritchie

173. Why was C originally developed?

– For systems programming

174. What is a reason for C’s popularity?

– UNIX is written in C

175. True or False? C has type-checking

– False

176. What programming language category does Prolog fall under?

– Logic

177. Who developed Prolog?

– Robert Kowalski

178. Prolog consisted of two types of statements: ______ and ______.

– facts and rules

179. Prolog uses ________ to attempt to determine the truth of the statement.

– resolution

180. What was the most expensive and extensive design effort ever undertaken for a programming language?

– Ada

181. Who developed Ada?

– Jean Ichbiah

182. Why was Ada created?

– DoD contest. DoD wanted a programming language for embedded systems.

183. Where did Ada get its name from?

– Augusta Ada Byron

184. Who is considered to be the first programmer?

– Augusta Ada Byron

185. What were the major contributions of Ada?

– Packages
– Exception Handling
– Generic packages and subprograms
– Tasks

186. Why was Ada criticized?

– Too large and complex

187. Is Ada still required by the DoD for its military software systems?

– No

188. What features became available in Ada 95?

– Protected objects
– Extended type that supports inheritance and polymorphism

189. What type of interface does Ada 2005 have?

– Similar to Java

190. What was the first language to fully support OOP?

– Smalltalk

191. Who developed Smalltalk?

– Alan Kay

192. What platform was Smalltalk to be used on?

– Dynabook (similar to large iPad)

193. How is all computing done in Smalltalk?

– By sending a message to an object to invoke one of its methods and the method replies by returning an object.

194. True or False? Classes in Smalltalk belong to a single class hierarchy?

– True

195. Who developed C++?

– Bjarne Stroustrup at Bell Laboratories

196. True or False? C++ allows for procedural and OOP programming?

– True

197. True or False? C++ inherited most of C’s insecurities.

– True

198. True or False? You can link C++ code with C code.

– True

199. Name a couple of features present in C++.

– Parameter type checking
– Classes
– Public/private access control of inherited components
– Constructors and Destructors

200. True or False? C++ allows multiple inheritance.

– True

Want more?

P1. 104 Programming Language Q&A
P2. 95 Programming Language Q&A
P3. 123 Programming Language Q&A
P4. 77 Programming Language Q&A
P5. 146 Programming Language Q&A
P6. 94 Programming Language Q&A
P7. 141 Programming Language Q&A

Leave a Reply