Racket

Software Screenshot:
Racket
Software Details:
Version: 6.2 updated
Upload Date: 27 Sep 15
Developer: PLT Scheme Inc.
Distribution Type: Freeware
Downloads: 22

Rating: nan/5 (Total Votes: 0)

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.

What is new in this release:

  • core repo
  • The package manager supports a direct references to Git repositories via "git://[...]", "http://[...].git", and "https://[...].git" URLs. (Previously, only references to GitHub were supported.)
  • A --clone option for raco pkg install or raco pkg update facilitates Git-based package development. If a package X has a Git repository source, installing and updating the package pulls from the repository in a read-only mode. Using raco pkg update --clone X switches the local installation to a repository checkout that is suitable for modifying the package implementation, issuing pull requests, pushing changes, and so on.
  • Using raco pkg update --lookup X switches the package back to the default installation mode.
  • drracket
  • Its on-line check syntax works with graphical content.
  • Increased availability of DrRacket's blueboxes, including method and constructor information.
  • The "Open Require Path" menu item supports ".." in relative pathnames.
  • data
  • Added data/enumerate, a library that supports efficient enumeration of data structures
  • redex
  • Its redex-check facility uses data (in addition to random) enumeration to try to find counter-examples.
  • Its generate-term function accepts additional arguments to return the "i"-th member of a pattern using data/enumerate (meaning it efficiently supports very large values of "i").
  • The examples collection includes Launchbury's 1993 big-step lazy semantics.
  • htdp
  • 2htdp/image's polygon may be built out of bezier curves instead of just straight lines (see the docs for pulled-point).
  • 2htdp/abstraction is a teachpack for instructors and students who wish to use for/* loops, match, define-type and type-cases in ISL and ISL+.
  • 2htdp/universe programs can be exported using DrRacket's executable creation mechanism and they behave properly when run independently.
  • typed-racket
  • Typed Racket in DrRacket displays tooltips that show the types of expressions. Tooltips are also displayed for type errors.
  • Typed Racket loads generated contracts only when needed. This reduces memory use and startup time for Typed Racket programs.
  • Typed Racket has improved support for prefab structures, future semaphores, and async channels.
  • Typed Racket understands when two different variables refer to the same thing, and updates types accordingly. This particularly improves the type checking of macros such as match.

What is new in version 5.93:

  • Fixed a low-level concurrency problem with the GUI library for Mac OS X, which especially affected 32-bit builds;
  • Fixed GRacket-based launchers (such as `drracket`) in a Unix-style installation;
  • Expanded the list of recognized OpenSSL library versions;
  • Fixed small CSS problems and inconsistencies (relative to v5.3.6) in the new Scribble style as used by the Racket documentation;
  • Added the version number back to the "racket" directory within the source distribution bundle.

What is new in version 5.92:

  • Racket 5.92 has a new package system, including a catalog of hundreds of already-available packages. Please visit http://pkgs.racket-lang.org/ for an overview of the packages.
  • Recent releases included the "beta" versions of the package system. Racket version 5.92 incorporates many improvements suggested by these preliminary experiences:
  • A package is treated as a single collection by default, so it is even easier to use a Github repository as a package. Get started quickly: http://docs.racket-lang.org/pkg/getting-started.html
  • DrRacket includes a new package manager GUI, available via the File|Package Manager ... menu item. The GUI is also available as a stand-alone program via the "gui-pkg-manager" package.
  • The main Racket distribution has been separated into about 200 packages. The Racket installer combines the core system with bundled versions of these packages.
  • Alternatively, you may now install a Minimal Racket distribution --- which is about 1/10 the size of the main distribution --- and add only those packages that you need.
  • Package installation supports pre-built packages that include compiled byte code and rendered documentation, meaning packages can be installed quickly when built versions are available. All packages in the main distribution are available in pre-built form.
  • Further improvements are in the works, notably including package documentation on the package-catalog web site.
  • COMPATIBILITY NOTE: PLaneT, the previous Racket package system, will remain in place for the foreseeable future, but we expect all package work to shift to the new system.
  • Beyond the package system, this release brings a number of other changes:
  • Racket's HTML documentation has a new and improved look, thanks to Matthew Butterick.
  • The documentation includes a style guide, "How to Program Racket" http://docs.racket-lang.org/style/
  • Racket's JIT compiler supports the ARM architecture.
  • Racket supports the Mac's Retina display mode.
  • The performance of the Typed Racket compiler improved by 50% on some typed programs; e.g., see http://bit.ly/1d0Ye4z
  • The profiler provides a new mode that uses the errortrace library to produce fine-grained profiles.
  • A new contract profiler reports how much time programs spend checking contracts, and which contracts are most expensive.
  • The math/flonum library exports fast 105-bit precision operations.
  • Check Syntax handles generated identifiers, especially those introduced by struct (e.g. field selectors) and Redex (e.g., e_1, e_2)
  • 2htdp/batch-io includes functions for dealing with html/xml in files and web sites as X-expressions plus conveniences for web-based graph traversals.
  • The `gen:set' generic interface extends set operations to work on user-defined types that implement set methods, as well as on other set-like built-in types, such as lists.
  • Picts support conversion to SVG format.
  • Under unix, Racket provides desktop entries (.desktop files) for its graphical executables.

What is new in version 5.3.6:

  • Racket v5.3.6 is a bugfix release.
  • It eliminates errors from v5.3.5 that people have found over the summer.

What is new in version 5.3.5:

  • This is a special-purpose release to match the arrival of "Realm of Racket" in bookstores. Racket v5.3.5 adds a single realm collection to the v5.3.4 release. The new collection contains the source code that readers of Realm may wish to use for experiments.

What is new in version 5.3.4:

  • Extflonums (80-bit floating-point numbers) are supported on some x86/x86_64 platforms - including Windows, and including platforms where Racket is compiled to use SSE instructions for flonum arithmetic. Thanks to Michael Filonenko.
  • OS X: DrRacket and all of the other apps are now signed with an official key.
  • Tally Maze: a new game based an enumeration of 2d mazes.
  • The Optimization Coach, a DrRacket plugin, has been moved from the Racket distribution to the Racket package repository. Install it with: raco pkg install optimization-coach.
  • Redex: define-union-language now merges productions when languages define the same nonterminals. Thanks to William Bowman.
  • The srfi/19 library is now compatible with the date structure type exported by racket/base.

What is new in version 5.3.3:

  • This is a bug-fix release to address a flaw in DrRacket v5.3.2 concerning interactions between the contour window and the syntax coloring.

What is new in version 5.3.2:

  • Core Libraries:
  • The new math library provides functions and data structures for working with numbers and collections of numbers. Functions include non-elementary (such as gamma, zeta, Lambert's W), number-theoretic (factorization, modular arithmetic), linear algebra (arithmetic, decompositions), and statistical (expected values, order statistics, binning). Data structures include arbitrary-precision bigfloats, probability distributions, and multidimensional arrays.
  • The new file/untar, file/untgz, and file/unzip libraries support unpacking widely used archive formats.
  • The new lazy-require form allows programs to delay the loading and instantiation of helper modules until they are needed.
  • The new data/bit-vector library provides an implementation of bit vectors (a mutable sequence of booleans) supporting popcount.
  • The racket/generic library allows the specification of default method implementations for core datatypes.
  • The openssl library can verify hostnames and use the operating system's certificate store to verify certificates.
  • Package System:
  • A new package system is in beta release. This system will become Planet's successor. It differs significantly from the latter. For details, please read the documentation at http://docs.racket-lang.org/planet2/ and list your packages on the new index at https://pkg.racket-lang.org/.
  • The raco test command supports testing by collection and package, in addition to by directory and file, with the -c and -p options.
  • Teaching Libraries:
  • batch-io: the read and write functions work on Unix-style standard input and output.
  • DrRacket:
  • DrRacket's GUI is more responsive.
  • The automatic parenthesis insertion mode is improved.
  • Scribble:
  • Scribble renders Markdown format files via the --markdown command-line flag. Example use case: Generate documentation hosted on GitHub or BitBucket.
  • Documentation cross-reference information is stored in an SQLite3 database, which means that SQLite3 is required for building Racket documentation on Unix/Linux machines (but SQLite3 is included in Racket distributions for Windows and Mac OS X).
  • Using a database for cross-reference information significantly reduces the initial footprint of DrRacket, since DrRacket no longer needs to load all cross-reference information.
  • Typed Racket:
  • Typed Racket programs can require plot/typed to draw plots. List- and vector-accepting functions accept general sequences.
  • Typed Racket supports Racket's delimited continuation and continuation mark operators.
  • Redex:
  • Added more support for define-judgment-form, including random generation for well-formed judgments and visualization of judgments.
  • Deprecation:
  • The following have been removed in this release...
  • the planet command-line tool; use raco planet instead.
  • The following has been deprecated and will be removed in the August 2013 release...
  • the mzlib/class100 library; use racket/class instead.

What is new in version 5.3.1:

  • Racket:
  • The case form dispatches on characters, fixnums, symbols, and keywords in logarithmic time. (Thanks to Jon Zeppieri.)
  • The new racket/format library provides new and improved string-formatting functions.
  • Logging tools include improved filtering support based on the name of a logger. A new define-logger form simplifies the use of named loggers. Forms such as log-debug now support string formatting.
  • The for forms now support #:break and #:final clauses.
  • The new PLTCOMPILEDROOTS environment variable configures the search path for compiled bytecode.
  • DrRacket:
  • Check Syntax now summarizes the documentation (i.e., the blue boxes) for the identifier at the insertion point in the top-right corner of the definitions window.
  • Check Syntax now runs continuously for programs that declare their language within the source. This mode has been available for several of the past releases, but now enabled by default.
  • DrRacket can spell-check string constants (enable this in the Edit menu).
  • Typed Racket:
  • Typed Racket interprets the Any type as a different contract. This may signal dynamic errors in some existing mixed typed/untyped programs. The normal fix is to replace a use of Any with a more specific types.
  • NaN is included in all of Typed Racket's floating-point types, which makes precise floating-point types easier to use.
  • Typed Racket supports a cast operation with support for higher-order types.
  • Typed Racket provides the :query-type/args and :query-type/result utilities to explore types at the REPL.
  • Miscellaneous:
  • The compatibility collection provides features from Racket relatives, such as defmacro and mutable lists. These features are provided to ease porting code to Racket. Avoid them in modern Racket code.
  • Screenshots of the widgets provided by the Racket GUI library are included in the documentation. (Thanks to Diogo F. S. Ramos.)
  • FrTime was ported to racket #lang. (Thanks to Patrick Mahoney.)
  • Deprecation:
  • The following has been deprecated and will be removed in the January 2013 release:
  • the planet command-line tool; use raco planet instead.
  • The following has been deprecated and will be removed in the August 2013 release:
  • the mzlib/class100 library; use racket/class instead.

What is new in version 5.2.1:

  • 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.

Similar Software

Intel C++ Compiler
Intel C++ Compiler

20 Feb 15

YML
YML

11 May 15

DOS33
DOS33

3 Jun 15

Other Software of Developer PLT Scheme Inc.

Racket
Racket

10 Feb 16

PLT Scheme
PLT Scheme

5 Jun 15

Comments to Racket

Comments not found
Add Comment
Turn on images!