CSCI 360 - Survey of Programming Languages

Fall 2014

Paper 2: Racket

Read the following blog posts: Write a 2-3 page paper in which you answer one of the following questions:
  1. Guido von Rossum states: "...in my mind, the applicability of reduce() is pretty much limited to associative operators, and in all other cases it's better to write out the accumulation loop explicitly." Critically assess this statement, taking a firm stance as to whether or not you accept the claim. Use clear examples to support your points.
  2. Paul Graham claims that the Lisp family (which includes Racket) is orders of magnitude more powerful than its competitors, and attributes much of this power to macros. Examine one large project from your past experience (in any language). Try to identify at least one aspect of that project that could have been simplified, in principle, by the use of macros. Then make a critical assessment of Graham's claim about the power of Lisp relative to what you employed in that project.