skip to main content
A-Z Index Directory Calendar Libraries Webmail
827
Summer Study

"Learning how to code is more like an exercise in design, engineering and detective work than an exercise in learning a foreign language."

Ken Lambert Summer Project: "A Gentle Introduction to Functional Programming in Haskell."

Ken Lambert, professor of computer science at Washington and Lee, is spending the summer completing a book on computer programming called "A Gentle Introduction to Functional Programming in Haskell." The book is the result of a directed individual study that Lambert sponsored last fall for two students, Lydia Barit '16 and Maria Jose Herrera Quesada '16.

Lambert, who has been a professor at W&L since 1985, has served three terms as chair of the Computer Science Department. He has previously published 26 books on introductory computer programming in three different programming languages.

We asked Professor Lambert to discuss the importance of introducing students to computer programming language, and to compare and contrast the study of programming languages with the study of foreign languages. Here is what he had to say:

I'm very fortunate to teach at a college whose dean (Suzanne Keen, the Thomas Broadus Professor of English and Dean of the College) believes that everyone should learn how to code.

Coding, a synonym for computer programming, is definitely hot. Over the last couple of years, computer science departments in colleges across the country have been reeling from a tidal wave of students interested in learning computer programming. Students recognize the obvious importance of this skill in the current job market. They also want to learn more about how computer software structures much of everyday life, from the more obvious devices we use on a daily basis to the more or less hidden roles that software plays in commerce, finance, government, entertainment and the "internet of things."

I am occasionally asked if learning to code is like learning a foreign language, and if one might substitute a programming requirement for a foreign language requirement in the college curriculum. I think that the answer to both of these questions is no. Explaining why offers a great opportunity to clarify the nature of coding and its place in a liberal arts education.

One learns to code in a programming language, so learning a programming language is a big part of learning how to code. One hears about many such languages. Some of these are named for mathematicians, like Pascal, Ada and Haskell, and others for popular beverages, like Java. Some are named for gems, like Ruby, and others for a comedy group, like Python (after Monty Python). Still others use simple letters or acronyms, like LISP and C. In my three decades of teaching programming at Washington and Lee, we have used four languages in our introductory programming course: Pascal, C++, Java and now Python.

Like Spanish, German, Russian or Arabic, programming languages have a vocabulary and a grammar that specify how to construct correct sentences, and a set of semantic rules and guidelines for idiomatic usage that allow the programmer to use these sentences in a meaningful way. So, learning to code does involve learning a language that is somewhat different in structure from one's native tongue.

However, unless you don't know English, learning to code is not like learning a foreign language. Although the grammar and semantic rules of a programming language are more restrictive than those of English, the vocabularies are not very different. When I tell my students that a well-written program should read very much like a well-written essay in English and will be graded as such, I am reassuring them that they are simply applying their rhetorical skills in English to a new domain, that of coding. Therefore, learning how to code is more like an exercise in English composition than an exercise in learning a foreign language.

Of course, the real point of coding is to build information structures that not only are expressive and beautiful, but also can direct machines to perform complex tasks automatically. The code that lies in your cellphone notifies you when you have a message, and the code that lies in a thermostat triggers the air conditioning when the room temperature reaches a certain threshold, or the clock reaches a certain time of day. The code that composes the iPhone's Siri app allows your phone to understand your spoken requests and to respond accordingly.

Information structures are like a pure "thought stuff" that can be expressed in English or in computer code. But only computer code can express thought stuff with automatic behavior of its own. After my students write their code, they must test it to see if it behaves correctly. Few learning experiences rival the hunt for errors in program code and the rush of joy one receives when a complex program finally runs correctly. Therefore, learning how to code is more like an exercise in design, engineering and detective work than an exercise in learning a foreign language.

Finally, part of good design in coding is to develop mechanisms to control or hide complexity. Modern software includes the most complex artifacts ever built by human beings. Coding is like model building in science and mathematics, where complex ideas are reduced to simpler ideas by developing and applying appropriate abstractions. Although programming languages share a common English-like vocabulary, they typically differ in the abstraction mechanisms that they make available to the coder. For example, functional languages like Haskell focus on the function as the basic unit of abstraction, whereas in object-oriented languages like Java and Ruby, the basic units of abstraction are the object and the class.

