Racket (programming language)

from Wikipedia, the free encyclopedia
Racket
Racket logo.png
Basic data
Paradigms : Multi-paradigmatic
Publishing year: 2010 (PLT Scheme 1994)
Designer: PLT Inc.
Developer: PLT Inc.
Current  version : 7.8   (July 31, 2020)
Typing : strong , static
Dialects: Typed Racket , Lazy Racket , Scribble , FrTime
Standardizations: R5RS , R6RS
Influenced by: Scheme
Operating system : Linux , macOS , FreeBSD , Windows
License : LGPL
racket-lang.org

Racket is a multi- paradigmatic programming in Lisp - Scheme family. It is the successor to the Scheme dialect PLT Scheme . Racket is also an integrated development environment (IDE) with an extensive library .

In 2018 Racket received the Programming Languages ​​Software Award from ACM SIGPLAN. In the laudation , its singular importance both in research and teaching of programming languages ​​over around twenty years was emphasized. It is a leading programming language for the generation of programming languages ​​with results for the extension of programming languages ​​(Language Extensibility). It played an important role in research on 1st grade recursive modules, gradual typing, functional reactive programming, and higher order contracts. The DrRacket IDE was widely used in introductory programming language courses and in newer textbooks.

Racket is open source software under the GNU Lesser General Public License .

Code examples

The classic hello world program :

#lang racket/base
"Hello, World!"

Generation of a Sierpinski triangle :

#lang racket
(require 2htdp/image)

(let sierpinski ([n 8])
  (if (zero? n)
    (triangle 2 'solid 'red)
    (let ([t (sierpinski (- n 1))])
      (freeze (above t (beside t t))))))

Graphical output of the Sierpinski triangle in the integrated development environment DrRacket : Sierpinski-DrRacket-IDE-6.12-German.png

Web links

Individual evidence

  1. Racket v7.3
  2. ACM Sigplan Programming Languages ​​Software Award |