Skip to content

Latest commit

 

History

History
executable file
·
121 lines (66 loc) · 2.94 KB

language-design.md

File metadata and controls

executable file
·
121 lines (66 loc) · 2.94 KB

Fill in each this file with your responses, placing each response after its corresponding question.


Question

Pick three quotes from the readings about language design. Good candidates are:

  • Something you agreed with / resonates with your own experience
  • Something you disagree with
  • Something that is interesting, a new idea or perspective you'd like to remember
  • Something you didn't understand

For each quote, describe what it was about the quote that led you pick it.

Response


Question

How would you know a well-designed language? What are the symptoms? How would you know a poorly designed language? What are the symptoms?

Response


Question

How do the themes of Growing a Language relate to the lab we did this week?

Response


Question

In what way is an API a language?

Response


Question

What does the post on grayscale tell us about the process of API design?

Response


Question

The comments on the Pavlus article seem to set up a conflict between professional programmers and everyone else. What is the essence of this conflict? Do you sympathize more with the substance of the article's arguments or with the substance of the majority of the commenters' arguments? Do you sympathize more with the tenor of the article or the tenor of the majority of the commenters?

Response


Question

The Pavlus article mentions the researchers' comments that people preferred "natural-language replacements for some of the more abstruse syntax". In other words, people found it easier to work with code that looks more like a human language (e.g., English). Consider the following quote by William R. Cook, one of the creators of AppleScript:

The experiment in designing a language that resembled natural languages (English and Japanese) was not successful. It was assumed that scripts should be presented in “natural language” so that average people could read and write them. … In the end the syntactic variations and flexibility did more to confuse programmers than to help them out. It is not clear whether it is easier for novice users to work with a scripting language that resembles natural language, with all its special cases and idiosyncrasies. The main problem is that AppleScript only appears to be a natural language: in fact, it is an artificial language, like any other programming language. … even small changes to the script may introduce subtle syntactic errors that baffle users. It is easy to read AppleScript, but quite hard to write it. [Cook 2007, page 1-20]

Are these two experiences of natural languages at odds with one another? Would you choose to include natural language in the design of a DSL? If so, how might you do so? If not, why not?

Response


Question

Briefly describe how you split up the work for this assignment.

Response