Chapter 1. Introducing Lift


This chapter covers

  • An overview of Scala and Lift
  • Lift’s history and design rationale
  • An overview of Lift’s structure

Lift is an exciting new way of building web applications that feature rich, highly interactive user experiences. Lift is built atop the powerful functional programming language Scala, which lends itself to writing exceedingly concise but powerful code. By leveraging Scala, Lift aims to be expressive and elegant while stressing the importance of maintainability, scalability, and performance.

The first section of this chapter will introduce Scala and functional programming, including some examples of how the language compares and contrasts to the more familiar style of imperative programming. The second section introduces Lift and discusses how it differs from other web programming tools available today. Lift is largely a conceptual departure from many of the traditional approaches to building web frameworks; specifically, Lift doesn’t have a controller-dispatched view system and opts for an idea called view first. This chapter discusses these core design goals and introduces these new ideas at a high level. Throughout the course of the book, the concepts outlined here will be expanded on in much greater detail, and you’ll see concrete examples to assist you in getting up to speed.

1.1. What is Scala?

1.2. What is Lift?

1.3. Lift features

1.4. Summary