Program Documents

Designing Languages

Explanation of Program Components In this program we will study the structure of natural languages, one computer language, and invented languages in order to understand what design features language must contain to be called “language.” We distinguish language, then, from many other communication systems.  Students will demonstrate their learning through the learning objectives below.  Note that these objectives are listed for each program component and a brief explanation of the work is italicized. 

Program components and their learning objectives:

·         Linguistics: Demonstrate an understanding of basic concepts of phonetics, phonology, morphology, syntax, semantics, sociolinguistics, psycholinguistics, pragmatics, and language acquisition.  Apply those concepts to linguistic problems, and a language design project.  Using Fromkin’s An Introduction to Language, students will explore the structure of human language including meaning, and to a lesser extent, language function.  The format each week will be brief lecture and workshop with weekly assignments, quizzes, a take-home mid- term exam, and an in class final exam.

·         Programming: Learn how to read a specification for a program and read a program, and to invoke a program with different parameters to produce different visual designs. Advanced students will learn how to formulate a problem and implement a solution from specifications. Readings will be on the electronic  library reserve system and will supplement the weekly lecture and weekly programming lab.  Students will work in pairs to complete weekly assignments submitted electronically, and write two short exams.

·         Case Study in Languages:  Learn characteristics of specific languages and apply linguistic concepts to analyzing those languages (e.g., Esperanto, Old English, a Visual Programming Language, Klingon). Each week for 4 weeks we will hear from a speaker or see a video about a particular language. There may be reading in preparation for this work, but the most important result will be your work on synthesis questions. (See Synthesis Discussions Below)

·         Designing Languages (Project): Gain an understanding of the structure and function of artificial language by designing with others a new language or a new extension to an existing artificial language.  For the final 5 weeks of the quarter, you will work in pairs or slightly larger groups to create your own language collaboratively.  You will have assigned work each week, post assignments electronically on our website, and then present a final paper and give an oral presentation of your language.

·         Seminar: Learn about the design and structure of natural and artificial languages, and articulate fruitful questions for focused discussion, listen to and learn from perspectives offered by others, facilitate discussion, and analyze arguments. In preparation for seminar, you will write a 300 word essay and post it to our web page forum on the web page by 7:00 pm Monday evenings.  You should read all postings as further preparation for our seminar discussions.

·         Synthesis Discussions: Demonstrate learning in all aspects of the program by making connections across disciplines in short essays and in discussion.  Every week the faculty will provide 1-2 questions and you will write one question  as well.  Each question  must be answered in a short essay, no more than 200 words.  These must be typed and submitted after your discussions each week. 

Students will also improve their ability to:

·         Work in groups of two or more persons and improve their collaboration skills such as listening to others, analyzing and synthesizing ideas, defining individual and group goals, effectively delegating work, and managing a team.

·        Think critically and write clearly.

 

Seminar readings: 

·        K. Devlin’s The Math Gene.

·        Lakoff & Johnson, Women, Fire, and Dangerous Things: What Categories Reveal about the Mind

·        Selections from The ACM History of Programming Languages (Vols. 1 and 2):  FORTRAN, BASIC, Prolog, CLU, Smalltalk, and Hopper and Brooks on programming language design.

·        S. Delany’s Babel-17

·        D. Abram, The Spell of the Sensuous