Racket is a popular variant of the Scheme programming language. Its features and benefits include:
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.
What's new in Racket
Racket CS may become the default Racket implementation in the next release. With the improvements in this release, Racket CS provides all of the functionality of Racket BC (the current default implementation). If, between this release and the next, no bugs are discovered in Racket CS that are more serious than those typically discovered in Racket BC, then Racket CS will become the default for the next release.
Racket CS supports AArch32 and AArch64, including places and futures. The implementation should be considered experimental in this initial release.
Racket CS supports an "incremental" garbage-collection mode that can eliminate long GC pauses for some applications, such as animations and interactive games.
Racket CS unboxes local floating-point arithmetic (like Racket BC).
DrRacket’s spell check features lower overhead and has fewer bugs.
Web Server performance under high concurrency is better by up to an order of magnitude. The Web Server is also more resistant to clients attempting to use unconstrained resources.
The math library includes the Kronecker product.
Windows supports finer granularity for sleep when sleeping for short periods of time, improving performance in animation.
The new prop:struct-field-info property provides static information about field names.
Debugging context in Racket CS is limited to 64,000 frames (approximately the same as Racket BC). This reduces the time taken to handle out-of-memory failures.
In plot, the legend font and the plot font can be controlled independently, and error-bars have an #:invert? option.
The plot and math libraries have new maintainers: Alex Harsányi for plot and Pavel Pancheka and Jens Axel Søgaard for math.
Join over 500,000 subscribers.
Subscribe for our newsletter with best Mac offers from MacUpdate.