Racket (formally PLT Scheme) is an innovative programming language that builds on a rich practical and academic tradition.
Draw more pictures or build a web server from scratch. Racket includes both batteries and a programming environment, so get started!
Grow your Program
Racket's interactive mode encourages experimentation, and quick scripts easily compose into larger systems. Small scripts and large systems both benefit from native-code JIT compilation. When a system gets too big to keep in your head, you can add static types.
Grow your Language
Extend Racket whenever you need to. Mold it to better suit your tasks without sacrificing interoperability with existing libraries and without having to modify the tool chain. When less is more, you can remove parts of a language or start over and build a new one.
Grow your Skills
Whether you're just starting out, want to know more about programming language applications or models, looking to expand your horizons, or ready to dive into research, Racket can help you become a better programmer and system builder.
Product's homepage
What's New in This Release: [ read full changelog ]
· This version adds improved performance of Redex's matcher, an improved "plot" library, nicer-looking plots, customizable dual axis ticks/transforms, stacked histograms, and 3D vector fields.
· Performance improvements include using epoll()/kqueue(), cross-module inlining, and using SSE for JIT-compiled floating-point operations.
· Literal strings, regexps, etc. are interned.
· DrRacket uses composable ray-traced icons, and Typed Racket allows customizing type errors in macros.
· "2htdp/universe" supports an experimental game pad key handler.
· The "db" library now supports nested transactions and PostgreSQL arrays.