Racket Programming for Beginners

Anjali Singh, Functional Programming Experts

Play Speed
  • 0.5x
  • 1x (Normal)
  • 1.25x
  • 1.5x
  • 2x
14 Videos (33m)
    • Introduction

    • Installing Dr Racket

    • Choosing Language

    • Expression Syntax

    • Consistency

    • Defining a Function

    • Working with Images

    • Strings

    • Comments

    • Conditional Statements

    • Cond in Functions

    • Structures

    • Lists

    • Drawing Shapes


About This Class


Racket is a programming language that started life as a Scheme implementation, but then grew into new areas. Racket is a mature LGPL project that’s actively developed and maintained. Racket’s crown jewel is its macro system, which lets you freely extend the language. Racket consists of extensive standard library that gets your projects off the ground quickly. Racket runs on Linux, macOS, and Windows. Develop on one; deploy to all three.

Racket (formerly PLT Scheme) is a general purpose, multi-paradigm programming language in the Lisp-Scheme family. One of its design goals is to serve as a platform for language creation, design, and implementation.The language is used in a variety of contexts such as scripting, general-purpose programming, computer science education, and research.

Racket's core language includes macros, modules, lexical closures, tail calls, delimited continuations, parameters (fluid variables), software contracts, green and OS threads, and more. The language also comes with primitives, such as even, tspaces and custodians, which control resource management and enables the language to act like an operating system for loading and managing other programs. Further extensions to the language are created with the powerful macro system, which together with the module system and custom parsers can control all aspects of a language. Unlike programming languages that lack macro systems, most language constructs in Racket are written on top of the base language using macros. These include a mixin class system, a component (or module) system as expressive as ML's, and pattern matching.

The feature that distinguishes Racket from other languages in the Lisp family is its integrated language extensibility. Racket's extensibility features are built into the module system to allow context-sensitive and module-level control over syntax

In this course we use DrRacket IDE , which is a graphical environment for developing programs using the Racket programming languages. DrRacket (formerly DrScheme) is widely used among introductory Computer Science courses that teach Scheme or Racket and is lauded for its simplicity and appeal to beginner programmers. The IDE was originally built for use with the TeachScheme! project (now ProgramByDesign), an outreach effort by Northeastern University and a number of affiliated universities for attracting high school students to computer science courses at the college level. It is the fastest way to get a sense of what the language and system feels like, even if you eventually use Racket with Emacs, vi, or some other editor.






Reviews (0)

Anjali Singh

Functional Programming Experts

Anjali has been working with front end programming language for more than 6 Years. With an innate ability to simplify complex topics, she has been mentoring students beginning their careers in software development and Mathematics for many years both online and through classroom lectures. Anjali has now started her own initiative "Bhelabandh Technologies" to promote Functional Languages, with some expert software professionals creating courses on Functional Programming. Functional Programming ...

See full profile