Aviva Directory » Computers & Internet » Programming » Lisp » Scheme » Racket

Available as free and open-source software under a GNU Lesser Public License, Racket was developed by PLT in the mid-1990s.

Based on the Scheme dialect of Lisp, Racket is a general-purpose, multi-paradigm programming language designed for programming language design and implementation.

By the early 1970s, Smalltalk and Simula were out, suggesting the values of an object-oriented way of programming. Guy Steele and Gerry Sussman formed Scheme at the MIT AI Lab, as one of the three main dialects of Lisp in 1975, extending Lisp with assignment statements and jumps in control flow.

While at Rice University, Matthias Felleisen, along with Robby Findler, Matthew Flatt, and Shriram Krishnamurthi wanted to use Scheme to teach math to children in a creative way. Their idea was that middle school and high school students would write computer games in plain arithmetic and algebra, which were easily expressed in a Scheme-like language. When they found that Scheme was too limited to do everything they wanted, they added structures, a class system, exceptions, fancy loops, modules, custodians, eventspace, libraries for building graphical-user interfaces, and other features.

Determining that their new flavor of Scheme was different enough from the parent language to benefit from its own development, Felleisen founded PLT in the mid-1990s. Together, the team, that included Findler, Flatt, Krishnamurthi, and others, produced DrScheme, a programming environment for novice Scheme programmers, naming the main language that DrScheme supported PLT Scheme, which was released in 1995.

The team began conducting workshops for high school teachers, training them in program design and functional programming, and the feedback from these efforts led to further development of the language. Over the years, the PLT team added teaching languages, an algebraic stepper, a transparent read-eval-print loop, and other innovations to DrScheme.

In 2010, PLT Scheme was renamed Racket, coinciding with the release of Version 5.0. Subsequently, DrScheme was renamed DrRacket, and is available for Linux, macOS, Unix, and Windows, and programs behave similarly on each of these platforms.

The focus of this guide, obviously, is the Racket programming language, as well as any IDEs, editors, or other tools designed to facilitate programming in Racket. Tutorials, guides, user groups, and forums, where Racket is the chief topic, are also appropriate for this category.



Recommended Resources

Search for Racket on Google or Bing