By contrast, learning a foreign language opens a window on a culture and way of life different from your own, and allows you to view your own language and culture from a fresh perspective. And as you pursue further study of a foreign language, a window also opens on its literature, whose focus is on expressing the concrete experiences specific to a culture or shared by all cultures. By learning to stand and walk in the shoes of another language and culture, you learn more about your own language and about yourself. This kind of learning experience is not interchangeable with the experience you have in coding.

Learning to code and learning a foreign language are thus very different, but quite complimentary, parts of a liberal arts education.

Transformative Education

Washington and Lee seeks to foster an atmosphere of self-discovery and an environment where anything is possible.

In Action People and Programs

Washington and Lee fosters an atmosphere of self-discovery and an environment where anything is possible. From research theses to fully student-led theater productions, the University makes it easy for students to follow their dreams. Every year, students present research proposals to faculty and pursue hypotheses in both the sciences and the arts. Student research can occur both on campus and off, with research grants specifically designated for both areas.

With an average class size of 16, it's easy to find faculty advisors for both major projects and new clubs. Many students propose self-guided majors or pursue a double-or even triple-major, given the inclusive nature of a liberal arts education. This provides students with the opportunity to discover their passions, and also with the support to pursue them.

The University's four-week Spring Term is designed to be transformative. The courses offered during the term are set up with the dream-class concept in mind, remarkable examples of creative and expansive teaching: studying painting in Italy; the Freedom Rides throughout the South; the physics of music; code-breaking in mathematics and history; aerial dance; and many, many more. Rigorous internships and co-curricular programs like Mock Convention, the Venture Club and the Williams Investment Society immerse students in real-world learning situations that bring the concepts they've studied in the classroom to life.

Related Stories

At a Glance Facts and Figures

At W&L, 22% of classes have 2-9 students, 49% have 10-19 students, 27% have 20-29 students and just 1% has 30-39 students.
44 Johnson Scholarships are awarded annually.
114 Johnson Opportunity Grants have been awarded since 2009 to support student summer experiences.
The W&L course catalog includes 1200+ courses in 37 majors and 21 minors.
190 new courses were created by W&L faculty for the new four-week Spring Term.

Visit, Interview, Apply See Yourself Here

Ready to learn more? Come visit us in Lexington for a campus tour and class visit, or connect with one of our admissions counselors in a city near you. We look forward to meeting you.

Visit Tours and Interviews

Step One:

Schedule your visit with a campus tour and/or info session online.

Step Two:

Call our office to schedule your interview and/or class visit (for high school seniors only). We will coordinate your interview and class visit with your already scheduled visit. (540) 458-8710.

Can't make it to Lexington?

There are various ways in which you can still connect with Washington and Lee University and the Office of Admissions:

Apply Now

Apply Quick Guide

Deadlines:
  • Early Decision is a binding commitment; enrollment is required if you are accepted.
    • ED-1: Nov. 1
    • ED-2: Jan. 1
  • Regular Decision is for students who want to maximize options.
    • Deadline: Jan. 1
  • Johnson Scholarship (additional essay required, instructions on the W&L Writing Supplement to the Common Application.)
    • Deadline: Dec. 1
Testing:
Application Materials:

Financial Aid and Scholarships

We seek to ensure that the cost of attending W&L does not prevent outstanding students from choosing to enroll. A generous need-based aid program and merit-based scholarships can make that investment more manageable than you may think. Visit Financial Aid for more information.

The Johnson Scholarship Program awards over 40 full tuition, room and board scholarships annually. Read More

Admitted students who meet financial aid deadlines and are found to have need will have their full need met with grant funds and a work-study job -- no loans.

The W&L Promise guarantees free tuition to any undergraduate student admitted to Washington and Lee with a family income below $75,000. Learn More

Net Price Calculator

W&L

Washington and Lee University provides a liberal arts education that develops students' capacity to think freely, critically, and humanely and to conduct themselves with honor, integrity, and civility. Graduates will be prepared for life-long learning, personal achievement, responsible leadership, service to others, and engaged citizenship in a global and diverse society.